CryptoAPIs MCP HD Wallet
Servidor MCP para gestión de carteras HD, recuperación de saldos y sincronización en blockchains EVM, UTXO y XRP a través de Crypto APIs
Documentación
@cryptoapis-io/mcp-hd-wallet
Servidor MCP para el producto HD Wallet (Wallet as a Service) de Crypto APIs. Realiza un seguimiento y gestiona carteras HD mediante su clave pública extendida (xPub/yPub/zPub) — las claves privadas nunca salen de tu dispositivo.
Versión de API: Compatible con la versión 2024-12-12 de Crypto APIs
Cómo Funciona
Las carteras HD (Jerárquicas Deterministas) derivan todas las direcciones a partir de una única clave pública extendida (xPub). Sincronizas tu xPub con Crypto APIs, y el servicio realiza un seguimiento de todas las direcciones derivadas, saldos y transacciones en tu nombre.
- Sincroniza tu xPub — proporciona tu clave pública extendida (xPub, yPub o zPub) para comenzar el seguimiento
- Deriva direcciones — genera nuevas direcciones de recepción y de cambio a partir del xPub
- Consulta los datos de la cartera — obtén saldos, lista de transacciones, lista de UTXOs y visualiza activos en todas las direcciones derivadas
- Prepara transacciones — crea transacciones sin firmar listas para firmarlas localmente con
@cryptoapis-io/mcp-signer
Tus claves privadas nunca se envían ni se almacenan en Crypto APIs. Solo se utiliza la clave pública extendida para la derivación de direcciones y el seguimiento de saldos.
Características
- Sincroniza carteras mediante clave pública extendida (xPub/yPub/zPub)
- Deriva direcciones de recepción y de cambio a partir del xPub
- Consulta saldos agregados, transacciones y activos en todas las direcciones derivadas
- Lista UTXOs para carteras basadas en UTXO
- Prepara transacciones sin firmar directamente desde la cartera
- Compatible con EVM (Ethereum, Ethereum Classic, BSC, Polygon, Avalanche (C-Chain), Arbitrum, Base, Optimism, Tron), UTXO (Bitcoin, Bitcoin Cash, Litecoin, Dogecoin, Dash, Zcash) y XRP
Requisitos Previos
- Node.js 18+
- Cuenta y clave de API de Crypto APIs (regístrate | obtén una clave de API)
Instalación
npm install @cryptoapis-io/mcp-hd-wallet
O instala todos los servidores MCP de Crypto APIs: npm install @cryptoapis-io/mcp
Uso
# Run with API key
npx @cryptoapis-io/mcp-hd-wallet --api-key YOUR_API_KEY
# Or use environment variable
export CRYPTOAPIS_API_KEY=YOUR_API_KEY
npx @cryptoapis-io/mcp-hd-wallet
# HTTP transport (listens on 127.0.0.1; see "Exposing the server beyond localhost")
npx @cryptoapis-io/mcp-hd-wallet --transport http --port 3000 --api-key YOUR_API_KEY
Claude Desktop
Añade 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-hd-wallet": {
"command": "npx",
"args": ["-y", "@cryptoapis-io/mcp-hd-wallet"],
"env": {
"CRYPTOAPIS_API_KEY": "your_api_key_here"
}
}
}
}
Cursor
Añade a .cursor/mcp.json (proyecto) o ~/.cursor/mcp.json (global):
{
"mcpServers": {
"cryptoapis-hd-wallet": {
"command": "npx",
"args": ["-y", "@cryptoapis-io/mcp-hd-wallet"],
"env": {
"CRYPTOAPIS_API_KEY": "your_api_key_here"
}
}
}
}
MCP Inspector
npx @modelcontextprotocol/inspector npx @cryptoapis-io/mcp-hd-wallet --api-key YOUR_API_KEY
n8n
- Inicia el servidor en modo HTTP:
npx @cryptoapis-io/mcp-hd-wallet --transport http --port 3000 --api-key YOUR_API_KEY - En tu flujo de trabajo de n8n, añade un nodo AI Agent
- En Tools, añade un MCP Client Tool y establece la URL en
http://localhost:3000/mcp
n8n en Docker:
localhostdentro del contenedor no es tu máquina. Inicia el servidor con--host 0.0.0.0yMCP_AUTH_TOKENconfigurados (consulta Exponer el servidor más allá de localhost), usahttp://host.docker.internal:3000/mcpcomo URL y añade un encabezadoAuthorization: Bearer <token>a la credencial del MCP Client Tool.
Todos los servidores usan el puerto 3000 por defecto. Usa
--portpara asignar diferentes puertos al ejecutar varios servidores.
Herramientas Disponibles
manage_hd_wallet
Gestiona carteras HD (sincronizar, activar, eliminar, listar, estado).
| Acción | Descripción |
|---|---|
sync-wallet | Sincroniza una cartera HD mediante clave pública extendida (xPub/yPub/zPub) |
list-wallets | Lista todas las carteras HD sincronizadas |
activate-wallet | Activa una cartera previamente sincronizada |
delete-wallet | Elimina una cartera sincronizada |
get-status | Obtiene el estado de sincronización de una cartera |
hd_wallet_data_utxo
Consulta datos de carteras HD UTXO (Bitcoin, Bitcoin Cash, Litecoin, Dogecoin, Dash, Zcash).
| Acción | Descripción |
|---|---|
get-details | Obtiene el saldo y los detalles de la cartera |
derive-receiving-address | Deriva la siguiente dirección de recepción |
derive-change-address | Deriva la siguiente dirección de cambio |
list-addresses | Lista todas las direcciones derivadas |
list-transactions | Lista las transacciones de la cartera |
list-utxos | Lista las salidas de transacciones no gastadas |
list-assets | Lista los activos que posee la cartera |
prepare-transaction | Prepara una transacción sin firmar desde la cartera |
hd_wallet_data_evm
Consulta datos de carteras HD EVM (Ethereum, Ethereum Classic, BSC, Polygon, Avalanche (C-Chain), Arbitrum, Base, Optimism, Tron).
| Acción | Descripción |
|---|---|
get-details | Obtiene el saldo y los detalles de la cartera |
derive-receiving-address | Deriva la siguiente dirección de recepción |
list-addresses | Lista todas las direcciones derivadas |
list-transactions | Lista las transacciones de la cartera |
list-assets | Lista los tokens que posee la cartera |
prepare-transaction | Prepara una transacción sin firmar desde la cartera |
hd_wallet_data_xrp
Consulta datos de carteras HD XRP.
| Acción | Descripción |
|---|---|
get-details | Obtiene el saldo y los detalles de la cartera |
derive-receiving-address | Deriva la siguiente dirección de recepción |
list-addresses | Lista todas las direcciones derivadas |
list-transactions | Lista las transacciones de la cartera |
list-assets | Lista los activos que posee la cartera |
Argumentos de CLI
| Argumento | Descripción | Predeterminado |
|---|---|---|
--api-key | Clave de API de Crypto APIs | variable de entorno CRYPTOAPIS_API_KEY |
--transport | Tipo de transporte: stdio o http | stdio |
--host | Host HTTP (usa 0.0.0.0 para aceptar conexiones remotas — requiere un token de autenticación con --api-key) | 127.0.0.1 |
--auth-token | Token Bearer que deben enviar los llamadores (Authorization: Bearer <token>); prefiere la variable de entorno MCP_AUTH_TOKEN | variable de entorno MCP_AUTH_TOKEN |
--allowed-hosts | Lista blanca de encabezados Host separados por comas para enlaces no loopback | — |
--port | Puerto HTTP | 3000 |
--path | Ruta HTTP | /mcp |
--stateless | Habilita el modo HTTP sin estado | false |
Modos de Clave de API HTTP
Al usar transporte HTTP, el servidor admite dos modos de clave de API:
- Con
--api-key: La clave se usa para todas las solicitudes. Los encabezados de solicitudx-api-keyse ignoran. - Sin
--api-key: Cada solicitud debe incluir un encabezadox-api-keycon una clave válida de Crypto APIs. Esto permite alojar un servidor público donde cada usuario proporciona su propia clave.
# Per-request key mode (multi-tenant)
npx @cryptoapis-io/mcp-hd-wallet --transport http --port 3000
# Clients send x-api-key header with each request
Exponer el servidor más allá de localhost
El modo HTTP escucha en 127.0.0.1 por defecto, por lo que solo los procesos en la misma máquina pueden acceder a él.
Para aceptar conexiones desde otras máquinas o contenedores, enlaza explícitamente y protege el puerto:
# 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-hd-wallet --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-hd-wallet --transport http --host 0.0.0.0 --port 3000
--allowed-hosts restringe el encabezado Host (protección contra rebinding de DNS) cuando no está enlazado a loopback. Prefiere MCP_AUTH_TOKEN sobre --auth-token: los argumentos de línea de comandos son visibles en la lista de procesos.
El transporte Stdio siempre requiere una clave de API al inicio.
Importante: Clave de API Requerida
Advertencia: Realizar solicitudes sin una clave de API válida — o con una incorrecta — puede resultar en el bloqueo de tu IP en el ecosistema de Crypto APIs. Asegúrate siempre de tener una clave de API válida configurada antes de iniciar cualquier servidor.
Servidor MCP Remoto
Crypto APIs proporciona un servidor MCP remoto oficial con todas las herramientas disponibles mediante transporte HTTP Streamable en https://ai.cryptoapis.io/mcp. Pasa tu clave de API mediante el encabezado x-api-key — no se requiere instalación.
Licencia
MIT