MCP服务器(创建McpHandler)
在Cloudflare Workers上运行无状态MCP服务器的最简单方法。用途 createMcpHandler 从代理SDK中,在一行中处理所有MCP协议细节。
它展示了什么
createMcpHandler--代理SDK帮助程序,用于包装McpServer转换为与Worker兼容的fetch处理程序- 最小设置 --在上定义工具
McpServer,传递给createMcpHandler,完成了 - 无状态 --没有持久对象,没有持久状态,每个请求都是独立的
跑步
npm install
npm run dev打开浏览器查看内置工具测试仪,或连接 MCP检查员 在 http://localhost:5173/mcp.
运作原理
import { createMcpHandler } from "agents/mcp";
import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
import { z } from "zod";
function createServer() {
const server = new McpServer({ name: "Hello MCP Server", version: "1.0.0" });
server.registerTool(
"hello",
{
description: "Returns a greeting",
inputSchema: { name: z.string().optional() }
},
async ({ name }) => ({
content: [{ type: "text", text: `Hello, ${name ?? "World"}!` }]
})
);
return server;
}
export default {
fetch: async (request, env, ctx) => {
const server = createServer();
return createMcpHandler(server)(request, env, ctx);
}
};相关示例
mcp--有状态MCP服务器McpAgent耐用物品mcp-worker-authenticated--添加OAuth身份验证mcp-client--以客户端身份连接到MCP服务器
