refined-element/lightning-enable-mcp

πŸ’° Finance & Fintech
0 Views
0 Installs

🐍 ☁️ 🏠 - Add Bitcoin Lightning payments to MCP-enabled AI agents. Pay invoices, create invoices, check balances, and access L402 paywalled APIs. Supports Strike, OpenNode, NWC wallets.

Quick Install

One-Click IDE Configuration
claude_desktop_config.json
{
  "mcpServers": {
    "refined-element-lightning-enable-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "refined-element-lightning-enable-mcp"
      ]
    }
  }
}
Or

Using an AI coding agent (Claude Code, Cursor, etc.)? Copy a ready-made prompt that tells it to fetch the setup instructions and install this server for you.

Documentation Overview

Part of Lightning Enable β€” infrastructure for agent commerce over Lightning.

Lightning Enable MCP Server

Discord

An open-source MCP (Model Context Protocol) server that enables AI agents to make Lightning Network payments and participate in agent-to-agent commerce. Wallet, invoice, L402, budget, and API-discovery tools work out of the box with just a wallet. Producer tools (sell access via L402) and Agent Service Agreement (ASA) tools (agent-to-agent discovery, request, settlement, and attestation over Nostr) unlock with an Agentic Commerce subscription. See the full tool list.

Available in .NET and Python.

What It Does

Give your AI agent a Lightning wallet and it can:

  • Pay invoices β€” Send Bitcoin via Lightning to any BOLT11 invoice
  • Access L402 APIs β€” Automatically pay L402 challenges for seamless API access
  • Discover APIs β€” Search the L402 API registry to find paid APIs by keyword or category, or fetch a specific API's manifest for full endpoint details and pricing
  • Track spending β€” Budget limits, payment history, and balance checks
  • Create invoices β€” Generate invoices to receive payments
  • Get BTC price β€” Real-time Bitcoin price from Strike
  • Exchange currency β€” Convert between USD/BTC/EUR and more (Strike wallet)
  • Send on-chain β€” Send Bitcoin on-chain (Strike/LND)
  • Self-bootstrap a Lightning Enable account β€” create_lightning_enable_account pays a ~100-sat activation fee over L402 and returns a merchant API key: the freeβ†’paid signup form that is the protocol, unlocking the producer + ASA tools with no browser or checkout page.
  • Sell services (L402 Producer) β€” Create L402 payment challenges and verify payments, enabling agents to be full commerce participants that both buy and sell
  • Agent commerce (ASA) β€” Discover, request, settle, and review agent-to-agent services on Nostr

Quick Start

1. Install

# .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. Configure one L402-capable wallet

L402 β€” the whole point of this server β€” needs a wallet that returns the payment preimage. Set exactly one of these (as an env var, e.g. in the Claude Desktop config below):

  • Strike (easiest to start) β€” STRIKE_API_KEY, from https://dashboard.strike.me
  • NWC (self-custody, Nostr) β€” NWC_CONNECTION_STRING, from CoinOS / CLINK / Alby Hub
  • LND (your own node β€” always returns a preimage) β€” LND_REST_HOST + LND_MACAROON_HEX

⚠️ OpenNode (OPENNODE_API_KEY) works for invoicing / direct payments only β€” it never returns a preimage, so it cannot pay L402 challenges. Don't make it your only wallet if you want L402 (the core use case).

If several are set, priority is: LND > NWC > Strike > OpenNode. See Supported Wallets for the full compatibility matrix.

3. Prove the whole loop works β€” test_l402_payment

Ask your agent:

Run test_l402_payment

This pays a public 1-sat L402 endpoint end to end, proving your wallet is connected, returns a preimage, and can complete a real L402 payment. It's the one-line answer to "is my wallet actually working?" β€” and it costs about 1 satoshi.

4. Then have some fun β€” buy a t-shirt

Once the loop works, try the Lightning Enable Store, a live L402-powered web store. Ask Claude:

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

(This one needs a funded wallet and a shipping address, which is why test_l402_payment β€” one sat, no shipping β€” is the faster first proof.)

Claude Desktop Config

Add to your claude_desktop_config.json:

.NET:

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

Python:

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

Config file locations:

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

Supported Wallets

WalletSetupL402 Support
StrikeAPI keyYes
LNDREST + macaroonYes (guaranteed)
NWC (CoinOS)Connection stringYes
NWC (CLINK)Connection stringYes
NWC (Alby Hub)Connection stringYes
OpenNodeAPI keyNo (no preimage)

Tools

Canonical inventory: 26 tools β€” 17 free (out of the box, just a wallet) + 9 that require LIGHTNING_ENABLE_API_KEY (an Agentic Commerce subscription; 2 L402 Producer + 7 Agent Service Agreement). This table is the single source of truth every advertised count derives from β€” it is pinned to the code by the tool-inventory guard tests in both ports (drift fails CI).

ASA availability note. The L402/producer tools, discover_agent_services, settle_agent_service, and unpublish_agent_capability work against the hosted API today. The agent-to-agent coordination tools β€” publish_agent_capability, request_agent_service, publish_agent_attestation, get_agent_reputation β€” use the agent capability backend, which is not yet enabled on the hosted Lightning Enable API (calls there currently return an error) and are in preview. Marketplace listings are published today via the Lightning Enable dashboard / L402 proxy pipeline.

Deprecated aliases (accepted but unadvertised, forward to the new tool, removed in v2.0.0): confirm_payment β†’ verify_confirmation_code; check_wallet_balance, get_all_balances β†’ get_balance.

ToolAccessWhat it does
pay_invoiceFreePay a BOLT11 Lightning invoice directly, get the preimage
pay_l402_challengeFreePay an L402 challenge (invoice + macaroon), get the token
access_l402_resourceFreeFetch a URL, auto-paying any L402 challenge
test_l402_paymentFreeSelf-test the wallet against a public 1-sat L402 endpoint
discover_apiFreeSearch the L402 API registry / fetch an API manifest
create_invoiceFreeCreate a BOLT11 invoice to receive payment
check_invoice_statusFreeCheck whether a created invoice was paid
get_balanceFreeWallet balance: sats, all currencies (Strike), and wallet info
exchange_currencyFreeConvert between USD and BTC (Strike)
send_onchainFreeSend an on-chain Bitcoin payment (Strike, LND)
get_btc_priceFreeCurrent Bitcoin price in USD
get_payment_historyFreeList payments made this session (in-memory)
get_receiptsFreeRead the durable, append-only receipt log
get_budget_statusFreeView budget config and session spend (read-only)
configure_budgetFreeTighten runtime spending caps (tighten-only)
verify_confirmation_codeFreeVerify an out-of-band payment confirmation code (verification only β€” never pays)
create_lightning_enable_accountFreeSelf-bootstrap signup: pay ~100 sats, get a merchant API key
create_l402_challengeAgentic CommerceL402 Producer: create a challenge to charge for a resource
verify_l402_paymentAgentic CommerceL402 Producer: verify an L402 token (macaroon + preimage)
discover_agent_servicesAgentic CommerceASA: search for agent capabilities on Nostr
publish_agent_capabilityAgentic CommerceASA: publish your agent's services (kind 38400)
unpublish_agent_capabilityAgentic CommerceASA: take a listing down β€” retire the proxy + NIP-09 removal
request_agent_serviceAgentic CommerceASA: request a service from another agent (kind 38401)
settle_agent_serviceAgentic CommerceASA: pay for an agent service via L402 settlement
publish_agent_attestationAgentic CommerceASA: leave a review/rating for an agent (kind 38403)
get_agent_reputationAgentic CommerceASA: check an agent's reputation from attestations

create_lightning_enable_account is free and self-provisions the API key the 8 gated tools need β€” an agent with a wallet pays a ~100-sat activation fee and unlocks them on the spot.

Documentation

Repository Structure

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

Agent Service Agreement (ASA) Tools

These tools enable agent-to-agent commerce on Nostr:

All seven ASA tools require LIGHTNING_ENABLE_API_KEY (an Agentic Commerce subscription); settle_agent_service additionally spends your wallet balance, subject to budget limits. For the authoritative access level of every tool, see the canonical Tools table above β€” it is the single source of truth pinned to the code by the drift guard.

ToolDescription
discover_agent_servicesSearch for agent capabilities by category, hashtag, or keyword
publish_agent_capabilityPublish your agent's services to the Nostr network (kind 38400)
unpublish_agent_capabilityTake a published listing down: retire the L402 proxy and emit a NIP-09 removal
request_agent_serviceRequest a service from another agent (kind 38401)
settle_agent_servicePay for an agent service via L402 Lightning settlement
publish_agent_attestationLeave a review/rating for an agent after service completion (kind 38403)
get_agent_reputationCheck an agent's reputation score from on-protocol attestations

How Agent Commerce Works

  1. Discover β€” discover_agent_services(category="translation") finds agents offering translation
  2. Request β€” request_agent_service(capability_id, budget_sats=100) sends a service request
  3. Settle β€” settle_agent_service(l402_endpoint) pays via Lightning and receives the result
  4. Review β€” publish_agent_attestation(pubkey, agreement_id, rating=5) builds on-protocol reputation

For dynamic pricing, providers use create_l402_challenge to generate invoices at the agreed price. Requesters pay and providers verify with verify_l402_payment.

Related Projects

Privacy

Lightning Enable does not hold funds β€” the connected wallet or payment provider (Strike, OpenNode, LND, or an NWC wallet) does. The MCP server runs locally and talks to the wallet/provider you configure and, for L402 discovery, the L402 API registry. Wallet credentials you supply stay on your machine (or, for the hosted API, are encrypted at rest). See the full Privacy Policy for what data is collected, third parties involved, retention, and contact (privacy@lightningenable.com).

License

MIT β€” see LICENSE.

Links

Related MCP Servers

@agentfund/mcp

πŸ“‡ ☁️ - Fundraising infrastructure for AI agents on Solana β€” campaigns, x402 donations, and on-chain reputation. MCP tools for registering agents, creating campaigns, and donating via the x402 pay-to-call flow, backed by Anchor programs (agentregistry, escrow, reputation). npx -y @agentfund/mcp

πŸ’° Finance & Fintech1 views
@asterpay/mcp-server

πŸ“‡ ☁️ - EUR settlement for AI agents via x402 protocol. Market data, AI tools, crypto analytics β€” pay-per-call in USDC on Base. SEPA Instant EUR off-ramp.

πŸ’° Finance & Fintech1 views
@czagents/cnb

πŸ“‡ ☁️ 🏠 🍎 πŸͺŸ 🐧 - Czech National Bank (ČNB) daily FX rates: fetch official CZK exchange rates, convert between currencies, fetch historical rates. Cached 10 min to ease upstream load. npm @czagents/cnb or HTTP at cnb.cz-agents.dev/mcp.

πŸ’° Finance & Fintech1 views
@arbitova/mcp-server

πŸ“‡ ☁️ - Non-custodial on-chain escrow + AI dispute arbitration for agent-to-agent USDC payments on Base. Seven tools covering the full EscrowV1 contract surface: create escrow, mark delivered with on-chain content hash, confirm or dispute, arbiter resolves with signed verdict, cancel/escalate on timeout. npx @arbitova/mcp-server

πŸ’° Finance & Fintech0 views

Engagement

Views
0
Installs
0
Upvotes
0

Views and upvotes are unique per visitor network (hashed IP). Installs count copy actions.

Status

Health: Not checked yet

We have not completed a health check for this listing yet.

No check timestamp yet.

Unclaimed listing (imported or pending owner verification). Claim it β†’
β˜… Spotlight Slot

Feature Your MCP Server

Get maximum visibility for your server across our directory, search results, and detail pages.

Spotlight Your Server

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to get the verified badge and attach your website.

Claim this listing

Promote this listing

Optional paid placement. Free listings stay free forever.

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.