mcpField
L
Lightning Enable MCP Server

Lightning Enable MCP Server

本地服务
docs.lightningenable.com金融数据96 天前更新

关于 Lightning Enable MCP Server

Lightning Enable MCP Server 为 AI Agent 提供 Lightning 支付和代理间商务工具,适用于支付发票、访问付费 API 和管理预算。它还支持通过 L402 出售 API 服务,以及在 Nostr 上发现和结算代理服务。

主要功能

  1. 01支付 Lightning 发票和 L402 挑战
  2. 02发现付费 API 并读取其清单
  3. 03设置预算并记录支出
  4. 04创建收款发票及执行钱包操作
  5. 05通过 L402 销售 API 服务
  6. 06在 Nostr 上发现和结算代理服务

适用场景

  1. 01让 Agent 按请求支付 API 费用
  2. 02查找带价格和端点信息的 API
  3. 03限制 Agent 支出并核对收据
  4. 04向其他 Agent 提供并结算服务

MCP 相关

该 MCP 服务向 AI Agent 暴露钱包、发票、L402 支付、预算和 API 发现工具。生产者及 Agent Service Agreement 工具用于出售服务,以及在 Nostr 上发现、请求和结算代理间服务。

配置

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

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库
安装包
nugetLightningEnable.Mcp2.1.1
pypilightning-enable-mcp2.1.1
ocidocker.io/refinedelement/lightning-enable-mcp:2.1.1

工具

17

收录的工具列表 · 更新于 5 天前

参数类型必填说明
nwc_connection_stringstring否NWC 连接字符串(nostr+walletconnect://...)。仅报告时省略。

详细介绍

Lightning Enable 的一部分——为 Lightning 上的 Agent 商务提供基础设施。

Lightning Enable MCP 服务

Discord PyPI downloads NuGet downloads Docker pulls

将你自己的 API 变现——30 天免费试用

Agent 通过 Lightning 按请求向你的 API 付费——每月 49 美元的固定订阅费,所有 sat 都归你所有。

也可以留在你的 Agent 中直接注册:调用 create_lightning_enable_account 工具。

这是一个开源 MCP(Model Context Protocol)服务,可让 AI Agent 进行 Lightning Network 支付并参与 Agent 间商务。只需一个钱包,即可开箱使用钱包、发票、L402、预算和 API 发现工具。生产者工具(通过 L402 销售访问权限)和 Agent Service Agreement(ASA)工具(通过 Nostr 进行 Agent 间发现、请求、结算和证明)则需订阅 Agentic Commerce 才能使用。请参阅完整工具列表。

提供 .NET 和 Python 版本。

功能

为你的 AI Agent 提供 Lightning 钱包,它就能:

  • 支付发票 — 通过 Lightning 向任何 BOLT11 发票发送比特币
  • 访问 L402 API — 自动支付 L402 挑战,实现无缝 API 访问
  • 发现 API — 按关键词或类别搜索 L402 API 注册表,查找付费 API;也可以获取指定 API 的清单,查看完整端点详情和定价
  • 跟踪支出 — 设置预算限额、查看持久化收据日志并检查余额
  • 创建发票 — 生成发票以接收付款
  • 执行钱包操作 — BTC 价格、货币兑换和链上转账(Strike;链上转账也支持 LND)
  • 自行创建 Lightning Enable 账户 — create_lightning_enable_account 通过 L402 支付约 100 sat 的激活费用,并返回商家 API 密钥:这个从免费到付费的注册表单本身就是协议,无需浏览器或结账页面即可解锁生产者和 ASA 工具。
  • 销售服务(L402 Producer) — 设置卖家账户、将 API 接入 L402、为其路由定价、公开列出、生成付款挑战并验证付款方令牌——全部通过一个工具完成,让 Agent 无需接触 REST,就能从 API 密钥直接创建付费端点
  • Agent 商务(ASA) — 通过 Nostr 发现、请求、结算并评价 Agent 间服务

快速开始

1. 安装
# .NET
dotnet tool install -g LightningEnable.Mcp

# Python
pip install lightning-enable-mcp

# Python (no install)
uvx lightning-enable-mcp

# Docker
docker pull refinedelement/lightning-enable-mcp:latest
2. 首次运行 — setup_wallet

没有钱包,其他功能都无法使用,所以先从这里开始。让你的 Agent:

Run setup_wallet

不带参数运行时,它会报告当前配置的钱包以及凭据的来源——包括提供方和来源,但绝不会显示凭据本身。如果没有钱包,它会返回设置步骤。

最快的方式是使用 NWC。 在钱包应用(Alby Hub、CoinOS 或任何 NIP-47 钱包)中创建一个 Nostr Wallet Connect 连接,复制 nostr+walletconnect:// 字符串,然后将其提供给 Agent:

Run setup_wallet with this connection string: nostr+walletconnect://...

setup_wallet 会验证字符串,连接到钱包以确认其能够响应,然后将其写入 ~/.lightning-enable/config.json,并将文件权限限制为仅你的用户可访问。它会报告钱包声明支持的方法和余额。之后重启服务,以便加载新钱包。

或者设置环境变量(例如在下面的 Claude Desktop 配置中)。L402——本服务的核心用途——需要钱包能够返回支付原像:

  • Strike — STRIKE_API_KEY,获取地址:https://dashboard.strike.me
  • NWC — NWC_CONNECTION_STRING,来自 CoinOS / CLINK / Alby Hub
  • LND(你自己的节点——始终会返回原像)— LND_REST_HOST + LND_MACAROON_HEX
    • 节点证书为自签名证书?将 LND_TLS_CERT_PATH 设置为节点的 tls.cert(将 TLS 固定到该证书)。LND_SKIP_TLS_VERIFY=true 是应急选项,并不推荐。可选项:LND_FEE_LIMIT_SATS、LND_PAYMENT_TIMEOUT_SECONDS。

⚠️ OpenNode(OPENNODE_API_KEY)仅适用于开具发票/直接支付——它永远不会返回原像,因此无法支付 L402 挑战。 如果你需要使用 L402(核心用途),请勿将它作为唯一钱包。

如果设置了多个钱包,优先级为:LND > NWC > Strike > OpenNode;并且环境变量优先于配置文件——如果环境变量会覆盖连接字符串,setup_wallet 会拒绝写入,并告知你要取消设置哪个变量。完整的兼容性矩阵请参阅支持的钱包。

3. 验证整个流程正常运行 — test_l402_payment

让你的 Agent:

Run test_l402_payment

此操作会端到端支付一个公开的 1-sat L402 端点,以验证你的钱包已连接、会返回原像,并且能够完成真实的 L402 支付。这是回答“我的钱包到底能不能用?”的最简方式——成本约为 1 聪。

4. 接下来体验一下 — 买件 T 恤

整个流程正常后,可以试试 Lightning Enable Store,这是一个使用 L402 的在线商店。让 Claude:

Buy me a Lightning Enable t-shirt from store.lightningenable.com

(此操作需要已充值的钱包和收货地址,所以 test_l402_payment 更适合作为首次验证——只需 1 聪,也不需要收货。)

Claude Desktop 手动安装(MCPB 捆绑包)

如需一键安装而无需编辑配置文件,请从 mcpb/ 目录获取打包好的 MCPB 捆绑包,而不是手动编辑 JSON:在本地运行 npx -y @anthropic-ai/mcpb pack mcpb lightning-enable-mcp.mcpb 进行构建(或从 mcpb.yml CI 运行中下载 .mcpb 构件),然后双击生成的 .mcpb 文件,或将其拖入 Claude Desktop 的 Settings → Extensions。Claude Desktop 会通过自身的设置界面提示你输入钱包凭据(Strike、NWC 或 LND)和可选的 Lightning Enable API 密钥,无需使用文本配置文件。有关捆绑包内容,请参阅 mcpb/README.md;有关其 Anthropic MCP Directory 提交状态,请参阅 mcpb/SUBMISSION.md。

Claude Desktop 配置

添加到 claude_desktop_config.json:

.NET:

{
  "mcpServers": {
    "lightning-enable": {
      "command": "lightning-enable-mcp",
      "env": {
        "STRIKE_API_KEY": "your-strike-api-key"
      }
    }
  }
}

dotnet tool install -g LightningEnable.Mcp 会将 lightning-enable-mcp 命令添加到你的 PATH。如果 Claude Desktop 找不到它,请将 command 设置为完整路径:Windows 上为 "C:\\Users\\<you>\\.dotnet\\tools\\lightning-enable-mcp.exe"(JSON 中需要将反斜杠加倍),macOS 上为 /Users/<you>/.dotnet/tools/lightning-enable-mcp,Linux 上为 /home/<you>/.dotnet/tools/lightning-enable-mcp。配置文件不会展开 %USERPROFILE% 或 $HOME 等环境变量。

Python:

{
  "mcpServers": {
    "lightning-enable": {
      "command": "uvx",
      "args": ["lightning-enable-mcp"],
      "env": {
        "STRIKE_API_KEY": "your-strike-api-key"
      }
    }
  }
}

配置文件位置:

  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Linux: ~/.config/claude/claude_desktop_config.json

部署到托管环境

超过自动批准额度的付款需要人工批准:服务会生成一个简短的确认码并发送给你,只有你读出确认码后,Agent 才能继续。确认码永远不会出现在工具结果中,因此,受到提示词注入的 Agent 无法通过读取结果来批准自己的支出。

请将此机制视为可信本地主机上的操作员确认辅助方式,而不是独立的审批边界:如果 Agent 所在的主机可以读取服务的控制台、日志流、审批文件或 Webhook 目标,它也能读取确认码。

这只有在确认码能送达人工时才有效。在笔记本电脑上,确认码会输出到服务的控制台(stderr),由你在那里读取。在托管服务上——例如 claude.ai 连接器、Docker 容器或服务器集群——没有人会查看 stderr;在共享主机上,Agent 可能会自己读取。因此,你需要选择审批渠道。

渠道超过额度时会发生什么适用场景
stderr(默认)确认码会打印到服务控制台。你在本地运行服务并查看其输出。
refuse付款会被拒绝,不会生成确认码。你在托管环境中运行,且无人能接收确认码。
webhook待处理的确认请求会以 HMAC 签名后通过 POST 发送到你的 URL。你再将确认码转发给 Agent。你有运维渠道,例如聊天工具、寻呼机或审批应用。
file同一条 JSON 行会追加到你正在监控的文件中。你通过日志收集审批请求。

无论使用哪种渠道,都有两条规则:确认码永远不会返回给 Agent;如果通知发送失败,付款绝不会获批——投递失败会导致付款被拒绝并撤销确认码。

确认码为 6 个字符,只能使用一次,并且绑定到确切的金额、工具和目标。任何时候最多可有 3 个未完成的确认码;连续 5 次输入无效确认码会撤销所有待处理的确认码。确认码默认有效期为 120 秒;设置 confirmation.ttlSeconds(或 LIGHTNING_ENABLE_CONFIRMATION_TTL_SECONDS)即可更改,范围限制在 30 至 900 秒。对于异步的 webhook 和 file 渠道,300–600 秒是较实用的设置。

选择渠道

优先级:环境变量,然后是配置文件,最后是自动选择。

{
  "confirmation": {
    "channel": "webhook",
    "webhookUrl": "https://ops.example.com/lightning-approvals",
    "webhookSecret": "<shared secret>",
    "filePath": "/var/log/lightning-enable/confirmations.jsonl",
    "ttlSeconds": 600
  }
}
环境变量覆盖项
LIGHTNING_ENABLE_CONFIRMATION_CHANNELconfirmation.channel(stderr | refuse | webhook | file)
LIGHTNING_ENABLE_CONFIRMATION_WEBHOOK_URLconfirmation.webhookUrl
LIGHTNING_ENABLE_CONFIRMATION_WEBHOOK_SECRETconfirmation.webhookSecret
LIGHTNING_ENABLE_CONFIRMATION_FILEconfirmation.filePath(默认值为 ~/.lightning-enable/confirmations.jsonl)
LIGHTNING_ENABLE_HOSTED设为 1,表示这是托管部署(见下文)

如果未设置渠道,服务会自行决定:

stdinLIGHTNING_ENABLE_HOSTED渠道启动警告
TTY任意值stderr无
非 TTY未设置或为 0stderr有——可能没人会读取
非 TTY1refuse有——超出限额的付款会被拒绝

stdio MCP 服务的 stdin 始终通过管道连接,因此这条警告只是提醒,并非诊断结论: 如果确实有人在查看控制台,可以忽略它。LIGHTNING_ENABLE_HOSTED=1 是明确启用安全模式的选项——服务不会自动改变行为。

如果服务无法解析渠道名称,会默认拒绝(refuse)并在启动时说明,因此拼写错误不会悄悄恢复到无人读取的代码。

Webhook 负载

发送 POST 请求,设置 Content-Type: application/json,并使用 {timestamp}.{body} 计算 HMAC-SHA256 签名,与 Lightning Enable API 为商家 Webhook 签名所用的机制相同:

X-LightningEnable-Signature: t=1757203200,v1=9f86d081...
{
  "type": "payment.confirmation_required",
  "nonce": "AB12CD",
  "tool": "pay_invoice",
  "amountSats": 50000,
  "amountUsd": 12.34,
  "destination": "lnbc500u1pj9npjpp5abcdefghijklmnopqr...",
  "description": "lnbc500u1pj9npjpp5...",
  "summary": "pay_invoice — $12.34 (50,000 sats), invoice lnbc500u1pj9npjpp5...",
  "createdAt": "2026-09-07T12:00:00Z",
  "expiresAt": "2026-09-07T12:02:00Z",
  "expiresInSeconds": 120
}

file 渠道会按原样写入此对象,每次确认占一行 JSON;在 POSIX 系统上还会将文件权限固定为 0600——该文件中保存着有效的批准码。

关于 Webhook,有两点需要注意:

  • URL 必须是公开的。它会经过与 Agent 提供的 URL 相同的连接时 SSRF 防护,因此私有地址、回环地址或元数据地址会在启动时被拒绝。
  • 永远不会跟随重定向。3xx 响应会被视为投递失败,因此签名批准只会发送到你配置的 URL。

批准码在 120 秒后过期,并且仅适用于获批时指定的金额、工具和目的地。

支持的钱包

钱包设置方式L402 支持
StrikeAPI 密钥是
LNDREST + macaroon是(保证支持)
NWC(CoinOS)连接字符串是
NWC(CLINK)连接字符串是
NWC(Alby Hub)连接字符串是
OpenNodeAPI 密钥否(无 preimage)

支出限额

限额保存在 ~/.lightning-enable/config.json 中,运行时为只读——Agent 可以收紧自己的限额,但不能提高限额。你可以用 USD、satoshi 或两者同时设置。

{
  "limits": {
    "maxPerPayment": 500.00,
    "maxPerSession": 100.00,
    "maxPerPaymentSats": 5000,
    "maxPerSessionSats": 50000,
    "autoApproveSats": 100
  }
}
键环境变量含义
maxPerPayment—单笔付款的 USD 上限
maxPerSession—单个会话的 USD 上限
maxPerPaymentSatsLIGHTNING_ENABLE_MAX_PER_PAYMENT_SATS单笔付款的 satoshi 上限
maxPerSessionSatsLIGHTNING_ENABLE_MAX_PER_SESSION_SATS单个会话的 satoshi 上限
autoApproveSatsLIGHTNING_ENABLE_AUTO_APPROVE_SATSBTC 价格不可用时,付款可在无需确认的情况下支出的 satoshi 数量

为何要设置 satoshi 限额。 USD 限额必须根据当前 BTC 价格进行换算,因此当所有价格来源都不可用时,系统无法检查付款并会拒绝付款——这是正确的做法,但会让 Agent 停止工作。satoshi 限额无需换算,因此按 satoshi 预算的 Agent 在价格服务中断期间仍可继续工作。设置 maxPer…Sats 两个键,即可消除所有缺口。

如果同时设置了两种计价单位,每次检查都会采用更严格的限额。budget(action="status") 会报告当前生效的限额单位(bindingDenomination)、以 sats 表示的有效限额、价格是否可用,以及是否启用了中断模式。

价格服务中断期间会发生什么

聪仍会限制支出上限。但上限的含义是 “绝不会超过这个数”,而不是 “无人值守时支付这么多没有问题”;而通常用来判断后一种情况的 USD 分级无法在没有价格数据时计算。因此,审批会默认拒绝:

  • 设置了 autoApproveSats — 金额不超过该值的付款会自动批准;超过该值的付款则进入正常确认流程(Agent 会要求用户提供打印在服务端控制台中的验证码)。
  • 未设置 autoApproveSats — 在价格来源恢复之前,每笔付款都需要确认。

autoApproveSats 是一个档位,而不是上限:它绝不会放宽 maxPerPaymentSats 或 maxPerSessionSats,这两个限额会优先检查。只要价格数据可用,它就会被完全忽略 — 此时仍按常规由 USD 档位决定。

自动付款路径(L402 自动付款、send_onchain、agent_services action=settle)遇到需要确认的付款时会直接拒绝,而不会提示用户确认。价格服务中断期间,这意味着只有在 autoApproveSats 的范围内才会继续处理。

工具

规范工具清单:17 个工具——14 个免费工具(开箱即用,只需一个钱包)+ 3 个需要 LIGHTNING_ENABLE_API_KEY 的工具(需要 Agentic Commerce 订阅)。此表是所有公开工具数量的唯一事实来源——两个端口中的工具清单守护测试会将其与代码绑定(一旦不一致,CI 就会失败)。

其中 5 个是操作工具:传入 action(或为 receipts 传入 source)以选择操作。它们取代了 16 个用途单一的工具;这些旧工具的架构以前会在每次会话中加载到 Agent 的上下文里——请参阅工具配置与旧工具名称。所有旧名称仍然有效。

ASA 可用性说明。 使用托管的 Lightning Enable API 时,agent_services 的 discover、request、settle、publish、unpublish 和 reputation 操作可用。attest 会被拒绝,因为托管 API 没有接受评价的路由,因此你无法通过它留下评价。请参阅Agent 服务协议。

工具访问权限功能
setup_wallet免费报告已配置的钱包,或粘贴 NWC 连接字符串来连接钱包
pay_invoice免费直接支付 BOLT11 Lightning 发票,并获取 preimage
pay_l402_challenge免费支付 L402 挑战(发票 + macaroon),并获取令牌
access_l402_resource免费获取 URL,并自动支付任何 L402 挑战
test_l402_payment免费使用公开的 1-sat L402 端点对钱包进行自检
discover_api免费搜索 L402 API 注册表/获取 API 清单
create_invoice免费创建 BOLT11 发票以接收付款
check_invoice_status免费检查已创建的发票是否已付款
get_balance免费钱包余额:聪、所有货币(Strike)和钱包信息
budget免费action:status(读取限额和会话支出)或 tighten(降低运行时上限)
receipts免费source:durable(仅追加的收据日志)或 session(本次会话的付款记录)
wallet_ops免费action:price、exchange 或 send_onchain(Strike;send_onchain 也支持 LND)。send_onchain 接受 address、amountSats、confirmationNonce 和可选的 intentId(只有在再次向同一地址支付相同金额时,才提供新的 ID;重复请求只会报告状态,不会重新发送)
verify_confirmation_code免费验证带外付款确认码(仅验证——绝不会付款)
create_lightning_enable_account免费自助注册:支付约 100 聪,获取商户 API 密钥
l402_producerAgentic Commerceaction:configure_receive、status、create_proxy、add_endpoint、publish、list_challenges、create、verify——涵盖卖方端的全部操作
agent_servicesAgentic Commerceaction:discover、request、settle、publish、unpublish、attest、reputation
renew_lightning_enable_subscriptionAgentic Commerce支付由服务端定价的 L402 发票,为已配置的 API 密钥购买或续订 30 天的 Agentic Commerce(maxSats 默认值为 50,000)

create_lightning_enable_account 免费,并可自助开通 3 个受限工具所需的 API 密钥——拥有钱包的 Agent 支付约 100 聪的激活费用后,即可立即解锁这些工具。

每个工具都带有 MCP 注解:易于理解的标题和明确的 readOnlyHint;任何可能花费钱包资金的工具还带有 destructiveHint。操作工具的注解根据其范围最广的操作设置,因此 budget 不是只读工具(因为 tighten 会写入数据),而 wallet_ops 具有破坏性(因为 send_onchain 会发送付款)。

资源

持久化收据日志也会作为 MCP 资源公开,因此客户端可以附加或显示它,而无需模型花一轮调用工具:

URI内容
lightning-enable://receipts最近 200 条收据,格式为 JSONL(application/x-ndjson),按时间从早到晚排列
lightning-enable://receipts/{paymentHash}为一个支付哈希记录的所有收据

两者都通过与 receipts 工具相同的路径读取,并在读取边界处对凭据形式的字段进行脱敏——原像永远不会离开进程。支付哈希是安全的引用;原像是支付凭证,不属于收据字段。资源不受工具配置影响:它们不会占用模型上下文中的架构字节。

工具配置与旧工具名称

每次会话开始时,所有已公开工具的 JSON 架构都会加载到 Agent 的上下文中,因此每轮对话都会为工具接口付出 Token 成本。使用 LIGHTNING_ENABLE_TOOL_PROFILE 选择要公开多少工具:

配置工具适用场景
lite6 个 — setup_wallet、pay_invoice、access_l402_resource、get_balance、budget、receiptsAgent 只需获取钱包、消费并遵守预算
standard (默认)17 个 — 上表中的工具满足所有需求,架构比旧接口减少约 40%
full33 个 — standard 加上所有合并前的名称你有使用旧工具名称编写的提示词或脚本
{
  "mcpServers": {
    "lightning-enable": {
      "command": "uvx",
      "args": ["lightning-enable-mcp"],
      "env": {
        "STRIKE_API_KEY": "your-strike-api-key",
        "LIGHTNING_ENABLE_TOOL_PROFILE": "lite"
      }
    }
  }
}

配置仅影响列表。 配置未公开的工具仍可按名称调用,且所有旧名称在任何配置下仍会分发。缩小配置会减少推送到模型上下文中的架构;它不会移除任何功能。

旧名称 → 新调用

旧名称仍可使用,但不会公开(full 除外)。每个旧名称都会转发到新工具,且其结果会带有指明替代工具的 deprecated 标记。将在 v3.0.0 中移除——请迁移到新名称。

旧工具新调用
get_budget_statusbudget(action="status")
configure_budgetbudget(action="tighten")
get_receiptsreceipts(source="durable")
get_payment_historyreceipts(source="session")
get_btc_pricewallet_ops(action="price")
exchange_currencywallet_ops(action="exchange")
send_onchainwallet_ops(action="send_onchain")
create_l402_challengel402_producer(action="create")
verify_l402_paymentl402_producer(action="verify")
discover_agent_servicesagent_services(action="discover")
request_agent_serviceagent_services(action="request")
settle_agent_serviceagent_services(action="settle")
publish_agent_capabilityagent_services(action="publish")
unpublish_agent_capabilityagent_services(action="unpublish")
publish_agent_attestationagent_services(action="attest")
get_agent_reputationagent_services(action="reputation")
confirm_paymentverify_confirmation_code
check_wallet_balanceget_balance
get_all_balancesget_balance

最后三个名称早于此次合并,在所有配置中都会隐藏,包括 full。

文档

仓库结构

lightning-enable-mcp/
├── dotnet/
│   ├── src/LightningEnable.Mcp/         # .NET MCP server
│   ├── tests/LightningEnable.Mcp.Tests/  # .NET tests
│   └── LightningEnable.Mcp.sln          # Solution file
├── python/
│   └── lightning-enable-mcp/             # Python MCP server
├── .github/workflows/publish-mcp.yml     # CI/CD
├── LICENSE                               # MIT
└── README.md                             # This file

使用 L402 销售(l402_producer 工具)

卖家端的所有功能都集成在一个工具中。传入 action 来选择操作。每项操作 都需要 LIGHTNING_ENABLE_API_KEY(Agentic Commerce 订阅); 所有操作都不会花费你钱包中的资金。

API 版本。 create、verify、create_proxy、add_endpoint 和 publish 适用于 所有 Lightning Enable API 构建版本。configure_receive 需要 NWC 收款通道, list_challenges 需要挑战列表路由,这两项功能都随此版本所面向的 API 版本一同发布。请先运行 l402_producer(action="status")——它会优雅降级,并告知你所连接的部署支持哪些功能。

操作参数功能
configure_receivenwc_connection_string (可选)将 L402 收款指向你控制的钱包
statuslimit套餐、收款钱包、入门清单、近期铸造记录 (只读)
create_proxyname、target_base_url、description、default_price_sats将现有 API 接入 L402
add_endpointproxy_id、endpoint_id、path、http_method、summary、price_sats为单个路由定价
publishproxy_id、service_name、service_description、categories列出服务,方便其他 Agent 查找
list_challengeschallenge_status、limit、offset查看已铸造的内容 (只读)
createresource、price_sats、description铸造一次性发票和 macaroon 挑战
verifymacaroon、preimage在授予访问权限前检查付款方的令牌
从 API 密钥到付费端点

无需控制面板、REST 客户端,也无需人工参与。每一步只需调用一次工具:

  1. 获取 API 密钥。 create_lightning_enable_account——从你的钱包支付约 100 sat 的激活费, 并将密钥写入 ~/.lightning-enable/config.json。重启服务以解锁受限工具。 (如果你已有密钥,可跳过此步。)
  2. 将收款指向自己的钱包。 l402_producer(action="configure_receive")——不传参数时会复用此服务已用于付款的 NWC 钱包; 传入 nwc_connection_string 可使用其他钱包。该字符串绝不会回显,只会显示 <set>。
  3. 查看当前状态。 l402_producer(action="status")——查看套餐、收款钱包和 入门清单,让 Agent 了解还缺少哪些内容。
  4. 将 API 接入 L402。 l402_producer(action="create_proxy", name="Weather API", target_base_url="https://api.example.com", default_price_sats=25) ——返回 proxy_id 和公开基础 URL。此后,该 URL 下的所有请求都会返回 402, 直到完成付款。
  5. 为各个路由定价。 l402_producer(action="add_endpoint", proxy_id="weather-api", endpoint_id="forecast", path="/forecast", http_method="GET", price_sats=10) ——对每个路由重复此操作。
  6. 列出服务。 l402_producer(action="publish", proxy_id="weather-api", service_description="Five-day forecasts for agents", categories=["weather"]) ——返回 OpenAPI 和 manifest 的 URL。其他 Agent 可通过 discover_api 找到它。
  7. 查看收款情况。 l402_producer(action="list_challenges", challenge_status="paid")——查看付款哈希、 资源、金额和状态。绝不返回 macaroon,也不返回 preimage。

对于不通过代理提供的资源——例如文件、报告或一次性答复——跳过第 4–6 步, 直接使用 create / verify。

收款会结算到你自己的钱包。Lightning Enable 不会托管资金。

Agent 服务协议(agent_services 工具)

通过一个工具,在 Nostr 上实现 Agent 间商务。传入 action 来选择操作。 agent_services 需要 LIGHTNING_ENABLE_API_KEY(Agentic Commerce 订阅);action="settle" 还会从你的钱包余额中扣款,且受预算限制。

托管的 Lightning Enable API 会拒绝 attest,因为它没有接受证明的路由,因此你无法通过它提交评价;discover、request、settle、publish、unpublish 和 reputation 均可使用。

操作描述
discover按类别、主题标签或关键词搜索 Agent 能力
publish将你的 Agent 服务发布到 Nostr 网络(kind 38400)。发布一次:每次调用都会创建新的列表和 L402 代理。若要更改列表,请先执行 unpublish,再执行 publish;也可以在 Lightning Enable 控制面板中编辑
unpublish下架已发布的列表:停用 L402 代理并发出 NIP-09 移除事件
request请求其他 Agent 提供服务(kind 38401)
settle通过 L402 Lightning 结算支付 Agent 服务费用
attest服务完成后为 Agent 留下评价/评分(kind 38403)
reputation根据协议内的证明查看 Agent 的声誉评分
Agent 商务如何运作
  1. 发现 — agent_services(action="discover", category="translation") 会查找提供翻译服务的 Agent
  2. 请求 — agent_services(action="request", capability_event_id=..., budget_sats=100) 会发送服务请求
  3. 结算 — agent_services(action="settle", l402_endpoint=...) 会通过 Lightning 付款并接收结果
  4. 评价 — agent_services(action="attest", subject_pubkey=..., agreement_id=..., rating=5) 会建立协议内声誉(托管 API 会拒绝此操作)

对于动态定价,服务提供方使用 l402_producer(action="create") 按约定价格生成发票。请求方付款后,服务提供方使用 l402_producer(action="verify") 进行验证。

七个旧工具名称(discover_agent_services、settle_agent_service、…)仍然有效 — 请参阅旧名称 → 新调用。

相关项目

隐私

Lightning Enable 不持有资金 — 资金由已连接的钱包或支付服务提供方(Strike、OpenNode、LND 或 NWC 钱包)持有。MCP 服务在本地运行,并与您配置的钱包/服务提供方通信;对于 L402 发现,还会与 L402 API 注册表通信。您提供的钱包凭据会保留在您的设备上(对于托管 API,则会以静态加密方式保存)。关于收集的数据、涉及的第三方、数据保留期限和联系方式([email protected]),请参阅完整的隐私政策。

支持

如果遇到故障或无法正常使用,请发送邮件至 [email protected] — 会有真人阅读。一般问题请加入 Discord:https://discord.gg/rX7NxHY8vx。 错误报告和功能请求:请在此仓库中提交 issue。

许可证

MIT — 请参阅 LICENSE。

链接

评论

支持 Markdown

第一次接触 MCP?

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

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