CryptoAPIs MCP Simulate

Servidor MCP para simulação de transações EVM em modo de teste via Crypto APIs

Documentação

@cryptoapis-io/mcp-simulate

Servidor MCP para o produto Crypto APIs Simulate. Execute transações Ethereum em modo de simulação (dry-run) para visualizar resultados sem transmiti-las.

Versão da API: Compatível com a versão 2024-12-12 do Crypto APIs

Recursos

  • Simule transações Ethereum antes de transmiti-las
  • Visualize resultados de transações, uso de gas e mudanças de estado
  • Apenas Ethereum (mainnet, sepolia) — o endpoint subjacente da API não possui parâmetro de blockchain

Pré-requisitos

Instalação

npm install @cryptoapis-io/mcp-simulate

Ou instale todos os servidores MCP do Crypto APIs: npm install @cryptoapis-io/mcp

Uso

# Run with API key
npx @cryptoapis-io/mcp-simulate --api-key YOUR_API_KEY

# Or use environment variable
export CRYPTOAPIS_API_KEY=YOUR_API_KEY
npx @cryptoapis-io/mcp-simulate

# HTTP transport (listens on 127.0.0.1; see "Exposing the server beyond localhost")
npx @cryptoapis-io/mcp-simulate --transport http --port 3000 --api-key YOUR_API_KEY

Claude Desktop

Adicione à configuração do seu Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json no macOS, %APPDATA%\Claude\claude_desktop_config.json no Windows):

{
  "mcpServers": {
    "cryptoapis-simulate": {
      "command": "npx",
      "args": ["-y", "@cryptoapis-io/mcp-simulate"],
      "env": {
        "CRYPTOAPIS_API_KEY": "your_api_key_here"
      }
    }
  }
}

Cursor

Adicione a .cursor/mcp.json (projeto) ou ~/.cursor/mcp.json (global):

{
  "mcpServers": {
    "cryptoapis-simulate": {
      "command": "npx",
      "args": ["-y", "@cryptoapis-io/mcp-simulate"],
      "env": {
        "CRYPTOAPIS_API_KEY": "your_api_key_here"
      }
    }
  }
}

MCP Inspector

npx @modelcontextprotocol/inspector npx @cryptoapis-io/mcp-simulate --api-key YOUR_API_KEY

n8n

  1. Inicie o servidor no modo HTTP:
    npx @cryptoapis-io/mcp-simulate --transport http --port 3000 --api-key YOUR_API_KEY
    
  2. No seu fluxo de trabalho do n8n, adicione um nó AI Agent
  3. Em Tools, adicione um MCP Client Tool e defina a URL para http://localhost:3000/mcp

n8n no Docker: localhost dentro do contêiner não é a sua máquina. Inicie o servidor com --host 0.0.0.0 e MCP_AUTH_TOKEN definidos (veja Expondo o servidor além do localhost), use http://host.docker.internal:3000/mcp como URL e adicione um cabeçalho Authorization: Bearer <token> à credencial do MCP Client Tool.

Todos os servidores usam a porta 3000 por padrão. Use --port para atribuir portas diferentes ao executar vários servidores.

Ferramentas Disponíveis

simulate_evm

Simule uma transação Ethereum (dry-run). Apenas Ethereum — o endpoint subjacente não possui parâmetro de blockchain.

ParâmetroDescrição
networkRede: mainnet ou sepolia
fromAddressEndereço do remetente
toAddressEndereço do destinatário
valueValor a enviar (na moeda nativa)
dataDados da chamada do contrato (hex)
gasLimitLimite de gas
gasPricePreço do gas

Argumentos de Linha de Comando

ArgumentoDescriçãoPadrão
--api-keyChave de API do Crypto APIsVariável de ambiente CRYPTOAPIS_API_KEY
--transportTipo de transporte: stdio ou httpstdio
--hostHost HTTP (use 0.0.0.0 para aceitar conexões remotas — requer um token de autenticação com --api-key)127.0.0.1
--auth-tokenToken Bearer que os chamadores devem enviar (Authorization: Bearer <token>); prefira a variável de ambiente MCP_AUTH_TOKENVariável de ambiente MCP_AUTH_TOKEN
--allowed-hostsLista de permissões de cabeçalhos Host separados por vírgula para binds não-loopback—
--portPorta HTTP3000
--pathCaminho HTTP/mcp
--statelessAtivar modo HTTP sem estadofalse

Modos de Chave de API HTTP

Ao usar transporte HTTP, o servidor suporta dois modos de chave de API:

  • Com --api-key: A chave é usada para todas as solicitações. Cabeçalhos de solicitação x-api-key são ignorados.
  • Sem --api-key: Cada solicitação deve incluir um cabeçalho x-api-key com uma chave válida do Crypto APIs. Isso permite hospedar um servidor público onde cada usuário fornece sua própria chave.
# Per-request key mode (multi-tenant)
npx @cryptoapis-io/mcp-simulate --transport http --port 3000
# Clients send x-api-key header with each request

Expondo o servidor além do localhost

O modo HTTP escuta em 127.0.0.1 por padrão, portanto apenas processos na mesma máquina podem acessá-lo. Para aceitar conexões de outras máquinas ou contêineres, faça o bind explicitamente e proteja a porta:

# Startup-key mode: callers must present the token (the server refuses to start without one)
export MCP_AUTH_TOKEN=$(openssl rand -hex 32)
npx @cryptoapis-io/mcp-simulate --transport http --host 0.0.0.0 --port 3000 --api-key YOUR_API_KEY \
  --allowed-hosts mcp.internal.example
# Clients send: Authorization: Bearer $MCP_AUTH_TOKEN

# Per-request key mode: no startup key, every request must carry the caller's own x-api-key
npx @cryptoapis-io/mcp-simulate --transport http --host 0.0.0.0 --port 3000

--allowed-hosts restringe o cabeçalho Host (proteção contra rebinding de DNS) quando não está vinculado ao loopback. Prefira MCP_AUTH_TOKEN em vez de --auth-token: argumentos de linha de comando são visíveis na lista de processos.

O transporte Stdio sempre requer uma chave de API na inicialização.

Importante: Chave de API Necessária

Aviso: Fazer solicitações sem uma chave de API válida — ou com uma incorreta — pode resultar no banimento do seu IP do ecossistema Crypto APIs. Sempre garanta que uma chave de API válida esteja configurada antes de iniciar qualquer servidor.

Servidor MCP Remoto

O Crypto APIs fornece um servidor MCP remoto oficial com todas as ferramentas disponíveis via transporte HTTP Streamable em https://ai.cryptoapis.io/mcp. Envie sua chave de API pelo cabeçalho x-api-key — sem necessidade de instalação.

Licença

MIT