使用说明
项目简介
workers-mcp-server 是一个概念验证项目,展示了如何使用 Cloudflare Workers 构建 Model Context Protocol (MCP) 服务器。它允许你通过 Claude Desktop 等 MCP 客户端调用部署在 Cloudflare Workers 上的自定义函数,从而扩展 LLM 应用的功能。
主要功能点
- 工具注册与执行: 通过定义 Worker 类的方法,即可将这些方法注册为 MCP 工具,供 Claude Desktop 调用。例如,仓库中提供了生成随机数、网页截图和发送邮件等示例工具。
- Cloudflare Workers 平台集成: 利用 Cloudflare Workers 的serverless特性和各种绑定 (Bindings),例如 Browser Rendering、Email Routing 等,为 LLM 应用提供强大的后端能力。
- 本地代理开发: 提供本地 MCP 代理服务器,方便开发者在本地进行开发和测试,无需频繁部署到 Cloudflare Workers。
- 自动文档生成: 通过 JSDoc 注释,自动生成工具的描述文档,供 MCP 客户端读取和展示。
安装步骤
- 下载 Claude Desktop: 访问 https://claude.ai/download 下载并安装 Claude Desktop 客户端。
- 克隆仓库: 在本地克隆 'workers-mcp-server' 仓库到你的开发环境。
git clone https://github.com/geelen/workers-mcp-server.git cd workers-mcp-server - 安装依赖: 使用 'pnpm' 安装项目依赖。
pnpm install - 检查 'wrangler.json': 根据你的 Cloudflare 账户配置检查 'wrangler.json' 文件。如果你的账户没有 Email Routing 或 Browser Rendering 的访问权限,请注释掉 'wrangler.json' 中相关的配置,避免部署失败。
- 部署 Worker: 使用以下命令将 Worker 代码部署到 Cloudflare Workers。
pnpm deploy:worker - 生成并上传密钥: 运行以下命令生成开发密钥并上传到 Cloudflare Workers。此步骤只需执行一次。
npx workers-mcp secret generate && npx workers-mcp secret upload - 安装 MCP 服务器: 使用以下命令安装 MCP 服务器到 Claude Desktop。 '<server-alias>' 是你为服务器设置的别名, '<worker-url>' 是步骤 5 部署的 Worker URL。
npx workers-mcp install <server-alias> <worker-url> - 重启 Claude Desktop: 重启 Claude Desktop 客户端,使配置生效。
服务器配置 (MCP 客户端配置)
要将此 MCP 服务器添加到 Claude Desktop,你需要配置 Claude Desktop 的 MCP 服务器设置。配置信息通常在 'claude_desktop_config.json' 文件中 (具体位置可能因操作系统而异)。你需要添加类似以下的配置项,其中 '<server-alias>' 是你在安装步骤中设置的别名,'<worker-url>' 是你的 Worker URL。
{ "mcpServers": { "<server-alias>": { "command": "<你的Node.js可执行文件路径,例如:/usr/bin/node 或 C:\\Program Files\\nodejs\\node.exe>", "args": [ "<项目路径>/node_modules/tsx/dist/cli.mjs", "<项目路径>/scripts/local-proxy.ts", "<server-alias>", "<worker-url>", "ExampleWorkerMCP" ] } } }
参数注释:
- 'command': Node.js 可执行文件的绝对路径,用于运行本地代理服务器。
- 'args': 启动本地代理服务器的参数列表。
- '<项目路径>/node_modules/tsx/dist/cli.mjs': 'tsx' 命令行工具的路径,用于运行 TypeScript 代码。
- '<项目路径>/scripts/local-proxy.ts': 本地代理服务器脚本的路径。
- '<server-alias>': 你在安装步骤中设置的服务器别名,需要与配置中的别名一致。
- '<worker-url>': 步骤 5 部署的 Cloudflare Worker URL。
- 'ExampleWorkerMCP': Worker 入口点类的名称。
注意: Claude Desktop 客户端通常会自动检测并加载本地代理服务器,你可能无需手动编辑 'claude_desktop_config.json' 文件。 'npx workers-mcp install' 命令已经尝试自动完成配置。
基本使用方法
- 确保 Claude Desktop 客户端已重启。
- 在 Claude Desktop 中,你应该能够看到新安装的 MCP 服务器及其提供的工具。
- 在 Claude 中,你可以指示 Claude 使用这些工具来完成特定任务,例如:
- "请使用 'getRandomNumber' 工具生成一个随机数。"
- "请使用 'takeScreenshot' 工具截取 'https://example.com' 的网页截图。"
- "请使用 'sendEmail' 工具发送邮件给 '[email protected]',主题为 '测试邮件',内容为 '你好,这是一封测试邮件。'"
迭代开发: 当你修改 'src/index.ts' 中的代码后,需要执行以下步骤更新服务器:
- 'pnpm deploy:worker' 重新部署 Cloudflare Worker。
- 如果修改了工具的方法签名或 JSDoc 注释,通常需要重启 Claude Desktop 才能使客户端更新工具列表。如果仅修改了工具内部的代码逻辑,则可能只需要重新部署 Worker 即可。
信息
分类
AI与计算