Workers MCP

Um transporte MCP para interagir com seu próprio Cloudflare Worker.

Documentação

workers-mcp

Fale com um Cloudflare Worker a partir do Claude Desktop!

[!WARNING]
Você deve começar aqui — e construir um servidor MCP remoto

Você pode conectar servidores MCP remotos a partir do Claude Desktop, Cursor e outros clientes usando mcp-remote.

O que é workers-mcp?

Este pacote fornece tanto as ferramentas de CLI quanto a lógica dentro do Worker para conectar o Claude Desktop (ou qualquer Cliente MCP) a um Cloudflare Worker na sua conta, para que você possa personalizá-lo conforme suas necessidades. Ele funciona por meio de uma etapa de build que pode traduzir métodos TypeScript do seu Worker assim:

export class ExampleWorkerMCP extends WorkerEntrypoint<Env> {
  /**
   * Generates a random number. This is extra random because it had to travel all the way to
   * your nearest Cloudflare PoP to be calculated which... something something lava lamps?
   *
   * @return {string} A message containing a super duper random number
   * */
  async getRandomNumber() {
    return `Your random number is ${Math.random()}`
  }
  
  // ...etc
}

...em ferramentas MCP que um servidor Node.js local pode expor aos clientes MCP. O servidor Node.js atua como um proxy, lidando com o transporte stdio localmente e chamando o método relevante do seu Worker em execução no Cloudflare. Isso permite que você exponha qualquer função ou API do seu aplicativo, ou qualquer serviço na plataforma de desenvolvedores da Cloudflare, de volta a um LLM no seu agente de codificação, Claude Desktop ou outro cliente MCP.

image

Sim, eu sei que Math.random() funciona da mesma forma em um Worker como na sua máquina local, mas não conte ao Claude 🤫

Uso

Passo 1: Gere um novo Worker

Use create-cloudflare para gerar um novo Worker.

npx create-cloudflare@latest my-new-worker

Sugiro escolher um worker Hello World.

Passo 2: Instale workers-mcp

cd my-new-worker # I always forget this bit
npm install workers-mcp

Passo 3: Execute o comando setup

npx workers-mcp setup

Nota: se algo der errado, execute npx workers-mcp help

Passo 4..♾️: Iterando

Depois de alterar o código do seu Worker, você só precisa executar npm run deploy para atualizar tanto os metadados do Claude sobre sua função quanto sua instância do Worker ao vivo.

No entanto, se você alterar os nomes dos seus métodos, ou seus parâmetros, ou adicionar ou remover métodos, o Claude não verá as atualizações até que você o reinicie.

Você nunca deve precisar executar novamente npx workers-mcp install:claude, mas é seguro fazê-lo se quiser descartar a configuração do Claude como fonte de erros.

Usando com Outros Clientes MCP

Cursor

Para fazer seu servidor MCP da Cloudflare funcionar no Cursor, você precisa combinar 'command' e 'args' do seu arquivo de configuração em uma única string e usar o tipo 'command'.

Por exemplo, se o seu arquivo de configuração se parece com:

{
  "mcpServers": {
    "your-mcp-server-name": {
      "command": "/path/to/workers-mcp",
      "args": [
        "run",
        "your-mcp-server-name",
        "https://your-server-url.workers.dev",
        "/path/to/your/project"
      ],
      "env": {}
    }
  }
}

No Cursor, crie uma entrada de servidor MCP com:

  • type: command
  • command: /path/to/workers-mcp run your-mcp-server-name https://your-server-url.workers.dev /path/to/your/project

Outros Clientes MCP

Para Windsurf e outros clientes MCP, atualize seu arquivo de configuração para incluir seu worker, para que você possa usar as ferramentas diretamente do cliente:

{
  "mcpServers": {
    "your-mcp-server-name": {
      "command": "/path/to/workers-mcp",
      "args": [
        "run",
        "your-mcp-server-name",
        "https://your-server-url.workers.dev",
        "/path/to/your/project"
      ],
      "env": {}
    }
  }
}

Certifique-se de substituir os placeholders pelo nome real do seu servidor, URL e caminho do projeto.

Exemplos

Veja o diretório examples para algumas ideias de como usar isso:

  • examples/01-hello-world é um instantâneo tirado após as instruções de instalação acima
  • examples/02-image-generation usa Workers AI para executar o modelo de geração de imagens Flux. Claude é muito bom em sugerir prompts e pode realmente interpretar o resultado e decidir quais novos prompts tentar para alcançar o resultado desejado.
  • TODO Browser Rendering
  • TODO Durable Objects