Roo Extensions MCP 服务器集成
使用说明(Markdown 格式)
-
项目简介 Roo Extensions 提供一个基于 JSON-RPC 的 MCP 服务器生态,包含若干内部与外部资源访问服务(Resources)、工具注册与执行服务(Tools)以及提示模板与渲染(Prompts),支持会话管理、能力声明,并能通过多种传输协议进行通信。
-
主要功能点
- 资源管理与数据访问:托管与读取后端资源、跨机器同步等能力
- 工具注册与调用:注册可被 LLM 调用的外部功能,支持参数校验与结果返回
- Prompt 模板定义与渲染:提供可定制化的 Prompt 模板用于 LLM 交互
- 会话与能力协商:会话管理、能力声明、跨模式协作
- 传输协议支持:StdIO、SSE、WebSocket 等传输通道,便于不同前端/LLM 客户端接入
- 结构化配置与扩展性:清晰的 MCP 服务组织(如 roo-state-manager、jinavigator、jupyter-mcp-server、quickfiles 等)及 RooSync 的多机器同步
- 生态文档与示例:大量文档、指南、示例配置与用法
-
安装步骤
- 克隆并初始化子模块 git clone https://github.com/jsboige/roo-extensions.git cd roo-extensions git submodule update --init --recursive
- 安装 MCP 相关组件 进入 mcps/internal/servers 相应模块,安装依赖并执行构建(如 npm install、npm run build)
- 启动 MCP 服务器 参考 mcps/README.md 的各自架构,逐个启动内部 MCP(如 roo-state-manager、jinavigator、jupyter-mcp-server 等),可通过配置文件指明 command、args、transportType 等
- 客户端接入配置 在 Roo 或任意需要接入 MCP 的客户端中,按示例 JSON 配置入口服务器信息:服务器名称、启动命令、参数、传输类型等
- 启动客户端与服务器 重新加载 Roo 配置,启动 MCP 服务交互,确保正确的 JSON-RPC 请求/响应格式交互
- 参考文档与示例 详见 mcps/README.md、roo-config、roo-modes、docs 等目录中的指南与示例
-
服务器配置(注:以下为描述性信息,非代码块,便于理解客户端无需关心实现细节) { "serverName": "roo-state-manager", "command": "node", "args": ["./dist/index.js"], "transportType": "stdio", "enabled": true, "capabilities": { "resources": true, "tools": true, "prompts": true }, "endpoints": { "readResource": "/readResource", "callTool": "/callTool", "getPrompt": "/getPrompt" }, "session": { "active": true, "timeoutMs": 300000 }, "security": { "tls": false } } 注释说明:
- serverName: MCP 服务器的唯一标识,仓库内存在多台服务器实例,示例包括 roo-state-manager、jinavigator、jupyter-mcp-server、quickfiles 等
- command / args: 启动服务器的可执行命令及参数,客户端需要通过 JSON 配置来连接
- transportType: 指定传输通道,如 stdio、SSE、WebSocket 等
- capabilities: 声明该服务器提供的能力集合
- session: 会话管理相关设置
- security: 安全相关选项,是否启用 TLS 等 注意:实际配置请参考仓库中 mcps/README.md 的各服务器配置示例与 Roo 配置格式,确保描述字段与字段含义与实现一致
-
基本使用方法
- 通过客户端向 MCP 服务器发起 JSON-RPC 请求,例如读取资源、调用工具、获取 Prompt
- 服务器返回标准的 JSON-RPC 响应,包含 result 或 error 字段
- 在客户端侧按需求实现会话管理、能力声明与错误处理
- 如需多传输协议,按服务器提供的 transportType 进行相应实现(如标准输入输出、SSE、WebSocket)
- 如需扩展新的资源、工具或 Prompts,参考 mcps 内的扩展目录,遵循 JSON-RPC 请求结构进行对接