Rainy Updates MCP 服务端
使用说明
-
项目简介
- Rainy Updates 提供一个本地 MCP 服务器,用来向 LLM 客户端提供依赖健康信息、可用工具、以及可定制的 Prompt 模板等上下文服务,支持通过 JSON-RPC 与客户端通信,便于将依赖管理、风险评估与提示渲染整合到对话式 AI 交互中。
-
主要功能点
- MCP 核心协议实现:实现对 MCP 请求的处理与响应(JSON-RPC 形式),以及会话管理和能力声明。
- 资源和数据访问:托管并提供与依赖健康、工具、Prompts 相关的数据资源。
- 工具注册与执行:注册可调用的外部工具,供 LLM 调用。
- 提示模板定义与渲染:支持可自定义的提示模板,用于引导 LLM 的交互。
- 多传输支持:提供 stdio、HTTP 等传输方式,方便在不同环境下接入 MCP 客户端。
- 安全与扩展性:包含会话管理、身份/鉴权等能力声明,方便在生产环境中扩展。
-
安装步骤
- 克隆或下载源码,进入项目根目录。
- 安装依赖(推荐 Bun 运行时环境,但也可用 npm/yarn):
- bun install
- 或 npm install / yarn
- 构建与运行 MCP 服务(核心入口通常包含一个本地 MCP 服务实现,参考 README 的 MCP 设置示例):
- 直接使用本仓库提供的 MCP 二进制/入口来启动:使用组合命令 spawn 的方式可执行 rup-mcp;也可通过 rup mcp 的方式在本地启动服务(具体执行命令以实际构建产物为准)。
- 测试与验证:
- 通过测试用例提供的工具与接口验证 MCP 请求/响应流程(包括 tools/list、initialize、notifications 等多种 JSON-RPC 请求)。
-
服务器配置(MCP 客户端接入配置,供 MCP 客户端读取)
- 说明:MCP 客户端需要知道 MCP 服务器的启动命令及参数,以便建立连接。以下 JSON 配置描述了本服务器在本地运行时应暴露的服务器信息。请将其用于 MCP 客户端的连接配置,实际通信由 MCP 服务器端实现处理。
- 配置示例(JSON,说明字段含义): { "serverName": "rainy-updates", "command": "rup", "args": ["mcp"], "env": { "FORCE_COLOR": "0" }, "transport": "stdio" // 也可为 "http" 及其相关选项 }
- 注释说明:
- serverName: MCP 服务器在本地的标识名称,便于在多服务器场景中区分。
- command: 启动 MCP 服务器的可执行程序名,示例中为 Rainy Updates 的 MCP 二进制入口。
- args: 启动命令的参数,示例中传入 "mcp" 以开启 MCP 模式。
- env: 启动时的环境变量(可选)。
- transport: 指定默认传输方式,MCP 客户端据此决定如何与服务器通信(stdio 即标准输入输出,HTTP 则通过网络端口)。
-
基本使用方法
- 启动服务器后,MCP 客户端可以通过 JSON-RPC 方式向服务器发送请求,获取或执行以下能力:
- 资源与数据访问(读取/写入资源)
- 工具调用(注册和执行工具)
- Prompt 渲染(获取、渲染和使用 Prompt 模板)
- 与服务器的常用交互包括:
- initialize 协商协议版本与能力
- tools/list 获取可用工具集合
- 调用 tools/call 来执行工具
- 读取或渲染 Prompt
- 如需调试,可使用 HTTP transport 的鉴权、诊断输出等选项来查看 MCP 的诊断信息。
- 启动服务器后,MCP 客户端可以通过 JSON-RPC 方式向服务器发送请求,获取或执行以下能力:
-
注意事项
- MCP 客户端通常需要在配置中指定服务器 command 与 args,以便在本地启动 MCP 服务并建立连接。
- 如需在生产环境中使用,请注意安全性、鉴权和传输加密(HTTP 传输可选 token,STDIO 方式多用于本地开发/调试场景)。