MCP JSON-RPC 客户端和服务器示例
本仓库包含一个简单易用的 JavaScript 实现的 JSON-RPC 客户端和服务器示例,该示例受 MCP 启发,面向初学者。该项目演示了使用 Node.js 内置模块进行基本通信的流程,无需任何外部依赖。
概述
服务器(
侦听 TCP 端口 4000。
实现两种 JSON-RPC 方法:
initialize:返回一个基本功能对象(宣传“echo”工具)。echo:回显客户端提供的参数。
客户端(
连接到服务器的端口 4000。
发送
initialize请求,然后发送echo请求。记录从服务器收到的响应。
Related MCP server: MCP Bone
先决条件
您的系统上安装了Node.js (建议使用 v10 或更高版本)。
入门
通过 Smithery 安装
要通过Smithery自动为 Claude Desktop 安装 MCP JSON-RPC 客户端和服务器示例:
手动安装
克隆存储库:
git clone https://github.com/sandy-mount/mcpjs.git cd mcp-jsonrpc-example运行服务器:
打开终端窗口并运行:
node server.js您应该会看到如下消息:
Server listening on port 4000运行客户端:
打开另一个终端窗口并运行:
node client.js客户端将连接到服务器,发送初始化和回显请求,并显示响应。
工作原理
服务器在端口 4000 上监听传入的 TCP 连接。当它收到 JSON-RPC 消息(每个消息都以换行符结尾)时,它会处理该请求:
对于
initialize方法,它返回具有基本功能和服务器信息的 JSON-RPC 响应。对于
echo方法,它返回请求中发送的参数。如果请求了未知方法,它会以 JSON-RPC 错误进行响应。
客户端连接到服务器,发送 JSON-RPC
initialize请求,等待一小段时间,然后发送echo请求。服务器的响应将打印到控制台。
文件
server.js — JSON-RPC 服务器实现。
client.js — JSON-RPC 客户端实现。
定制
您可以通过以下方式扩展此示例:
向服务器添加更多 JSON-RPC 方法。
实施额外的错误处理和日志记录。
尝试不同的传输协议或添加 TLS 支持。
执照
本项目遵循 MIT 许可证。详情请参阅LICENSE文件。
贡献
欢迎随时提出问题或提交改进或建议的请求。
编码愉快!