CryptoAPIs MCP Signer

Servidor MCP para firma local de transacciones en blockchains EVM, UTXO, Tron y XRP, sin necesidad de llamadas a API.

Documentación

@cryptoapis-io/mcp-signer

Servidor MCP para firma local de transacciones en EVM, UTXO, Tron, XRP, Kaspa, Solana y Tezos. Sin llamadas HTTP a Crypto APIs — la firma ocurre completamente en tu máquina. No se requiere clave API.

Seguridad

  • Solo Stdio — sin transporte HTTP. El servidor no escucha en ningún puerto.
  • Claves privadas en la entrada de herramientas — cada herramienta recibe privateKey / privateKeys / secret como parámetros. Las claves nunca se leen de variables de entorno.
  • Sin llamadas de red — toda la firma se realiza localmente usando bibliotecas criptográficas.

Instalación

npm install @cryptoapis-io/mcp-signer

O instala todos los servidores MCP de Crypto APIs: npm install @cryptoapis-io/mcp

Uso

npx @cryptoapis-io/mcp-signer

Claude Desktop

Agrega a tu configuración de Claude Desktop (~/Library/Application Support/Claude/claude_desktop_config.json en macOS, %APPDATA%\Claude\claude_desktop_config.json en Windows):

{
  "mcpServers": {
    "cryptoapis-signer": {
      "command": "npx",
      "args": ["-y", "@cryptoapis-io/mcp-signer"]
    }
  }
}

Cursor

Agrega a .cursor/mcp.json (proyecto) o ~/.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

Herramientas Disponibles

evm_sign

Firma una transacción EVM (Ethereum, Ethereum Classic, BSC, Polygon, Avalanche (C-Chain), Arbitrum, Base, Optimism, Tron).

AcciónDescripción
sign-from-detailsFirmar desde campos de transacción estructurados (to, value, gasLimit, etc.)
sign-unsigned-hexFirmar un hex de transacción no firmada preconstruido
sign-typed-dataFirmar un mensaje de datos tipados EIP-712 (la ruta sin gas x402 — por ejemplo, el TransferWithAuthorization EIP-3009 del comprador x402 /authorize). Devuelve { signature }, no una tx.

utxo_sign

Firma una transacción UTXO (Bitcoin, Bitcoin Cash, Litecoin, Dogecoin, Dash, Zcash).

AcciónDescripción
sign-from-detailsFirmar desde un objeto de transacción preparado (entradas, salidas)
sign-unsigned-hexFirmar un hex de transacción no firmada en bruto con descriptores de entrada

tron_sign

Firma una transacción Tron usando secp256k1 (sin dependencia de TronWeb).

AcciónDescripción
sign-from-detailsFirmar desde un objeto de transacción con raw_data_hex
sign-unsigned-hexFirmar un hex de transacción no firmada preconstruido

xrp_sign

Firma una transacción XRP.

AcciónDescripción
sign-from-detailsFirmar desde campos de transacción XRP estructurados
sign-unsigned-hexFirmar un hex de transacción no firmada preconstruido

kaspa_sign

Firma una transacción Kaspa usando schnorr (BIP340) mediante kaspa-wasm. Solo mainnet.

AcciónDescripción
sign-from-detailsFirmar una transacción Kaspa preparada (desde la API de preparación de transacciones)

svm_sign

Firma parcialmente una transacción de pago x402 de Solana (SVM) — solo la firma de autoridad de origen del comprador (el slot de feePayer del facilitador permanece sin firmar, se firma al liquidar).

AcciónDescripción
partial-signDeserializar la tx TransferChecked no firmada en base64 del comprador x402 /authorize (esquema svm-transaction), agregar la firma del comprador, re-serializar a base64. Devuelve { transaction }.

tezos_sign

Firma una operación Tezos para claves tz1 (ed25519), tz2 (secp256k1) o tz3 (P-256) (edsk… / spsk… / p2sk…).

AcciónDescripción
sign-forged-operationFirmar el hex forgedOperation de prepare_transactions_tezos. La operación se decodifica primero: solo se firman operaciones de revelación/transacción desde la propia dirección de la clave, y el expected opcional (destination, amount en mutez, maxFee) debe coincidir. Devuelve { signedOperation, operationHash, signature, … }; transmite signedOperation.

La mayoría de las herramientas devuelven signedTransactionHex — listo para transmitir con @cryptoapis-io/mcp-broadcast. Las rutas x402 devuelven { signature } (datos tipados EVM) o { transaction } (SVM) en su lugar.

Dependencias

PaquetePropósito
ethersFirma de transacciones EVM
bitcoinjs-lib + ecpair + tiny-secp256k1Firma de transacciones UTXO
ellipticFirma de transacciones Tron (secp256k1)
xrplFirma de transacciones XRP

Licencia

MIT