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 em EVM, UTXO, Tron, XRP, Kaspa, Solana e Tezos. 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 | Assine a partir de campos de transação estruturados (to, value, gasLimit, etc.) |
sign-unsigned-hex | Assine um hex de transação não assinada pré-construída |
sign-typed-data | Assine uma mensagem de dados tipados EIP-712 (o caminho sem gás x402 — ex.: o TransferWithAuthorization EIP-3009 do comprador x402 /authorize). 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 | Assine a partir de um objeto de transação preparado (entradas, saídas) |
sign-unsigned-hex | Assine um hex de transação não assinada bruta 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 | Assine a partir de um objeto de transação com raw_data_hex |
sign-unsigned-hex | Assine 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 | Assine a partir de campos de transação XRP estruturados |
sign-unsigned-hex | Assine 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 | Assine uma transação Kaspa preparada (da API prepare-transaction) |
svm_sign
Assine parcialmente uma transação de pagamento x402 Solana (SVM) — somente 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 | Desserialize a tx TransferChecked não assinada em base64 do comprador x402 /authorize (esquema svm-transaction), adicione a assinatura do comprador, re-serialize para base64. Retorna { transaction }. |
tezos_sign
Assine uma operação Tezos para chaves tz1 (ed25519), tz2 (secp256k1) ou tz3 (P-256) (edsk… / spsk… / p2sk…).
| Ação | Descrição |
|---|---|
sign-forged-operation | Assine o hex forgedOperation de prepare_transactions_tezos. A operação é decodificada primeiro: somente operações reveal/transaction do endereço da própria chave são assinadas, e o expected opcional (destination, amount em mutez, maxFee) deve corresponder. Retorna { signedOperation, operationHash, signature, … }; transmita signedOperation. |
A maioria das ferramentas retorna signedTransactionHex — pronto para transmitir com @cryptoapis-io/mcp-broadcast. Os
caminhos x402 retornam { signature } (dados tipados EVM) ou { transaction } (SVM) em vez disso.
Dependências
| Pacote | Propósito |
|---|---|
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