CryptoAPIs MCP Signer
Servidor MCP para assinatura local de transações nas blockchains EVM, UTXO, Tron e XRP — sem necessidade de chamadas de API
Documentação
@cryptoapis-io/mcp-signer
Servidor MCP para assinatura local de transações nas blockchains EVM, UTXO, Tron e XRP. Sem chamadas HTTP da Crypto APIs — a assinatura acontece inteiramente na sua máquina. Nenhuma chave de API necessária.
Segurança
- Somente Stdio — sem transporte HTTP. O servidor não escuta em nenhuma porta.
- Chaves privadas na entrada da ferramenta — cada ferramenta recebe
privateKey/privateKeys/secretcomo parâmetros. As chaves nunca são lidas de variáveis de ambiente. - Sem chamadas de rede — toda a assinatura é feita localmente usando bibliotecas criptográficas.
Instalação
npm install @cryptoapis-io/mcp-signer
Ou instale todos os servidores MCP da Crypto APIs: npm install @cryptoapis-io/mcp
Uso
npx @cryptoapis-io/mcp-signer
Claude Desktop
Adicione à sua configuração do Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json no macOS, %APPDATA%\Claude\claude_desktop_config.json no Windows):
{
"mcpServers": {
"cryptoapis-signer": {
"command": "npx",
"args": ["-y", "@cryptoapis-io/mcp-signer"]
}
}
}
Cursor
Adicione a .cursor/mcp.json (projeto) ou ~/.cursor/mcp.json (global):
{
"mcpServers": {
"cryptoapis-signer": {
"command": "npx",
"args": ["-y", "@cryptoapis-io/mcp-signer"]
}
}
}
MCP Inspector
npx @modelcontextprotocol/inspector npx @cryptoapis-io/mcp-signer
Ferramentas Disponíveis
evm_sign
Assine uma transação EVM (Ethereum, Ethereum Classic, BSC, Polygon, Avalanche (C-Chain), Arbitrum, Base, Optimism, Tron).
| Ação | Descrição |
|---|---|
sign-from-details | Assinar a partir de campos de transação estruturados (to, value, gasLimit, etc.) |
sign-unsigned-hex | Assinar um hex de transação não assinada pré-construída |
sign-typed-data | Assinar uma mensagem de dados tipados EIP-712 (o caminho sem gás x402 — ex.: o TransferWithAuthorization EIP-3009 do /authorize do comprador x402). Retorna { signature }, não uma tx. |
utxo_sign
Assine uma transação UTXO (Bitcoin, Bitcoin Cash, Litecoin, Dogecoin, Dash, Zcash).
| Ação | Descrição |
|---|---|
sign-from-details | Assinar a partir de um objeto de transação preparado (inputs, outputs) |
sign-unsigned-hex | Assinar um hex de transação não assinada bruto com descritores de entrada |
tron_sign
Assine uma transação Tron usando secp256k1 (sem dependência do TronWeb).
| Ação | Descrição |
|---|---|
sign-from-details | Assinar a partir de um objeto de transação com raw_data_hex |
sign-unsigned-hex | Assinar um hex de transação não assinada pré-construída |
xrp_sign
Assine uma transação XRP.
| Ação | Descrição |
|---|---|
sign-from-details | Assinar a partir de campos de transação XRP estruturados |
sign-unsigned-hex | Assinar um hex de transação não assinada pré-construída |
kaspa_sign
Assine uma transação Kaspa usando schnorr (BIP340) via kaspa-wasm. Somente mainnet.
| Ação | Descrição |
|---|---|
sign-from-details | Assinar uma transação Kaspa preparada (da API prepare-transaction) |
svm_sign
Assine parcialmente uma transação de pagamento x402 Solana (SVM) — apenas a assinatura da autoridade de origem do comprador (o slot feePayer do facilitador permanece não assinado, assinado no settle).
| Ação | Descrição |
|---|---|
partial-sign | Desserializar a tx TransferChecked não assinada em base64 do /authorize do comprador x402 (esquema svm-transaction), adicionar a assinatura do comprador, re-serializar para base64. Retorna { transaction }. |
A maioria das ferramentas retorna signedTransactionHex — pronta para transmissão com @cryptoapis-io/mcp-broadcast. Os caminhos x402 retornam { signature } (dados tipados EVM) ou { transaction } (SVM) em vez disso.
Dependências
| Pacote | Finalidade |
|---|---|
ethers | Assinatura de transações EVM |
bitcoinjs-lib + ecpair + tiny-secp256k1 | Assinatura de transações UTXO |
elliptic | Assinatura de transações Tron (secp256k1) |
xrpl | Assinatura de transações XRP |
Licença
MIT