Solvr MCP 服务端
-
项目简介
- Solvr MCP 服务端是一套面向大语言模型的后端服务,遵循模型上下文协议(MCP)标准,通过 JSON-RPC 提供对资源、工具和提示模板的托管与查询能力,方便 AI 客户端(如 Claude Code、Cursor 等)在对话中获取上下文和外部能力。
-
主要功能点
- MCP 核心交互:实现对 MCP 请求的处理,支持初始化、获取工具列表和调用工具等基本流程,输出 JSON-RPC 响应。
- 工具注册与执行:内置 SOLVR 的工具集合(solvr_search、solvr_get、solvr_post、solvr_answer、solvr_claim),支持通过 MCP 调用执行并返回结构化结果。
- 服务器实现与交互方式:当前实现通过标准输入输出(stdio)进行 JSON-RPC 的收发,便于在命令行、管道、以及 Servicer 级别插件中使用,具备扩展到其他传输协议(如 SSE、WebSocket)的潜力。
- 配置与启动依赖:服务器在启动时读取环境变量获取后端 API 链接与凭证,确保与 Solvr 后端的通信安全可靠。
- 测试与可扩展性:提供了针对 MCP 功能的单元测试与端到端工具测试用例,便于后续扩展与改进。
-
安装步骤
- 获取代码
- 将仓库克隆到本地或服务器:git clone <仓库URL>,进入 mcp-server 目录。
- 安装依赖
- 在 mcp-server 目录执行依赖安装(例如 npm install 或 yarn install,具体请参考该子项目的实际包管理方式)。
- 构建/运行
- 使用 Node.js 环境运行 TypeScript 源码(如通过 ts-node、tsc 构建后运行),或按项目提供的打包/运行方式启动 MCP 服务器。
- 启动前请确保环境变量已设置:
- SOLVR_API_KEY: Solvr 后端的 API 密钥
- SOLVR_API_URL: Solvr 后端 API 的基础 URL
- 启动命令示例(请按实际打包方式执行):
- 直接通过 Node 运行编译后的入口(如 dist/index.js)
- 或通过 ts-node 直接执行入口文件
- 启动后,服务器会在标准输出/输入上与 MCP 客户端进行 JSON-RPC 通信。
- 获取代码
-
服务器配置(MCP 客户端配置示例,JSON 格式) 注:以下配置用于 MCP 客户端向 Solvr MCP 服务端发送请求。server 字段用于标识服务器名称,command 为运行命令,args 为启动参数列表(实际环境变量请通过 env 配置传入,以下仅给出示例字段和含义)。 { "server": "solvr", "command": "solvr-mcp-server", "args": [], "env": { "SOLVR_API_KEY": "your_api_key", "SOLVR_API_URL": "https://api.solvr.dev" }, "notes": "MCP 客户端通过 JSON-RPC 与服务器交互,初始阶段需要执行 initialize、tools/list、tools/call 等请求。环境变量用于后端对 Solvr 的认证与定位。" }
-
基本使用方法
- 启动后与 MCP 客户端建立连接,常见流程:
- 发送 initialize 请求,获取服务器信息与能力声明。
- 发送 tools/list 请求,获取可用工具清单及其输入输出定义。
- 通过 tools/call 请求调用具体工具(如 solvr_search、solvr_get、solvr_post、solvr_answer、solvr_claim),传入所需参数,获取工具执行结果。
- 运行示例(简述,不包含代码块,便于直接落地操作):
- 设置环境变量,启动服务器。
- 通过 MCP 客户端向服务器发送 initialize 请求,确认版本与能力。
- 发送 tools/list,确认可用工具及其参数结构。
- 选择需要的工具并发送 tools/call,请求返回一个结构化的文本内容,便于 LLM 继续处理。
- 运行与调试要点
- 确保 Solvr 后端 API 可访问且 API Key 有权限。
- 服务器通过标准输入输出进行 JSON-RPC,确保管道正确配置,便于在流水线或容器中使用。
- 如需扩展传输协议,可在后续增加 SSE/WebSocket 传输实现,当前以 stdio 为主入口。
- 启动后与 MCP 客户端建立连接,常见流程:
-
关键词 模型上下文, 工具执行, JSON-RPC, 后端服务, AI 集成
-
分类ID 6