Gerbil MCP 服务器实现
使用说明(简明要点,便于上手):
- 项目简介
- 该仓库实现了一个完整的 MCP 服务器,允许客户端以统一的 JSON-RPC 协议与 Gerbil Scheme 运行时进行交互。核心能力包括托管资源、注册并执行工具、渲染提示模板、以及通过若干辅助工具对 Gerbil 代码进行分析、调试和构建。
- 主要功能点
- 提供大量针对 Gerbil 的工具集(如评估表达式、加载模块、语法检查、宏展开、定义查找、模块导出、性能分析、内存分析、测试执行等)。
- 支持 Prompts(提示模板)与交互式对话能力,方便 LLM 客户端获取 Gerbil 上下文和操作指引。
- 以 MCP JSON-RPC 形式暴露功能,服务端完成会话管理、能力声明与并发控制。
- 通过 stdio(Node.js 子进程的标准输入输出)等传输协议与客户端交互,适配多种集成场景(如 IDE、云端代理、代码助手等)。
- 安装步骤(简要)
- 先确保 Node.js 环境可用(版本要求在 README 标注的范围内)。
- 安装依赖并构建:npm install,然后 npm run build。
- 启动服务器:node dist/index.js(服务器启动后会输出提示信息,表示已经就绪)。
- 服务器配置(供 MCP 客户端在配置中使用的说明,非代码块,便于理解)
- 服务器名称(server name):gerbil-mcp
- 启动命令(command):node
- 参数(args):dist/index.js
- 环境变量(env,可选,示例用途):
- GERBIL_MCP_GXI_PATH:指向 gxi 可执行文件的路径( Gerbil 的表达式求值所需的子进程绑定)。
- 其他 Gerbil 相关的路径可按需要设置,例如 GERBIL_HOME 指向 Gerbil 安装目录。
- 传输/通信方式:stdio(标准输入输出)作为默认传输,服务器通过 JSON-RPC 与客户端通信。
- 基本使用方法
- 构建并启动服务后,客户端通过 MCP 的 JSON-RPC 请求发送方法调用(如读取资源、调用工具、获取 Prompts 等),服务端返回标准的 JSON-RPC 响应。
- 客户端可以通过“initialize”建立初始连接、再按需要调用诸如 gerbil_eval、gerbil_module_exports、gerbil_check_syntax 等工具完成 Gerbil 相关任务。
- 若需要持久会话,可以使用 repl-session、trace-eval、trace-calls 等工具进行交互式或可重复的评估与跟踪。