密码管理CLI服务

一个通过命令行接口与Bitwarden密码管理器交互的服务,支持AI模型安全访问用户密码库。

  • by dceluis
  • JavaScript
  • 本地部署
  • 1 星标
  • 更新于
在 GitHub 查看 dceluis/rbw-mcp

使用说明

rbw mcp

模型上下文协议(MCP)服务器,可通过以下方式与Bitwarden密码管理器库进行交互 rbw (Rust Bitwarden)命令行界面。该服务器允许AI模型通过定义的工具界面与用户的Bitwarden保管库安全通信。

先决条件

  • Node.js 22
  • rbw (Rust Bitwarden CLI)已安装并配置。

安装

选项一:在AI应用程序中进行配置

打开您的应用程序配置,例如Claude Desktop:

{
  "mcpServers": {
    "rbw": {
      "command": "npx",
      "args": ["-y", "rbw-mcp"]
    }
  }
}

选项二:本地结账

要求在本地签出此存储库。一旦完成:

npm install
npm run build

设置

  1. 安装 rbw: 按照官方网站上的平台说明进行操作 rbw存储库例如,在Debian/Ubuntu上:

    sudo apt-get update
    sudo apt-get install rbw
    
  2. 配置 rbw: 配置 rbw 连接到您的Bitwarden帐户。

    rbw config
    
  3. 解锁您的保险库: 在运行MCP服务器之前,您必须解锁您的保管库。这开始了 rbw-agent 并允许后续命令在不提示输入密码的情况下运行。

    rbw unlock
    

    服务器将在启动时检查保管库是否已解锁。

测试

运行单元测试

该项目包括Jest单元测试。

# Run all tests
npm test

# Run tests in watch mode
npm run test:watch

# Run tests with coverage
npm test -- --coverage

检查和开发

MCP检查员

使用MCP检查器以交互方式测试服务器:

# Start the inspector
npm run inspect

这将:

  1. 启动MCP服务器
  2. 在浏览器中启动检查器UI
  3. 允许您以交互方式测试所有可用工具

可用工具

服务器提供以下功能 rbw CLI工具:

工具 说明 必需参数 注释
lock 通过清除代理中的缓存密钥来锁定保险库。 无 执行 rbw lock.
unlock 打开保险库。如果需要,这将触发您的主密码的交互式提示。 无 执行 rbw unlock.
sync 从Bitwarden服务器同步保管库数据。 无 执行 rbw sync.
status 检查保险库是否已解锁。 无 执行 rbw unlocked.
list 列出vault中的项目。可以通过搜索词进行筛选。 可选: search, ignoreCase 执行 rbw list --fields name,user,id,folder 过滤器在内存中产生结果。
get 获取项目的特定字段(默认为密码)。 id (必填)。可选: field 执行 rbw get <id> 或 rbw get --field .... 使用 list 首先找到确切的ID。
code 获取项目的TOTP代码。 id 执行 rbw code <id>. 使用 list 首先找到确切的ID。
generate 生成安全密码或短语。默认情况下,生成带有符号的强密码。 可选: length, diceware, noSymbols 执行 rbw generate.
delete 从vault中删除项目。 id 执行 rbw rm <id>.
create 在vault中创建新的登录项。 name (必填)。可选: username, password, notes, uri 执行 rbw add.用途 EDITOR='tee' 用于非交互式输入。
edit 编辑vault中现有项目的密码和/或注释。 id (必填)。可选: password, notes 执行 rbw edit.用途 EDITOR='tee' 用于非交互式输入。

安全注意事项

  • 使用 rbw-agent:强烈建议使用 rbw 通过其代理安全地处理主密码。
  • 验证所有输入:所有工具输入都使用Zod模式进行严格验证。

故障排除

常见问题

  1. 启动时出现“Vault已锁定”错误

    • 跑 rbw unlock 在启动服务器之前,请先在您的终端中。
  2. rbw 命令未找到

    • 确保 rbw 已安装,并且其位置在您的系统中 PATH.
  3. 测试失败

    • 确保所有开发依赖项都已安装 npm install.