Back to MCP directory
publicPublicdnsLocal runtime

Cloudflare Workers

workers-mcp是一个连接Cloudflare Worker与MCP客户端的工具包,允许开发者将Worker功能暴露给Claude Desktop等MCP客户端使用。

article

README

🚀 workers-mcp

workers-mcp 是一个强大的工具包,它提供了 CLI 工具和运行逻辑,能将 Claude Desktop 等 MCP 客户端连接到您账户中的 Cloudflare Worker,让您可以自定义配置以满足多样化需求。

🚀 快速开始

安装步骤

要开始使用 workers-mcp,请按照以下步骤进行操作:

  1. 使用 npx create-cloudflare@latest my-new-worker 生成新的 Worker 项目。
  2. 进入项目目录并运行 npm install workers-mcp 来安装所需的依赖项。
  3. 运行 npx workers-mcp setup 设置 MCP 配置。如果出现问题,请参考帮助信息进行调试。

使用说明

每次修改 Worker 代码后,只需运行 npm run deploy 即可更新 Claude 的元数据和实际的 Worker 实例。

其他客户端配置

对于 Cursor 等其他客户端,需将命令与参数合并为字符串,并指定类型为 command。确保路径和参数正确无误以避免连接问题。

示例项目

  • examples/01-hello-world 展示了安装后的初始状态。
  • examples/02-image-generation 使用 Workers AI 运行图像生成模型,Claude 可以根据效果调整提示词。

✨ 主要特性

此包提供了 CLI 工具和在 Worker 中运行的逻辑,可将 Claude Desktop(或其他 MCP 客户端)连接到您账户中的 Cloudflare Worker,实现自定义配置。它能将 TypeScript 方法转换为 MCP 工具,供本地 Node.js 服务器将这些工具暴露给 MCP 客户端。通过 Node.js 服务器作为代理,处理本地的 stdio 运输,并调用您在 Cloudflare 上运行的 Worker 中的相关方法。这样,您可以将应用程序中的任何函数或 API,或 Cloudflare 开发者平台 中的任何服务,重新提供给 LLM、Claude Desktop 或其他 MCP 客户端。

💻 使用示例

基础用法

export class ExampleWorkerMCP extends WorkerEntrypoint<Env> {
  /**
   * 生成一个随机数。由于该数字必须经过 Cloudflare 最近的 POP 才能计算,因此此数字是额外随机的... lava 灯的某些事情。
   *
   * @return {string} 包含超级随机数字的消息
   * */
  async getRandomNumber() {
    return `Your random number is ${Math.random()}`
  }
  
  // ...等等
}

📚 详细文档

注意事项

文档建议使用远程 MCP 服务器而非本地代理,可能在稳定性和性能上表现更优。进一步了解远程配置的具体步骤和优势,有助于优化您的设置。

已知问题

在这里,我们注意到随机数生成实际上并不是随机的,因为所有调用都会返回相同的值。这是一个已知问题。

故障排除

总体而言,workers-mcp 是一个强大的工具链,能够将 Cloudflare Worker 的能力直接提供给 AI 助手,如 Claude。在实际操作中可能会遇到路径错误、权限问题或连接超时,请参考文档中的故障排除部分解决问题。

重要提示

⚠️ 重要提示

您应该从这里开始,而不是构建一个远程 MCP 服务器。

使用建议

💡 使用建议

您可以使用 mcp-remote 从 Claude Desktop、Cursor 和其他客户端连接到您账户的远程 MCP 服务器 此处

示例图片

image

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client