mcp-proxy

Um proxy independente para conectar clientes MCP baseados em STDIO com servidores MCP baseados em HTTP (SSE).

Documentação

mcp-proxy

Um binário autônomo para conectar clientes MCP baseados em STDIO a servidores MCP baseados em HTTP (SSE).

Nota: o proxy suporta tanto SSE de acordo com a especificação 2024-11-05 quanto HTTP transmissível de acordo com a especificação 2025-03-26. Pode acontecer, no entanto, que o cliente conectado não suporte a versão enviada pelo servidor.

Instalação

As versões mais recentes estão disponíveis na página de releases.

macOS

Dependendo do seu Mac, você pode baixar a versão mais recente com um dos seguintes comandos:

Apple Silicon:

curl -sL https://github.com/tidewave-ai/mcp_proxy_rust/releases/latest/download/mcp-proxy-aarch64-apple-darwin.tar.gz | tar xv

Intel:

curl -sL https://github.com/tidewave-ai/mcp_proxy_rust/releases/latest/download/mcp-proxy-x86_64-apple-darwin.tar.gz | tar xv

o que colocará o binário mcp-proxy no diretório de trabalho atual (pwd).

Observe que os binários não são notarizados, então se você baixar o release pelo navegador, não conseguirá abri-lo.

Alternativamente, você pode remover a flag de quarentena com:

xattr -d com.apple.quarantine /path/to/mcp-proxy

Linux

Você pode baixar a versão mais recente na página de Releases ou com um comando, dependendo da sua arquitetura:

x86:

curl -sL https://github.com/tidewave-ai/mcp_proxy_rust/releases/latest/download/mcp-proxy-x86_64-unknown-linux-musl.tar.gz | tar zxv

arm64 / aarch64:

curl -sL https://github.com/tidewave-ai/mcp_proxy_rust/releases/latest/download/mcp-proxy-aarch64-unknown-linux-musl.tar.gz | tar zxv

Windows

Você pode baixar a versão mais recente na página de Releases ou com o seguinte comando Powershell:

curl.exe -L -o mcp-proxy.zip https://github.com/tidewave-ai/mcp_proxy_rust/releases/latest/download/mcp-proxy-x86_64-pc-windows-msvc.zip; Expand-Archive -Path mcp-proxy.zip -DestinationPath .

Compilando do zero

O proxy é construído em Rust. Se você tiver Rust e suas ferramentas instaladas, o projeto pode ser compilado com cargo:

cargo build --release

Então, o binário estará localizado em target/release/mcp-proxy.

Uso

Se você tiver um servidor MCP SSE disponível em http://localhost:4000/tidewave/mcp, um cliente como o Claude Desktop seria configurado da seguinte forma.

No macOS/Linux

{
  "mcpServers": {
    "my-server": {
      "command": "/path/to/mcp-proxy",
      "args": ["http://localhost:4000/tidewave/mcp"]
    }
  }
}

No Windows

{
  "mcpServers": {
    "my-server": {
      "command": "c:\\path\\to\\mcp-proxy.exe",
      "args": ["http://localhost:4000/tidewave/mcp"]
    }
  }
}

Configuração

mcp-proxy aceita a URL SSE como argumento ou usando a variável de ambiente SSE_URL. Para fins de depuração, você também pode passar --debug, que registrará mensagens de depuração no stderr.

Outras flags suportadas:

  • --max-disconnected-time o tempo máximo para tentar reconectar enquanto desconectado. Quando não definido, o padrão é infinito.
  • --override-protocol-version para sobrescrever a versão do protocolo relatada pelo proxy. Isso é útil ao usar o proxy com um cliente que espera uma versão de protocolo diferente, quando a única razão para protocolos incompatíveis é o uso de transportes transmissíveis / SSE.