使用说明
MCP JSON-RPC客户端和服务器示例
此存储库包含一个简单的、初学者友好的示例,展示了一个用JavaScript实现的受MCP启发的JSON-RPC客户端和服务器。该项目使用Node.js的内置模块演示了一个基本的通信流,没有任何外部依赖关系。
概述
-
服务器(
server.js):- 侦听TCP端口4000。
- 实现两个JSON-RPC方法:
initialize:返回一个基本功能对象(宣传“echo”工具)。echo:返回客户端提供的参数。
-
客户(
client.js):- 连接到端口4000上的服务器。
- 发送
initialize请求之后是echo请求。 - 记录从服务器收到的响应。
先决条件
- Node.js 安装在您的系统上(建议使用v10或更高版本)。
入门指南
通过Smithery安装
通过以下方式自动安装Claude Desktop的MCP JSON-RPC客户端和服务器示例 史密瑟里:
npx -y @smithery/cli install @melvincarvalho/mcpjs --client claude
手动安装
-
克隆存储库:
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许可证获得许可。请参阅 许可证 文件以获取详细信息。
贡献
请随时打开问题或提交带有改进或建议的pull请求。
编码愉快!
