CryptoAPIs MCP HD Wallet

MCP server for HD wallet management, balance retrieval, and sync on EVM, UTXO, and XRP blockchains via Crypto APIs

@cryptoapis-io/mcp-hd-wallet

MCP server for Crypto APIs HD Wallet (Wallet as a Service) product. Track and manage HD wallets by their extended public key (xPub/yPub/zPub) — no private keys ever leave your device.

API Version: Compatible with Crypto APIs version 2024-12-12

How It Works

HD (Hierarchical Deterministic) wallets derive all addresses from a single extended public key (xPub). You sync your xPub with Crypto APIs, and the service tracks all derived addresses, balances, and transactions on your behalf.

  1. Sync your xPub — provide your extended public key (xPub, yPub, or zPub) to start tracking
  2. Derive addresses — generate new receiving and change addresses from the xPub
  3. Query wallet data — get balances, list transactions, list UTXOs, and view assets across all derived addresses
  4. Prepare transactions — build unsigned transactions ready for local signing with @cryptoapis-io/mcp-signer

Your private keys are never sent to or stored by Crypto APIs. Only the extended public key is used for address derivation and balance tracking.

Features

  • Sync wallets by extended public key (xPub/yPub/zPub)
  • Derive receiving and change addresses from the xPub
  • Query aggregated balances, transactions, and assets across all derived addresses
  • List UTXOs for UTXO-based wallets
  • Prepare unsigned transactions directly from wallet
  • Supports EVM (Ethereum, Ethereum Classic, BSC, Polygon, Avalanche (C-Chain), Arbitrum, Base, Optimism, Tron), UTXO (Bitcoin, Bitcoin Cash, Litecoin, Dogecoin, Dash, Zcash), and XRP

Prerequisites

Installation

npm install @cryptoapis-io/mcp-hd-wallet

Or install all Crypto APIs MCP servers: npm install @cryptoapis-io/mcp

Usage

# 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
npx @cryptoapis-io/mcp-hd-wallet --transport http --port 3000 --api-key YOUR_API_KEY

Claude Desktop

Add to your Claude Desktop config (~/Library/Application Support/Claude/claude_desktop_config.json on macOS, %APPDATA%\Claude\claude_desktop_config.json on Windows):

{
  "mcpServers": {
    "cryptoapis-hd-wallet": {
      "command": "npx",
      "args": ["-y", "@cryptoapis-io/mcp-hd-wallet"],
      "env": {
        "CRYPTOAPIS_API_KEY": "your_api_key_here"
      }
    }
  }
}

Cursor

Add to .cursor/mcp.json (project) or ~/.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

  1. Start the server in HTTP mode:
    npx @cryptoapis-io/mcp-hd-wallet --transport http --port 3000 --api-key YOUR_API_KEY
    
  2. In your n8n workflow, add an AI Agent node
  3. Under Tools, add an MCP Client Tool and set the URL to http://localhost:3000/mcp

All servers default to port 3000. Use --port to assign different ports when running multiple servers.

Available Tools

manage_hd_wallet

Manage HD wallets (sync, activate, delete, list, status).

ActionDescription
sync-walletSync an HD wallet by extended public key (xPub/yPub/zPub)
list-walletsList all synced HD wallets
activate-walletActivate a previously synced wallet
delete-walletDelete a synced wallet
get-statusGet sync status of a wallet

hd_wallet_data_utxo

Query UTXO HD wallet data (Bitcoin, Bitcoin Cash, Litecoin, Dogecoin, Dash, Zcash).

ActionDescription
get-detailsGet wallet balance and details
derive-receiving-addressDerive next receiving address
derive-change-addressDerive next change address
list-addressesList all derived addresses
list-transactionsList wallet transactions
list-utxosList unspent transaction outputs
list-assetsList assets held by wallet
prepare-transactionPrepare an unsigned transaction from wallet

hd_wallet_data_evm

Query EVM HD wallet data (Ethereum, Ethereum Classic, BSC, Polygon, Avalanche (C-Chain), Arbitrum, Base, Optimism, Tron).

ActionDescription
get-detailsGet wallet balance and details
derive-receiving-addressDerive next receiving address
list-addressesList all derived addresses
list-transactionsList wallet transactions
list-assetsList tokens held by wallet
prepare-transactionPrepare an unsigned transaction from wallet

hd_wallet_data_xrp

Query XRP HD wallet data.

ActionDescription
get-detailsGet wallet balance and details
derive-receiving-addressDerive next receiving address
list-addressesList all derived addresses
list-transactionsList wallet transactions
list-assetsList assets held by wallet

CLI Arguments

ArgumentDescriptionDefault
--api-keyCrypto APIs API keyCRYPTOAPIS_API_KEY env var
--transportTransport type: stdio or httpstdio
--hostHTTP host0.0.0.0
--portHTTP port3000
--pathHTTP path/mcp
--statelessEnable stateless HTTP modefalse

HTTP API Key Modes

When using HTTP transport, the server supports two API key modes:

  • With --api-key: The key is used for all requests. x-api-key request headers are ignored.
  • Without --api-key: Each request must include an x-api-key header with a valid Crypto APIs key. This enables hosting a public server where each user provides their own key.
# 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

Stdio transport always requires an API key at startup.

Important: API Key Required

Warning: Making requests without a valid API key — or with an incorrect one — may result in your IP being banned from the Crypto APIs ecosystem. Always ensure a valid API key is configured before starting any server.

Remote MCP Server

Crypto APIs provides an official remote MCP server with all tools available via HTTP Streamable transport at https://ai.cryptoapis.io/mcp. Pass your API key via the x-api-key header — no installation required.

License

MIT

Related Servers