Back to MCP directory
publicPublicdnsLocal runtime

kaspa-mcp

Kaspa MCP是一个用于在Kaspa区块链上发送KAS代币的MCP服务器,支持通过助记词或私钥管理钱包、查询余额、估算手续费和进行交易。

article

README

🚀 Kaspa MCP

Kaspa MCP 是一个用于在 Kaspa 有向无环图(blockDAG)上发送 KAS 代币的服务器。它借助先进的技术架构,为用户提供了便捷、高效且安全的 KAS 代币发送服务,极大地提升了用户在 Kaspa 网络中的操作体验。

🚀 快速开始

Kaspa MCP 是一个用于在 Kaspa 有向无环图(blockDAG)上发送 KAS 的 MCP 服务器。

✨ 主要特性

Kaspa 是一种快速、可扩展的第一层加密货币,基于工作量证明(PoW)构建,并由 GHOSTDAG 协议提供支持。GHOSTDAG 是一种新颖的共识机制,它扩展了中本聪的原始设计。与传统区块链丢弃竞争块不同,GHOSTDAG 允许并行块共存,并在有向无环图(blockDAG)中对它们进行排序,从而在保持去中心化和安全性的同时实现高吞吐量。

  • 每秒 10 个区块,具有亚秒级确定性(2025 年 5 月 Crescendo 升级)
  • 工作量证明,使用 kHeavyHash 算法
  • 公平启动 - 无预挖、无 ICO、无代币分配
  • 去中心化 - 在标准硬件上运行

📦 安装指南

npm install
npm run build

📚 详细文档

配置

设置以下环境变量:

| 变量 | 是否必需 | 描述 | |------|----------|-------------| | KASPA_MNEMONIC | 是* | BIP39 助记词(24 个单词) | | KASPA_PRIVATE_KEY | 是* | 十六进制编码的私钥(助记词的替代方案) | | KASPA_NETWORK | 否 | 网络:mainnettestnet-10testnet-11。默认为 mainnet | | KASPA_ACCOUNT_INDEX | 否 | 使用助记词时的 BIP44 账户索引。默认为 0 |

*必须设置 KASPA_MNEMONICKASPA_PRIVATE_KEY

与 Claude Desktop 一起使用

添加到你的 Claude Desktop 配置文件(~/Library/Application Support/Claude/claude_desktop_config.json):

{
  "mcpServers": {
    "kaspa": {
      "command": "npx",
      "args": ["kaspa-mcp"],
      "env": {
        "KASPA_MNEMONIC": "your twenty four word mnemonic phrase here ...",
        "KASPA_NETWORK": "mainnet"
      }
    }
  }
}

工具

generate_mnemonic

生成一个新的 BIP39 助记词,并派生相应的 Kaspa 钱包地址。

参数:

  • wordCount(可选):单词数量 - 12 或 24(默认:12)
  • network(可选):地址派生的网络 - mainnettestnet-10testnet-11(默认:mainnet)

返回值:

{
  mnemonic: string,    // 生成的 BIP39 助记词
  address: string,     // 派生的 Kaspa 地址(账户 0)
  network: string,     // 使用的网络
  warning: string      // 安全提醒
}

重要提示: 助记词是使用加密安全的随机数生成的。请安全保存 - 如果丢失将无法恢复。

get_my_address

获取从你配置的私钥或助记词派生的 Kaspa 地址。

返回值: { address: string }

get_balance

获取 Kaspa 地址的余额。

参数:

  • address(可选):要检查的地址。默认为你的钱包地址。

返回值: { address: string, balance: string, utxoCount: number }

get_fee_estimate

从网络获取当前的费用估算。

返回值: { priorityFee: string, normalFee: string, lowFee: string }

send_kaspa

向接收方发送 KAS 代币。

参数:

  • to:接收方的 Kaspa 地址(必须与钱包网络匹配)
  • amount:KAS 数量,以字符串形式表示(例如,"10.5",最多 8 位小数)
  • priorityFee(可选):优先费用,以 sompi 为单位

返回值: { txId: string, fee: string }

验证:

  • 地址格式和网络前缀验证
  • 金额必须是有效的正十进制数
  • 最多 8 位小数(1 sompi = 0.00000001 KAS)
  • 广播前检查余额是否充足

get_transaction

获取交易详情,包括输入和输出。

参数:

  • txId:交易 ID

返回值:

{
  txId: string,
  accepted: boolean,
  blockHash?: string,
  blockTime?: number,
  inputs: Array<{ transactionId: string, index: number }>,
  outputs: Array<{ index: number, amount: string, address: string }>
}

示例

Kaspa-mcp 在 Claude Code 中的演示

测试提示

尝试以下提示以验证你的 MCP 是否正常工作:

"Generate a new Kaspa wallet for me"
"What is my Kaspa address?"
"How much KAS do I have?"
"What are the current network fees?"
"Send 5 KAS to kaspa:qz..."

MCP 将执行以下操作:

  1. 验证接收方地址是否与你的网络匹配
  2. 检查你的余额是否充足
  3. 使用符合 KIP-9 的费用构建交易
  4. 使用你的私钥签名
  5. 通过公共节点广播到网络
  6. 返回交易 ID

🔧 技术细节

  • 使用 kaspa-wasm 进行加密操作
  • 通过解析器连接到公共节点以实现自动节点发现
  • 为助记词钱包实现 BIP44 派生路径 m/44'/111111'/account'
  • 交易构建使用生成器进行符合 KIP-9 的 UTXO 管理

🔒 安全保障

  • 私钥和助记词仅在本地用于签名
  • 密钥从不发送到任何外部服务
  • 错误消息经过清理,以防止机密信息泄露
  • 所有交易都需要用户通过 MCP 工具进行明确操作

💻 使用示例

测试命令

npm test

测试套件包括基于 Kaspium 钱包 的确定性测试向量,用于跨实现验证。测试向量存储在 src/kaspa/test-vectors.json 中,包括:

  • 标准 BIP39 测试助记词(12 和 24 个单词)
  • 已知私钥 → 地址派生
  • 无效输入验证

这些向量确保使用 BIP44 路径 m/44'/111111'/account'/0/0 的 Kaspa 钱包实现之间的密钥派生一致。

注意: 币种类型 111111 是 Kaspa 的事实上的标准,被 rusty-kaspa(官方节点)、Kaspium 和 kaspa-wasm 使用。虽然未在 SLIP-0044 中正式注册,但它是既定的生态系统约定。

网络信息

| 网络 | 地址前缀 | API 端点 | |---------|---------------|--------------| | mainnet | kaspa: | api.kaspa.org | | testnet-10 | kaspatest: | api-tn10.kaspa.org | | testnet-11 | kaspatest: | api-tn11.kaspa.org |

📄 许可证

ISC

help

Runtime guide

cloud

Hosted runtime

Hosted servers run from a provider-managed environment. You usually connect the MCP client to the hosted endpoint or follow the provider's authorization flow, without keeping a local process alive

  1. Open provider connection page
  2. Authorize or copy endpoint
  3. Connect from your MCP client
terminal

Local runtime / other methods

Local servers run on your own machine or infrastructure. You normally copy the server_config into your MCP client, install the required package, and provide env variables from env_schema when needed

  1. Copy server_config
  2. Install required package
  3. Fill env variables and restart client