mcpField
P
Phoenixd MCP Server

Phoenixd MCP Server

本地服务
github.com/Sharmaz金融数据132 周前更新

关于 Phoenixd MCP Server

Phoenixd MCP Server 将 phoenixd 比特币闪电钱包接入 LLM 客户端,提供支付、交易管理和节点信息查询工具。

主要功能

  1. 01创建 BOLT11 发票和 BOLT12 offer
  2. 02支付发票、offer 和 Lightning Address
  3. 03发送并管理链上支付
  4. 04查看支付、余额和通道
  5. 05解码发票和 offer

适用场景

  1. 01为闪电支付创建发票
  2. 02支付 Lightning Address 或发票
  3. 03查看节点余额和支付记录

MCP 相关

这是一个 MCP 服务,将 phoenixd 钱包和节点操作作为工具提供给 MCP 客户端。

配置

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

mcp.json · 通用配置
{
"mcpServers": {
"phoenixd": {
"command": "npx",
"args": [
"-y",
"phoenixd-mcp-server"
],
"env": {
"HTTP_PROTOCOL": "<HTTP_PROTOCOL>",
"HTTP_HOST": "<HTTP_HOST>",
"HTTP_PORT": "<HTTP_PORT>",
"HTTP_PASSWORD": "<HTTP_PASSWORD>"
}
}
}
}
启动命令npx -y phoenixd-mcp-server
需要配置的环境变量
HTTP_PROTOCOL
HTTP_HOST
HTTP_PORT
HTTP_PASSWORD密钥

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

安装包
npmphoenixd-mcp-server

工具

17

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

此工具无需参数。

详细介绍

Phoenixd MCP 服务

将 phoenixd 比特币闪电网络钱包连接到你的大模型。

此 MCP 服务使用 MCP TypeScript SDK 和 Phoenixd API。

前提条件

你需要一个正在运行的 phoenixd 节点。Phoenixd 首次运行时会生成一个 HTTP 密码,并将其写入 ~/.phoenix/phoenix.conf:

http-password=your_generated_password

在下方配置中,将该值用于 HTTP_PASSWORD。

需要 Node.js >= 18。

配置

与 Claude Desktop 搭配使用

将以下内容添加到你的 claude_desktop_config.json 文件中:

{
  "mcpServers": {
    "phoenixd-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "phoenixd-mcp-server"
      ],
      "env": {
        "HTTP_PROTOCOL": "http",
        "HTTP_HOST": "127.0.0.1",
        "HTTP_PORT": "9740",
        "HTTP_PASSWORD": "<your_password_from_phoenix.conf>"
      }
    }
  }
}
远程节点(VPS / HTTPS)

如果 phoenixd 在反向代理和 TLS 后的远程服务上运行:

{
  "mcpServers": {
    "phoenixd-mcp-server": {
      "command": "npx",
      "args": [
        "-y",
        "phoenixd-mcp-server"
      ],
      "env": {
        "HTTP_PROTOCOL": "https",
        "HTTP_HOST": "your.server.com",
        "HTTP_PORT": "9740",
        "HTTP_PASSWORD": "<your_password_from_phoenix.conf>"
      }
    }
  }
}

工具

支付
  • create-invoice

    • 创建一张指定金额和描述的 bolt11 发票。
    • 输入:
      • description(字符串,可选):发票描述(最多 128 个字符)。必须提供 description 或 descriptionHash。
      • descriptionHash(字符串,可选):描述的 SHA256 哈希值。使用此参数代替 description。
      • amountSat(数字,可选):发票请求的金额,单位为 satoshi。若未设置,发票可按任意金额支付。
      • expirySeconds(数字,可选):发票的有效期,单位为秒,默认值为 3600(1 小时)。
      • externalId(字符串,可选):用于将发票关联到外部系统的自定义标识符。
      • webhookUrl(字符串,可选):发票支付后,phoenixd 会向此 URL 发送 POST 请求。载荷为包含支付详情的 JSON 对象,具体定义见 Phoenixd API 文档。
  • create-offer

    • 创建一个 bolt12 offer。
    • 输入:
      • description(字符串):offer 的描述。
      • amountSat(数字,可选):offer 请求的金额,单位为 satoshi。
      • expirySeconds(数字,可选):offer 的有效期,单位为秒。
  • pay-invoice

    • 支付一张 bolt11 发票。
    • 输入:
      • invoice(字符串):要支付的 bolt11 发票。
      • amountSat(数字,可选):要支付的金额,单位为 satoshi(仅适用于零金额发票)。不能与 sendAll 同时使用。
      • sendAll(布尔值,可选):若为 true,则清空钱包。不能与 amountSat 同时使用。
      • externalId(字符串,可选):用于将支付关联到外部系统的自定义标识符。
  • pay-offer

    • 支付一个 bolt12 offer。
    • 输入:
      • offer(字符串):要支付的 bolt12 offer。
      • amountSat(数字,可选):要支付的金额,单位为 satoshi。不能与 sendAll 同时使用。
      • sendAll(布尔值,可选):若为 true,则清空钱包。不能与 amountSat 同时使用。
      • message(字符串,可选):给收款人的消息。
      • externalId(字符串,可选):用于将支付关联到外部系统的自定义标识符。
  • pay-lightning-address

    • 支付一个 Lightning Address。
    • 输入:
      • address(字符串):要支付的 Lightning Address(例如:[email protected])。
      • amountSat(数字,可选):要支付的金额,单位为 satoshi。不能与 sendAll 同时使用。
      • sendAll(布尔值,可选):若为 true,则清空钱包。不能与 amountSat 同时使用。
      • message(字符串,可选):随支付附上的可选消息。
  • pay-on-chain

    • 发送一笔链上比特币支付。
    • 输入:
      • address(字符串):接收资金的比特币地址。
      • amountSat(数字):要发送的金额,单位为 satoshi。
      • feerateSatByte(数字,可选):费率,单位为每字节 satoshi。
  • bump-fee

    • 使用 CPFP 提高所有未确认链上交易的费率。返回子交易的 ID。
    • 输入:
      • feerateSatByte(数字):新的费率,单位为每字节 satoshi。
  • list-incoming-payments

    • 列出收到的付款(发票)。
    • 输入:
      • from (string, optional):从纪元起算的开始时间戳,单位为毫秒,默认值为 0。
      • to (string, optional):从纪元起算的结束时间戳,单位为毫秒,默认值为当前时间。
      • limit (number, optional):每页的付款数量,默认值为 20。
      • offset (number, optional):页面偏移量,默认值为 0。
      • all (boolean, optional):同时返回未付款的发票,默认值为 false。
      • externalId (string, optional):bolt11 发票的外部 ID。
  • get-incoming-payment

    • 获取特定收到的付款(发票)的详情。
    • 输入:
      • paymentHash (string):发票的付款哈希。
  • list-outgoing-payments

    • 列出发出的付款。
    • 输入:
      • from (string, optional):从纪元起算的开始时间戳,单位为毫秒,默认值为 0。
      • to (string, optional):从纪元起算的结束时间戳,单位为毫秒,默认值为当前时间。
      • limit (number, optional):每页的付款数量,默认值为 20。
      • offset (number, optional):页面偏移量,默认值为 0。
      • externalId (string, optional):付款的外部 ID。
  • get-outgoing-payment

    • 获取特定发出的付款的详情。
    • 输入:
      • paymentHash (string):发出的付款的付款哈希。
节点管理
  • get-node-info

    • 获取节点信息。
    • 输入:无
  • get-balance

    • 获取节点余额。
    • 输入:无
  • list-channels

    • 列出节点通道。
    • 输入:无
  • close-channel

    • 按 ID 关闭通道,将资金发送到链上指定地址,并使用指定的费率。
    • 输入:
      • channelId (string):要关闭的通道 ID。
      • address (string):用于接收资金的 Bitcoin 链上地址。
      • feerateSatByte (number):每字节的手续费率,单位为聪。
  • decode-invoice

    • 解码 bolt11 发票,输出金额的单位为毫聪。
    • 输入:
      • invoice (string):要解码的 bolt11 发票。
  • decode-offer

    • 解码 bolt12 offer,输出金额的单位为毫聪。
    • 输入:
      • offer (string):要解码的 bolt12 offer。

故障排除

Authentication failed / 401 — 检查 HTTP_PASSWORD 是否与 ~/.phoenix/phoenix.conf 中的值一致。

Connection refused — Phoenixd 未运行,或正在不同的主机/端口上监听。使用 curl http://127.0.0.1:9740/getinfo -u :your_password 验证。

Node.js version error — 此软件包需要 Node.js >= 18。运行 node --version 进行检查。

评论

支持 Markdown

第一次接触 MCP?

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

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