跳转到内容

MCP Server ​

cnb-rs 内置 MCP(Model Context Protocol)Server,让 AI 助手能直接管理 CNB 平台资源。

安装 ​

bash
# npm(推荐,所有 MCP Client 通用)
npm install -g @cnb-rs/mcp

# pip / uv / pipx(Python >= 3.8)
uvx cnb-rs-mcp        # 使用 uv,零安装即用
pipx install cnb-rs-mcp
pip install cnb-rs-mcp

# 或从 Release 下载 cnb-rs-mcp 二进制
# https://cnb.cool/wwvo/cnb-rs/cnb-rs/-/releases

配置 MCP Client ​

所有主流 MCP Client 使用统一的 JSON 配置格式:

json
{
  "mcpServers": {
    "cnb": {
      "command": "npx",
      "args": ["-y", "@cnb-rs/mcp"],
      "env": {
        "CNB_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

各客户端配置文件位置 ​

客户端配置文件路径
Claude Desktop~/Library/Application Support/Claude/claude_desktop_config.json(macOS)
%APPDATA%\Claude\claude_desktop_config.json(Windows)
Claude Code~/.claude/settings.json 或项目根 .claude/settings.json
CursorSettings → MCP → 添加
WindsurfSettings → MCP Servers
VS Code Copilot.vscode/settings.json 的 github.copilot.chat.mcpServers

使用已安装的二进制 ​

如果已通过 Release 下载安装了 cnb-rs-mcp:

json
{
  "mcpServers": {
    "cnb": {
      "command": "cnb-rs-mcp",
      "env": {
        "CNB_TOKEN": "<YOUR_TOKEN>"
      }
    }
  }
}

认证 ​

Token 获取优先级:

  1. CNB_TOKEN 环境变量(MCP Client 通过 env 配置传入,推荐)
  2. ~/.cnb/config.toml 中已登录的账号(通过 cnb-rs auth login 登录)
  3. 系统 keyring

获取 Token:在 cnb.cool 个人设置 → 访问令牌 → 创建。

支持的 Tools(40 个) ​

Issue 管理(12 个) ​

Tool描述
cnb_list_issues列出仓库的 Issues
cnb_get_issue获取指定 Issue 详情
cnb_create_issue创建 Issue
cnb_update_issue更新 Issue
cnb_list_issue_comments获取评论列表
cnb_create_issue_comment创建评论
cnb_update_issue_comment更新评论
cnb_list_issue_labels获取标签列表
cnb_add_issue_labels添加标签
cnb_set_issue_labels设置标签(替换)
cnb_clear_issue_labels清空标签
cnb_remove_issue_label删除单个标签

PR 管理(7 个) ​

Tool描述
cnb_list_pulls列出合并请求
cnb_get_pull获取 PR 详情
cnb_create_pull创建 PR
cnb_update_pull更新 PR
cnb_merge_pull合并 PR
cnb_list_pull_comments获取 PR 评论
cnb_create_pull_comment创建 PR 评论

仓库管理(5 个) ​

Tool描述
cnb_list_repositories列出用户仓库
cnb_list_group_repositories列出组织仓库
cnb_get_current_repository从 git remote URL 获取当前仓库信息
cnb_get_repository获取仓库详情
cnb_create_repository创建仓库

组织管理(4 个) ​

Tool描述
cnb_list_groups列出顶层组织
cnb_list_sub_groups列出子组织
cnb_get_group获取组织详情
cnb_create_group创建组织

构建管理(7 个) ​

Tool描述
cnb_get_build_logs查询构建列表
cnb_get_build_stage查询构建 Stage 详情
cnb_get_build_status查询构建状态
cnb_start_build启动构建
cnb_stop_build停止构建
cnb_build_logs_delete删除构建日志
cnb_build_runner_download_log下载 Runner 日志

工作区管理(3 个) ​

Tool描述
cnb_list_workspaces列出云原生开发环境
cnb_delete_workspace删除开发环境
cnb_start_workspace启动开发环境

知识库(2 个) ​

Tool描述
cnb_get_knowledge_base_info获取知识库信息
cnb_query_knowledge_base语义查询知识库

与官方 MCP Server 的对比 ​

维度官方 @cnbcool/mcp-servercnb-rs MCP
语言TypeScript (Node.js)Rust(原生二进制)
启动速度~500ms(npx 冷启动)~10ms
运行时依赖Node.js 18+无(通过 npm 分发时需要 Node 执行 wrapper)
内存占用~50MB(V8)~5MB
Tool 数量3740
维护状态已停止维护社区活跃维护

故障排查 ​

验证 MCP Server 启动 ​

bash
echo '{"jsonrpc":"2.0","method":"initialize","id":1,"params":{"protocolVersion":"2025-11-25","capabilities":{},"clientInfo":{"name":"test","version":"0.1"}}}' | cnb-rs-mcp

应返回包含 cnb-rs-mcp 的 JSON 响应。

常见问题 ​

  • "认证失败":检查 CNB_TOKEN 是否正确设置
  • "资源不存在":检查仓库路径格式(应为 group/repo 或 group/subgroup/repo)
  • npx 超时:首次运行需下载 ~3MB binary,后续运行会使用缓存

Released under the MIT License.