Roo Extensions MCP 服务器套件
使用说明内容(Markdown格式)
-
项目简介
- Roo Extensions MCP 服务器套件整合了多种基于 MCP 的后端服务器,提供对资源(Resources)的托管与数据访问、工具(Tools)的注册与执行、以及 Prompt 模板(Prompts)的定义与渲染。核心通过 JSON-RPC 与客户端通信,支持多种传输方式并具备会话管理和能力声明能力,适用于为 LLM 应用提供可扩展的上下文服务。
-
主要功能点
- MCP 核心能力:以 JSON-RPC 形式接收请求并返回 JSON-RPC 响应,支持资源查询、工具调用、Prompt 获取等。
- 资源管理:托管各类数据/资源,提供数据访问能力。
- 工具注册与执行:暴露多种外部功能入口,LLM 客户端可通过统一接口调用工具。
- Prompts 定义与渲染:支持可定制的提示模板,响应式渲染。
- 会话与能力声明:服务器端维护会话、能力展示,支持多机器协同。
- 多传输协议支持:多数 MCP 服务实现可通过 STDIO、SSE、WebSocket 等传输与客户端通信。
- 工具封装与封装器:如 roo-state-manager、playwright、sk-agent 等 MCP 服务器和封装器,提供跨机器协作能力。
-
安装步骤(简化要点)
-
- 克隆仓库并初始化子模块
-
- 安装依赖并构建 MCP 服务端(例如 mcps/internal/servers/… 的包装器)
-
- 在配置中添加 MCP 服务器条目(详见下一段“服务器配置”)
-
- 启动所选 MCP 服务器包装器(如 node mcps/internal/servers/roo-state-manager/mcp-wrapper.cjs)
-
- 客户端按 MCP 协议通过 JSON-RPC 与服务器通信
-
- 如需 VS Code/Roo 场景,重启应用以加载新 MCP 服务
-
-
服务器配置(示例,JSON 结构,非代码块) { "mcpServers": { "roo-state-manager": { "command": "node", "args": ["mcps/internal/servers/roo-state-manager/mcp-wrapper.cjs"], "transportType": "stdio" }, "playwright": { "command": "node", "args": ["mcps/internal/servers/playwright/mcp-wrapper.cjs"], "transportType": "stdio" } } } 说明:
- serverName 对应上述 keys(如 roo-state-manager、playwright 等)
- command 指定 Node.js 启动命令
- args 指定 MCP 封装器的执行路径
- transportType 指明传输类型(示例采用 stdio,其他实现可扩展为 SSE/WebSocket 等)
- 该配置用于 MCP 客户端连接,MCP 客户端并不需要在此处包含太多实现细节,但要知道服务器端需要提供上述入口以供客户端调用
-
基本使用方法
-
- 下载/克隆仓库,安装依赖并构建 MCP 服务端
-
- 在应用配置中添加 MCP 服务器节点,指明命令与参数(如上示例)
-
- 通过 MCP 客户端,以 JSON-RPC 请求方式调用资源、工具和提示等能力
-
- 根据需要选择传输协议(stdio/SSE/WebSocket 等),以实现与前端/LLM 的交互
-
- 参阅仓库文档(docs/、mcps/README.md)了解各服务器的具体能力与接口
-
-
备注与注意
- 仓库内包含多种 MCP 服务器实例及封装器,真实使用时需根据实际目标选择对应的服务器配置并按需扩展能力声明。
- MCP 的实现与容器化部署在不同子模块中分离,需确保 Node.js 18+ 环境、依赖已安装并且相应子模块已正确初始化。
-
重要提示
- MCP 客户端通常仅需要知道服务器的启动命令、参数与传输协议,无需关心具体实现细节。服务器端负责资源、工具、Prompts 的注册与渲染,以及会话管理与安全控制。
-
参考内容
- 本仓库大量示例与子模块包含了多种 MCP 服务器实现、封装器、测试用例和文档,具体实现可根据需要选取与扩展。