MCP 数学 WebSocket 示例
基于 Cloudflare Workers 和 Durable Objects 的 MCP 协议实现,支持 WebSockets。
快速入门
前置条件
安装与部署
- 克隆仓库:
git clone https://github.com/dinasaur404/math-mcp.git cd math-mcp
- 安装依赖:
npm install
- 部署服务端:
cd server wrangler deploy
- 部署客户端:
cd ../client wrangler deploy
- 记录生成的 URL 以供后续使用。
使用方法
Web 界面
访问客户端 URL,连接到 MCP 服务器并运行数学运算。
编程接口
HTTP 示例
// 创建代理
const agentResponse = await fetch('https://your-server.workers.dev/agent', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({ name: 'MathAgent' })
});
const { agentId } = await agentResponse.json();
// 发送请求
const result = await fetch('https://your-server.workers.dev/mcp', {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
agentId,
request: {
method: 'add',
params: { a: 5, b: 3 }
}
})
});
WebSocket 示例
// 建立 WebSocket 连接
const ws = new WebSocket(`wss://your-server.workers.dev/agent/${agentId}/websocket`);
ws.addEventListener('message', (event) => {
console.log('收到:', JSON.parse(event.data));
});
ws.addEventListener('open', () => {
ws.send(JSON.stringify({
type: 'mcp_request',
request: {
method: 'add',
params: { a: 5, b: 3 }
}
}));
});