使用说明
项目简介
math-mcp 仓库是一个 Model Context Protocol (MCP) 服务器的参考实现,它演示了如何使用 Cloudflare Workers 和 Durable Objects 构建一个通过 WebSockets 提供数学计算服务的后端应用。该项目包含完整的客户端和服务端代码,展示了 MCP 协议在 WebSocket 传输协议下的应用,以及如何利用 Durable Objects 实现状态持久化的会话管理。
主要功能点
- MCP 协议实现: 完整实现了 MCP 协议,能够处理 MCP 客户端的请求和响应。
- WebSocket 支持: 使用 WebSocket 作为主要通信协议,提供双向、实时的通信能力。
- 数学工具集: 内置了多种数学计算工具,如加法、减法、乘法、除法、平方根、三角函数、对数等。
- 工具发现: 支持 MCP 客户端通过 'discover' 方法动态发现服务器提供的工具列表及其参数。
- 持久化会话: 利用 Cloudflare Durable Objects 实现用户会话的持久化,保持会话状态。
- Cloudflare Workers 部署: 易于部署到 Cloudflare Workers 平台,利用其全球 CDN 和 Serverless 架构。
- 示例客户端: 提供了一个基于 HTML/JS 的客户端,方便用户在浏览器中体验和测试 MCP 服务器的功能。
安装步骤
- 安装 Prerequisites: 确保已安装 Node.js (v18 或更高版本)、Wrangler (Cloudflare Workers CLI) 和拥有 Cloudflare 账户。
- 克隆仓库:
git clone https://github.com/dinasaur404/math-mcp cd math-mcp - 安装依赖:
npm install - 部署服务端:
cd server wrangler deploy - 部署客户端:
cd ../client wrangler deploy - 记录部署 URL: 请记录服务端和客户端部署后 Cloudflare Workers 分配的 URL,后续使用需要用到服务端 URL。
服务器配置
对于 MCP 客户端,您需要配置连接到此 MCP 服务器的信息。以下是一个 JSON 格式的配置示例,您需要将 'YOUR_DEPLOYED_SERVER_WORKER_URL' 替换为您服务端部署后获得的 URL。
{ "serverName": "Math MCP Server", "serverURL": "YOUR_DEPLOYED_SERVER_WORKER_URL", // 替换为服务端 Worker 的 URL,例如:https://your-server.workers.dev "transportProtocol": "WebSocket" // 使用 WebSocket 协议进行通信 }
配置参数说明:
- 'serverName': MCP 服务器的名称,可以自定义。
- 'serverURL': 必须配置。这是您部署的 MCP 服务器的 URL 地址,MCP 客户端将通过此 URL 与服务器建立连接。
- 'transportProtocol': 指定传输协议,这里配置为 '"WebSocket"',表明客户端将使用 WebSocket 与服务器通信。
基本使用方法
- 访问客户端: 在浏览器中打开客户端部署后获得的 URL。
- 配置服务器 URL: 在客户端页面中,将 "MCP Server URL" 输入框的值替换为您服务端部署后获得的 URL。
- 连接服务器: 点击 "Connect" 按钮连接到 MCP 服务器。连接成功后,连接状态指示器会变为绿色,并显示 "Connected"。
- 使用数学工具:
- 在 "Basic Math" 或 "Advanced Math" 部分选择要执行的数学运算。
- 输入相应的参数数值。
- 点击 "Calculate" 按钮执行计算。结果将显示在 "Result will appear here" 区域。
- 工具发现: 点击 "Discover Tools" 按钮,可以查看服务器提供的所有数学工具及其详细描述和参数信息。
- 查看日志: "Connection Log" 区域会显示 WebSocket 连接的日志信息,包括发送和接收的消息,方便调试和监控。
通过以上步骤,您就可以体验和使用这个基于 WebSocket 的 Math MCP Server 示例。
信息
分类
AI与计算