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
- Node.js 18+
- Conta e chave de API do Crypto APIs (cadastre-se | obtenha a chave de API)
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
- Inicie o servidor no modo HTTP:
npx @cryptoapis-io/mcp-simulate --transport http --port 3000 --api-key YOUR_API_KEY - No seu fluxo de trabalho do n8n, adicione um nó AI Agent
- Em Tools, adicione um MCP Client Tool e defina a URL para
http://localhost:3000/mcp
n8n no Docker:
localhostdentro do contêiner não é a sua máquina. Inicie o servidor com--host 0.0.0.0eMCP_AUTH_TOKENdefinidos (veja Expondo o servidor além do localhost), usehttp://host.docker.internal:3000/mcpcomo URL e adicione um cabeçalhoAuthorization: Bearer <token>à credencial do MCP Client Tool.
Todos os servidores usam a porta 3000 por padrão. Use
--portpara 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âmetro | Descrição |
|---|---|
network | Rede: mainnet ou sepolia |
fromAddress | Endereço do remetente |
toAddress | Endereço do destinatário |
value | Valor a enviar (na moeda nativa) |
data | Dados da chamada do contrato (hex) |
gasLimit | Limite de gas |
gasPrice | Preço do gas |
Argumentos de Linha de Comando
| Argumento | Descrição | Padrão |
|---|---|---|
--api-key | Chave de API do Crypto APIs | Variável de ambiente CRYPTOAPIS_API_KEY |
--transport | Tipo de transporte: stdio ou http | stdio |
--host | Host 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-token | Token Bearer que os chamadores devem enviar (Authorization: Bearer <token>); prefira a variável de ambiente MCP_AUTH_TOKEN | Variável de ambiente MCP_AUTH_TOKEN |
--allowed-hosts | Lista de permissões de cabeçalhos Host separados por vírgula para binds não-loopback | — |
--port | Porta HTTP | 3000 |
--path | Caminho HTTP | /mcp |
--stateless | Ativar modo HTTP sem estado | false |
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çãox-api-keysão ignorados. - Sem
--api-key: Cada solicitação deve incluir um cabeçalhox-api-keycom 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