mcpField
M
mcp-hd-wallet

mcp-hd-wallet

本地服务
github.com/CryptoAPIs-io金融数据14 周前更新

关于 mcp-hd-wallet

mcp-hd-wallet 将 Crypto APIs 的 HD Wallet 功能封装为 MCP 服务,供需要跟踪和管理 EVM、UTXO 或 XRP 钱包的用户使用。它依据扩展公钥同步钱包、派生地址并汇总链上数据,私钥不会发送给 Crypto APIs。

主要功能

  1. 01通过 xPub、yPub 或 zPub 同步钱包
  2. 02派生接收地址与找零地址
  3. 03汇总余额、交易和资产
  4. 04列出 UTXO 钱包的未花费输出
  5. 05准备待本地签名的未签名交易

适用场景

  1. 01跟踪扩展公钥派生的钱包地址
  2. 02检查钱包汇总余额与交易记录
  3. 03构建待本地签名的交易

MCP 相关

作为 MCP 服务,它向客户端提供钱包管理、地址派生、余额与交易查询以及交易准备工具,并通过 Crypto APIs 跟踪钱包数据。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"cryptoapis-io-mcp-hd-wallet": {
"command": "npx",
"args": [
"-y",
"@cryptoapis-io/mcp-hd-wallet"
],
"env": {
"CRYPTOAPIS_API_KEY": "<CRYPTOAPIS_API_KEY>"
}
}
}
}
启动命令npx -y @cryptoapis-io/mcp-hd-wallet
需要配置的环境变量
CRYPTOAPIS_API_KEY密钥Crypto APIs API key

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
npm@cryptoapis-io/mcp-hd-wallet0.4.0

工具

5

收录的工具列表 · 更新于 2 周前

参数类型必填说明
limitnumber否每页最大结果数(仅适用于 list-wallets)
actionenum是要执行的操作sync-wallet | list-wallets | activate-wallet | delete-wallet | get-status
offsetnumber否分页偏移量(仅适用于 list-wallets)
contextstring否请求的可选上下文——会在响应中原样返回
networkenum否网络;所有操作均必填mainnet | testnet | mordor | nile | sepolia
blockchainenum否区块链;所有操作均必填bitcoin | bitcoin-cash | litecoin | dogecoin | dash | zcash | ethereum | ethereum-classic | binance-smart-chain | tron | xrp
confirmationTokenstring否来自先前预览响应的确认令牌。重要:在传递此令牌之前,必须向用户展示警告和影响,并获得用户的明确批准。切勿自动确认——始终先询问用户。令牌将在 60 秒后过期。
extendedPublicKeystring否xPub/yPub/zPub; required for sync, activate, delete, get-status

详细介绍

@cryptoapis-io/mcp-hd-wallet

适用于 Crypto APIs HD Wallet(钱包即服务)产品的 MCP 服务。通过**扩展公钥(xPub/yPub/zPub)**跟踪和管理 HD 钱包——私钥绝不会离开你的设备。

**API 版本:**兼容 Crypto APIs 版本 2024-12-12

工作原理

HD(分层确定性)钱包通过单个扩展公钥(xPub)派生所有地址。将 xPub 与 Crypto APIs 同步后,该服务会代表你跟踪所有派生地址、余额和交易。

  1. 同步 xPub — 提供扩展公钥(xPub、yPub 或 zPub)以开始跟踪
  2. 派生地址 — 从 xPub 生成新的收款地址和找零地址
  3. 查询钱包数据 — 获取余额、列出交易和 UTXO,并查看所有派生地址中的资产
  4. 准备交易 — 构建未签名交易,以便使用 @cryptoapis-io/mcp-signer 在本地签名

Crypto APIs 绝不会接收或存储你的私钥。地址派生和余额跟踪仅使用扩展公钥。

功能

  • 通过扩展公钥(xPub/yPub/zPub)同步钱包
  • 从 xPub 派生收款地址和找零地址
  • 查询所有派生地址的汇总余额、交易和资产
  • 列出基于 UTXO 的钱包的 UTXO
  • 直接从钱包准备未签名交易
  • 支持 EVM(Ethereum、Ethereum Classic、BSC、Polygon、Avalanche(C-Chain)、Arbitrum、Base、Optimism、Tron)、UTXO(Bitcoin、Bitcoin Cash、Litecoin、Dogecoin、Dash、Zcash)和 XRP

先决条件

安装

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

或安装所有 Crypto APIs MCP 服务:npm install @cryptoapis-io/mcp

用法

# 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

将以下内容添加到 Claude Desktop 配置文件(macOS:~/Library/Application Support/Claude/claude_desktop_config.json,Windows:%APPDATA%\Claude\claude_desktop_config.json):

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

添加到 .cursor/mcp.json(项目级)或 ~/.cursor/mcp.json(全局):

{
  "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. 以 HTTP 模式启动服务:
    npx @cryptoapis-io/mcp-hd-wallet --transport http --port 3000 --api-key YOUR_API_KEY
    
  2. 在 n8n 工作流中,添加一个 AI Agent 节点
  3. 在 Tools 下添加一个 MCP Client Tool,并将 URL 设为 http://localhost:3000/mcp

**Docker 中的 n8n:**容器内的 localhost 并非你的计算机。使用 --host 0.0.0.0 和设置好的 MCP_AUTH_TOKEN 启动服务(参见将服务暴露到 localhost 之外),将 URL 设为 http://host.docker.internal:3000/mcp,并在 MCP Client Tool 凭据中添加 Authorization: Bearer <token> 标头。

所有服务的默认端口均为 3000。运行多个服务时,使用 --port 分配不同端口。

可用工具

manage_hd_wallet

管理 HD 钱包(同步、激活、删除、列出、查看状态)。

ActionDescription
sync-wallet通过扩展公钥(xPub/yPub/zPub)同步 HD 钱包
list-wallets列出所有已同步的 HD 钱包
activate-wallet激活之前同步的钱包
delete-wallet删除已同步的钱包
get-status获取钱包的同步状态
hd_wallet_data_utxo

查询 UTXO HD 钱包数据(Bitcoin、Bitcoin Cash、Litecoin、Dogecoin、Dash、Zcash)。

ActionDescription
get-details获取钱包余额和详情
derive-receiving-address派生下一个收款地址
derive-change-address派生下一个找零地址
list-addresses列出所有派生地址
list-transactions列出钱包交易
list-utxos列出未花费的交易输出
list-assets列出钱包持有的资产
prepare-transaction从钱包准备未签名交易
hd_wallet_data_evm

查询 EVM HD 钱包数据(Ethereum、Ethereum Classic、BSC、Polygon、Avalanche(C-Chain)、Arbitrum、Base、Optimism、Tron)。

操作描述
get-details获取钱包余额和详情
derive-receiving-address派生下一个收款地址
list-addresses列出所有已派生的地址
list-transactions列出钱包交易
list-assets列出钱包持有的代币
prepare-transaction准备一笔来自钱包的未签名交易
hd_wallet_data_xrp

查询 XRP HD 钱包数据。

操作描述
get-details获取钱包余额和详情
derive-receiving-address派生下一个收款地址
list-addresses列出所有已派生的地址
list-transactions列出钱包交易
list-assets列出钱包持有的资产

CLI 参数

参数描述默认值
--api-keyCrypto APIs API 密钥CRYPTOAPIS_API_KEY 环境变量
--transport传输类型:stdio 或 httpstdio
--hostHTTP 主机(使用 0.0.0.0 接受远程连接 — 需要通过 --api-key 提供身份验证令牌)127.0.0.1
--auth-token调用方必须发送的 Bearer 令牌(Authorization: Bearer <token>);建议使用 MCP_AUTH_TOKEN 环境变量MCP_AUTH_TOKEN 环境变量
--allowed-hosts用逗号分隔的 Host 标头允许列表,用于非回环绑定—
--portHTTP 端口3000
--pathHTTP 路径/mcp
--stateless启用无状态 HTTP 模式false
HTTP API 密钥模式

使用 HTTP 传输时,服务支持两种 API 密钥模式:

  • 使用 --api-key: 所有请求都使用此密钥。x-api-key 请求标头会被忽略。
  • 不使用 --api-key: 每个请求都必须包含 x-api-key 标头,并提供有效的 Crypto APIs 密钥。这样可以托管公共服务,由每位用户提供自己的密钥。
# 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
将服务开放给 localhost 以外的连接

HTTP 模式默认监听 127.0.0.1,因此只有同一台机器上的进程可以访问。 若要接受来自其他机器或容器的连接,请显式绑定并保护端口:

# 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 会限制 Host 标头(防止 DNS 重绑定)。建议使用 MCP_AUTH_TOKEN,而不是 --auth-token:命令行参数会显示在进程列表中。

Stdio 传输始终要求在启动时提供 API 密钥。

重要:需要 API 密钥

警告: 使用无效 API 密钥或不提供有效 API 密钥发起请求,可能会导致你的 IP 被 Crypto APIs 生态系统封禁。启动任何服务前,请务必确保已配置有效的 API 密钥。

远程 MCP 服务

Crypto APIs 提供官方远程 MCP 服务,可通过 HTTP Streamable 传输使用所有工具,地址为 https://ai.cryptoapis.io/mcp。通过 x-api-key 标头传递 API 密钥 — 无需安装。

许可证

MIT

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。