关于 mcp-prepare-transactions
mcp-prepare-transactions 是 Crypto APIs 的 MCP 服务,可为多类区块链及代币标准构建未签名转账。适用于需要准备交易数据并在本地签名的客户端。
主要功能
- 01EVM 原生币、ERC-20 与 ERC-721 转账
- 02Tezos XTZ、FA1.2 与 FA2 转账
- 03Solana SOL 与 SPL 转账
- 04Kaspa、XRP 与多种 UTXO 转账
- 05Tron 原生币、TRC-20 与 NFT 转账
- 06返回可供本地签名的未签名数据
适用场景
- 01为 EVM 资产转账准备未签名交易
- 02准备 Solana 或 Tezos 代币转账操作
- 03构建支持多个收款方的 Kaspa 或 UTXO 转账
- 04为 Tron 代币或 NFT 转账生成交易数据
MCP 相关
该 MCP 服务向客户端提供构建未签名交易的工具,支持 EVM、Tezos、Solana、Kaspa、XRP、UTXO 和 Tron。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
8收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| value | string | 否 | 原生币最小单位的金额,例如 wei(prepare-transaction-from-address 必填) |
| action | enum | 是 | 要执行的操作prepare-transaction-from-address | prepare-fungible-token-transfer | prepare-nft-transfer |
| amount | string | 否 | 要转账的代币数量(prepare-fungible-token-transfer 必填) |
| context | string | 否 | 请求的可选上下文——会在响应中原样返回 |
| network | enum | 是 | 网络名称mainnet | mordor | testnet | nile | sepolia | amoy | fuji |
| tokenId | string | 否 | NFT 代币 ID(prepare-nft-transfer 必填) |
| gasLimit | string | 否 | 自定义 gas 限额覆盖值(仅适用于 prepare-transaction-from-address;省略时自动估算) |
| gasPrice | string | 否 | 以 wei 为单位的自定义 gas 价格(仅适用于 prepare-transaction-from-address;省略时自动估算) |
| toAddress | string | 否 | 收款地址(所有操作均必填) |
| blockchain | enum | 是 | 区块链协议ethereum | ethereum-classic | binance-smart-chain | tron | polygon | avalanche | arbitrum | base | optimism |
| fromAddress | string | 否 | 发送方地址(所有操作均必填) |
| contractAddress | string | 否 | 代币合约地址(prepare-fungible-token-transfer 和 prepare-nft-transfer 必填) |
详细介绍
@cryptoapis-io/mcp-prepare-transactions
用于 Crypto APIs Prepare Transactions 产品的 MCP 服务。为 EVM、Tezos、Solana、Kaspa、XRP、UTXO 和 Tron 构建未签名交易。
API 版本: 兼容 Crypto APIs 版本 2024-12-12
功能
- 准备 EVM 原生币、ERC-20 同质化代币和 ERC-721 NFT 转账交易
- 准备 Tezos 原生币(XTZ)、FA1.2 和 FA2 代币转账操作
- 准备 Solana 上的原生 SOL 和 SPL 代币转账交易
- 准备 Kaspa 上的原生 KAS 转账,支持多个收款方
- 准备原生 XRP 转账
- 准备 6 条 UTXO 链(Bitcoin、Bitcoin Cash、Litecoin、Dogecoin、Dash、Zcash)上的原生币转账
- 通过 Tron 专用的 prepare-transactions 端点准备原生 TRX、TRC-20 和 NFT 转账
- 返回可供本地签名的未签名交易数据
前提条件
- Node.js 18+
- Crypto APIs 账户和 API 密钥(注册 | 获取 API 密钥)
安装
npm install @cryptoapis-io/mcp-prepare-transactions
或者安装所有 Crypto APIs MCP 服务:npm install @cryptoapis-io/mcp
用法
# Run with API key
npx @cryptoapis-io/mcp-prepare-transactions --api-key YOUR_API_KEY
# Or use environment variable
export CRYPTOAPIS_API_KEY=YOUR_API_KEY
npx @cryptoapis-io/mcp-prepare-transactions
# HTTP transport (listens on 127.0.0.1; see "Exposing the server beyond localhost")
npx @cryptoapis-io/mcp-prepare-transactions --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-prepare-transactions": {
"command": "npx",
"args": ["-y", "@cryptoapis-io/mcp-prepare-transactions"],
"env": {
"CRYPTOAPIS_API_KEY": "your_api_key_here"
}
}
}
}
Cursor
添加到 .cursor/mcp.json(项目级)或 ~/.cursor/mcp.json(全局):
{
"mcpServers": {
"cryptoapis-prepare-transactions": {
"command": "npx",
"args": ["-y", "@cryptoapis-io/mcp-prepare-transactions"],
"env": {
"CRYPTOAPIS_API_KEY": "your_api_key_here"
}
}
}
}
MCP Inspector
npx @modelcontextprotocol/inspector npx @cryptoapis-io/mcp-prepare-transactions --api-key YOUR_API_KEY
n8n
- 以 HTTP 模式启动服务:
npx @cryptoapis-io/mcp-prepare-transactions --transport http --port 3000 --api-key YOUR_API_KEY - 在 n8n 工作流中添加一个 AI Agent 节点
- 在 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分配不同端口。
可用工具
prepare_transactions_evm
准备未签名的 EVM 交易。
| 操作 | 描述 |
|---|---|
prepare-transaction-from-address | 准备从某个地址发起的原生币转账 |
prepare-fungible-token-transfer | 准备 ERC-20 代币转账 |
prepare-nft-transfer | 准备 ERC-721 NFT 转账 |
prepare_transactions_tezos
准备未签名的 Tezos 操作(mainnet、shadownet)。
| 操作 | 描述 |
|---|---|
native-coins | 准备原生 XTZ 转账 |
fa1-2-tokens | 准备 FA1.2 代币转账 |
fa2-tokens | 准备 FA2 代币转账 |
prepare_transactions_solana
准备未签名的 Solana 交易(mainnet、devnet)。
| 操作 | 描述 |
|---|---|
native-coins | 准备原生 SOL 转账 |
spl-tokens | 准备 SPL 代币转账 |
prepare_transactions_kaspa
准备未签名的 Kaspa 交易(仅限 mainnet)。
| 操作 | 描述 |
|---|---|
native-coins | 准备原生 KAS 转账,支持在一笔交易中向多个收款方转账 |
prepare_transactions_xrp
准备未签名的 XRP 交易(mainnet、testnet)。
| 操作 | 描述 |
|---|---|
native-coins | 准备原生 XRP 转账 |
prepare_transactions_utxo
准备未签名的 UTXO 交易(Bitcoin、Bitcoin Cash、Litecoin、Dogecoin、Dash、Zcash;mainnet、testnet)。
| 操作 | 描述 |
|---|---|
native-coins | 准备原生币转账,支持多个收款方。需要 feePriority 或 exactFee |
prepare_transactions_tron
通过 Tron 专用的 prepare-transactions 端点(mainnet、nile)准备未签名的 Tron 交易。
| 操作 | 描述 |
|---|---|
native-coins | 准备原生 TRX 转账 |
trc20-tokens | 准备 TRC-20 代币转账 |
non-fungible-tokens | 准备 TRC-721/TRC-1155 NFT 转账 |
CLI 参数
| 参数 | 描述 | 默认值 |
|---|---|---|
--api-key | Crypto APIs API 密钥 | CRYPTOAPIS_API_KEY 环境变量 |
--transport | 传输类型:stdio 或 http | stdio |
--host | HTTP 主机(使用 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 标头允许列表,用于非回环绑定 | — |
--port | HTTP 端口 | 3000 |
--path | HTTP 路径 | /mcp |
--stateless | 启用无状态 HTTP 模式 | false |
HTTP API 密钥模式
使用 HTTP 传输时,服务支持两种 API 密钥模式:
- 使用
--api-key: 所有请求都使用该密钥。忽略x-api-key请求标头。 - 不使用
--api-key: 每个请求都必须包含带有有效 Crypto APIs 密钥的x-api-key标头。这样可以托管公共服务,让每位用户提供自己的密钥。
# Per-request key mode (multi-tenant)
npx @cryptoapis-io/mcp-prepare-transactions --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-prepare-transactions --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-prepare-transactions --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
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。