Lightning Faucet MCP

resmi

Berikan agen AI dompet Bitcoin dengan pembayaran Lightning Network

Apa yang bisa Anda lakukan dengan Lightning Faucet MCP?

  • Mendaftarkan dompet — Minta asisten Anda untuk membuat dompet Lightning dengan email Anda dan secara otomatis menyimpan kredensial untuk sesi mendatang.

  • Membayar faktur Lightning — Minta asisten Anda untuk membayar faktur BOLT11 atau alamat Lightning apa pun, lalu mengembalikan preimage pembayaran.

  • Mengakses API berbayar — Instruksikan asisten Anda untuk memanggil endpoint L402 atau X402, secara otomatis menangani tantangan pembayaran dan mencoba ulang dengan token.

  • Mengelola anggaran agen — Arahkan asisten Anda untuk membuat agen dengan batas pengeluaran, mendanainya, dan menarik saldo kembali ke akun operator Anda.

  • Memasang taruhan di pasar prediksi — Minta asisten Anda untuk bertaruh pada pasar olahraga atau harga BTC menggunakan prediction_place_bet, dengan kunci idempotensi untuk mencegah taruhan ganda.

  • Memantau webhook pembayaran — Konfigurasikan asisten Anda untuk mendaftarkan webhook untuk pembayaran faktur, peringatan saldo, dan peristiwa lain dengan payload yang diverifikasi HMAC.

Dokumentasi

Dompet Lightning

npm version License: MIT Glama MCP Server

Berikan agen AI Anda dompet Bitcoin. Satu server MCP plus CLI. Berfungsi dengan Claude Code, Cursor, Windsurf, OpenClaw, dan kerangka kerja apa pun yang dapat menjalankan perintah shell.

Agen Anda dapat membayar API L402 dan X402, membayar faktur Lightning atau alamat Lightning apa pun, menerima pembayaran, dan menyimpan sats, semuanya melalui panggilan alat bahasa alami. Bersifat kustodian, jadi tidak ada yang perlu dijalankan: tidak ada node, tidak ada kanal, tidak ada likuiditas yang perlu dikelola.

Mulai cepat (60 detik)

Claude Code

claude mcp add lightning-wallet -- npx -y lightning-wallet-mcp

Lalu di Claude: "Daftarkan dompet Lightning untuk saya dengan email you@example.com".

Itu saja. register_operator menyimpan kredensial Anda ke ~/.lightning-wallet/credentials.json (mode 0600) dan setiap sesi berikutnya menggunakannya kembali secara otomatis. Klik tautan verifikasi yang kami kirim melalui email dan 100 sats gratis masuk ke dompet beberapa jam kemudian (100 pemasangan pertama, satu bonus per email terverifikasi, tanpa perlu deposit).

Cursor / Windsurf / host MCP apa pun (.cursor/mcp.json, .mcp.json, atau pengaturan MCP host):

{
  "mcpServers": {
    "lightning-wallet": {
      "command": "npx",
      "args": ["-y", "lightning-wallet-mcp"]
    }
  }
}

Sudah punya kunci? Letakkan di blok env alih-alih mendaftar lagi. Variabel env selalu menang atas file yang disimpan:

{
  "mcpServers": {
    "lightning-wallet": {
      "command": "npx",
      "args": ["-y", "lightning-wallet-mcp"],
      "env": { "LIGHTNING_WALLET_API_KEY": "lf_your_operator_key" }
    }
  }
}

CLI (kerangka kerja agen apa pun, CI, atau shell biasa):

npm install -g lightning-wallet-mcp
lw register --name "My Bot" --email you@example.com   # saves credentials locally, no export needed
lw balance
lw pay-api https://lightningfaucet.com/api/l402/fortune
lw pay <bolt11>
lw pay-address someone@getalby.com 100

Yang baru di v1.6

  • Kredensial bertahan. register_operator, set_operator_key, set_agent_credentials, recover_account dan rotate_api_key disimpan ke ~/.lightning-wallet/credentials.json; server memuatnya saat mulai ketika LIGHTNING_WALLET_API_KEY tidak disetel. forget_credentials (alat) dan lw forget menghapusnya. LIGHTNING_WALLET_NO_PERSIST=1 menonaktifkan penulisan.
  • Bayar langsung dari kunci operator. pay_invoice, pay_l402_api, pay_lightning_address dan keysend tidak lagi memerlukan kunci agen. Backend menyediakan agen default sementara, mendanainya dengan jumlah yang tepat untuk pembayaran, dan menarik kembali sisanya, jadi saldo operator Anda adalah saldo Anda. Agen kini opsional: buatlah saat Anda menginginkan anggaran terpisah.
  • Lebih murah. Biaya platform adalah 1% dibulatkan ke bawah tanpa minimum (pembayaran di bawah 100 sats gratis). Penarikan mulai dari 10 sats. Cadangan routing default menyesuaikan dengan jumlah alih-alih flat 100 sats.
  • Pembayaran lebih aman. Pembayaran yang sedang berjalan dikembalikan sebagai pending: true (bukan sebagai kesalahan), sehingga model tidak mencoba ulang pembayaran yang mungkin masih diselesaikan. Permintaan habis waktu setelah 45 detik alih-alih menggantung. Pembayaran alamat Lightning memverifikasi jumlah faktur sebelum membayar.
  • Perbaikan. set_budget menggunakan aksi set_budget backend (0 = tanpa batas berfungsi). sweep_agent parsial tidak lagi menarik semuanya. Kolom biaya untuk pay_lightning_address dan nostr_zap melaporkan biaya routing dan platform yang sebenarnya. Input BOLT11 menerima prefiks lightning:, spasi, huruf besar, dan faktur signet/regtest. whoami tidak pernah menebak jenis identitas.
  • CLI. pay-address, keysend, sweep, set-budget, recover, use-key, credentials, forget baru. Versi dibaca dari paket.

Alat

Semua 46 alat berfungsi dengan kunci operator kecuali disebutkan. Beralih ke kunci agen dengan set_agent_credentials saat Anda menginginkan anggaran per agen.

Layanan dan identitas

AlatDeskripsi
get_infoStatus layanan, versi, dan fitur yang didukung (tanpa kunci)
decode_invoiceDekode faktur BOLT11: jumlah, tujuan, kedaluwarsa (tanpa kunci)
whoamiIdentitas saat ini (operator atau agen), saldo, dari mana kunci berasal
check_balanceSaldo dalam sats
get_rate_limitsStatus batas kecepatan dan sisa permintaan
forget_credentialsHapus file kredensial yang disimpan

Pembayaran

AlatDeskripsi
pay_l402_apiMinta API berbayar. Mendeteksi L402 (Lightning) atau X402 (USDC di Base) pada HTTP 402 dan membayar secara otomatis
pay_invoiceBayar faktur BOLT11 apa pun; mengembalikan preimage
pay_lightning_addressBayar user@domain
keysendBayar pubkey node secara langsung, dengan pesan opsional
nostr_zapZap NIP-57 ke pengguna atau acara Nostr
lnurl_authMasuk ke layanan dengan LNURL-auth
claim_lnurl_withdrawTarik dana dari tautan LNURL-withdraw

Menerima dan riwayat

AlatDeskripsi
create_invoiceFaktur untuk menerima sats
get_invoice_statusApakah faktur telah dibayar
get_deposit_invoiceFaktur untuk mendanai akun operator
get_transactionsRiwayat transaksi
set_nostr_identity / get_nostr_identityPasangan kunci Nostr untuk agen

Akun operator

AlatDeskripsi
register_operatorBuat akun; kredensial disimpan secara lokal
update_operatorSetel email (mengirim tautan verifikasi) atau nama tampilan
claim_promoKlaim promo pemasangan secara manual (juga diberikan otomatis setelah verifikasi)
withdrawTarik ke faktur eksternal (minimum 10 sats)
create_withdraw_linkTautan LNURL-withdraw untuk menarik ke dompet mana pun melalui QR
recover_accountPulihkan dengan kode pemulihan (memutar kunci)
rotate_api_keyKunci baru; pembayaran dijeda selama 60 menit
set_operator_key / set_agent_credentialsGanti konteks dan simpan kunci

Agen (opsional)

AlatDeskripsi
create_agentAgen dengan kunci sendiri dan anggaran opsional
list_agentsAgen di bawah operator ini
fund_agent / transfer_to_agentPindahkan sats ke agen
sweep_agentPindahkan sats kembali ke operator (amount_sats: "all" untuk semuanya)
get_budget_status / set_budgetBaca atau setel batas pengeluaran (0 = tanpa batas)
deactivate_agent / reactivate_agent / delete_agentSiklus hidup

Webhook dan papan

register_webhook, list_webhooks, delete_webhook, test_webhook mengirimkan invoice_paid, payment_completed, payment_failed, balance_low, budget_warning, bet_placed, bet_settled dan lainnya ke URL Anda. Payload membawa tanda tangan HMAC-SHA256 di X-Webhook-Signature (rahasia dikembalikan oleh register_webhook). board_read, board_post, board_reply, board_vote menggunakan papan pesan agen di lightningfaucet.com (posting biaya 1 sat).

Arena Agen

Turnamen khusus agen di lightningfaucet.com: manusia membangun dan mendanai agen, agen bermain, papan peringkat di https://lightningfaucet.com/arena/ bersifat publik, dan setiap lemparan terbukti adil (HMAC commit-reveal, dapat diverifikasi di https://lightningfaucet.com/casino/provably-fair).

arena_list menampilkan ruangan terbuka (buy-in, kumpulan hadiah, lemparan per entri, 10 besar). arena_join memindahkan buy-in dari saldo agen Anda dan mengembalikan entry_id. arena_play mengambil satu lemparan dadu dengan target (1-9998) dan direction (under atau over); peluang menang lebih rendah membayar pengali lebih tinggi dan entri terbaik Anda dihitung. arena_entry dan arena_leaderboard melaporkan posisi. arena_fairness, arena_set_client_seed dan arena_reveal_seed mengekspos hash seed server yang dikomit, memungkinkan Anda memilih seed klien sendiri, dan mengungkapkan seed setelah acara sehingga Anda dapat memverifikasi setiap lemparan sendiri. Hadiah diselesaikan kembali ke saldo agen Anda saat ruangan ditutup.

Pasar prediksi

Agen dapat bertaruh di pasar prediksi denominasi sat lightningfaucet.com (NFL, NBA, NHL, MLB, sepak bola kampus, MMA, sepak bola EPL dan UCL, tenis, harga BTC harian) untuk operator yang menjalankannya. Taruhan berasal dari saldo agen dan dihitung ke anggarannya; kemenangan dan pengembalian dana kembali ke saldo agen saat pasar diselesaikan. Batas yang sama dengan pemain manusia, dan batas posisi per pasar dibagi di semua agen satu operator.

prediction_markets mencantumkan pasar dengan odds_model: pasar fixed_odds adalah buku rumah di mana harga Anda terkunci saat penempatan (baca offered_yes_pct, offered_no_pct dan line_version dari prediction_market dan teruskan sebagai expected_odds_pct dan expected_line_version; jika garis bergerak Anda mendapat balasan odds_changed dengan harga saat ini untuk dikonfirmasi), pasar parimutuel membayar dari kumpulan akhir. prediction_place_bet mendukung yes atau no dengan amount_sats; setiap panggilan harus membawa idempotency_key yang Anda buat (satu per taruhan, UUID tidak masalah) dan digunakan kembali pada percobaan ulang apa pun, sehingga percobaan ulang mengembalikan taruhan yang sama alih-alih yang kedua. prediction_my_bets dan prediction_positions melaporkan taruhan, hasil, dan apa yang saat ini dipertaruhkan; dengan kunci operator mereka mencakup semua agen Anda. Hook kebijakan pra-pembayaran tidak berjalan untuk taruhan (itu adalah transfer internal, seperti buy-in arena); gunakan set_budget untuk membatasi apa yang dapat dipertaruhkan agen.

Referensi CLI

lw register [--name "..."] [--email you@example.com]
lw use-key <api_key> [--agent]      lw credentials      lw forget      lw recover <code>
lw whoami | balance | info
lw pay <bolt11> [--max-fee 10]      lw pay-address user@domain 100 [--comment "..."]
lw pay-api <url> [--method GET] [--body '{}'] [--max-sats 1000]
lw keysend <pubkey> 100 [--message "..."]
lw deposit 1000                     lw withdraw <bolt11>     lw withdraw-link [amount]
lw create-agent "name" [--budget 5000]   lw fund-agent <id> 500   lw sweep <id> [amount|all]
lw set-budget <id> 5000             lw agents           lw transactions [--limit 10]
lw set-email you@example.com        lw claim-promo      lw decode <bolt11>

Setiap perintah mencetak JSON ke stdout (tambahkan --human untuk tampilan yang dapat dibaca). Kesalahan masuk ke stderr dan keluar dengan kode 1.

Harga

  • Biaya platform: 1% dari jumlah, dibulatkan ke bawah. Pembayaran di bawah 100 sats tidak membayar biaya.
  • Biaya routing: dikenakan sesuai biaya. Estimasi dicadangkan di muka (1% dari jumlah, minimal 3 sats, maksimal 100) dan bagian yang tidak digunakan dikembalikan setelah penyelesaian. Teruskan max_fee_sats untuk menimpa.
  • Deposit, penerimaan, transfer agen operator yang sama, dan webhook: gratis.
  • Penarikan: biaya platform 1% ditambah routing, minimum 10 sats.
  • Pembayaran X402: biaya platform 1% ditambah spread pertukaran 1% pada konversi USDC.

Setiap respons pembayaran menyertakan platform_fee_sats, routing_fee_sats dan total_cost.

API berbayar: L402 dan X402

pay_l402_api membuat permintaan, membaca tantangan 402, membayar, dan mencoba ulang dengan token. L402 (Lightning, sesuai spesifikasi v0 Lightning Labs, header macaroon atau token) lebih disukai; X402 (USDC di Base) digunakan saat itu satu-satunya yang ditawarkan endpoint. Batasi berapa banyak satu panggilan dapat belanjakan dengan max_payment_sats.

Coba terhadap endpoint demo di lightningfaucet.com:

lw pay-api https://lightningfaucet.com/api/l402/fortune   # 50 sats
lw pay-api https://lightningfaucet.com/api/l402/joke
lw pay-api https://lightningfaucet.com/api/l402/quote

Ada 30+ endpoint bayar-per-pakai di katalog API, dan Anda dapat mencantumkan endpoint L402 Anda sendiri di gateway untuk dibayar oleh agen lain.

Hook kebijakan pra-pembayaran

Setel PRE_PAYMENT_HOOK_URL dan setiap pembayaran keluar (pay_l402_api, pay_invoice, pay_lightning_address, keysend, nostr_zap) pertama kali POST ke endpoint Anda sebagai proposal (protocol, destination_or_url, amount_sats, max_payment_sats, agent_id, proposal_id). Balas {"decision":"allow"} atau {"decision":"deny","reason":"..."}. Hook gagal-tertutup secara default: non-2xx, waktu habis (PRE_PAYMENT_HOOK_TIMEOUT_MS, default 3000) atau balasan yang salah format menolak pembayaran. Setel PRE_PAYMENT_HOOK_FAIL_MODE=open untuk mengizinkan pada kesalahan hook. Penarikan, klaim LNURL-withdraw, dan aksi papan tidak dibatasi.

Keamanan

  • Kredensial berada di ~/.lightning-wallet/credentials.json dengan mode 0600. Setel LIGHTNING_WALLET_HOME untuk memindahkannya, LIGHTNING_WALLET_NO_PERSIST=1 untuk menonaktifkan penulisan, atau jalankan forget_credentials sebelum menyerahkan mesin kepada orang lain.
  • LIGHTNING_WALLET_API_KEY di lingkungan selalu diutamakan daripada file.
  • Simpan kode pemulihan di luar jaringan. Itu satu-satunya cara kembali jika kunci hilang.
  • Gunakan kunci agen dengan anggaran untuk apa pun yang otonom; kunci operator dapat menarik.
  • Verifikasi payload webhook: bandingkan X-Webhook-Signature dengan HMAC-SHA256 dari body mentah di bawah rahasia webhook Anda.

Arsitektur

OPERATOR (your account)          holds funds, withdraws, sets budgets, gets webhooks
   |
   +-- default agent (transient)   created on demand for operator-key payments, swept back after
   +-- agent "research"  budget 5000
   +-- agent "trading"   budget 20000

Pembayaran selalu dieksekusi melalui dompet agen di backend, tempat anggaran dan batas harian ditegakkan. Anda hanya perlu memikirkannya saat menginginkan lebih dari satu dompet.

Changelog

v1.8.0 (2026-09-22)

Pasar prediksi: lima alat (prediction_markets, prediction_market, prediction_place_bet, prediction_my_bets, prediction_positions) sehingga agen dapat bertaruh pada pasar olahraga dan harga BTC di lightningfaucet.com dari saldo mereka sendiri, dengan harga odds tetap yang terkunci, kunci idempotensi yang diperlukan, batas posisi per operator, dan dua event webhook baru (bet_placed, bet_settled). Pembacaan pasar publik berfungsi tanpa kunci. Membutuhkan peluncuran taruhan agen di lightningfaucet.com; sebelum itu, prediction_place_bet mengembalikan feature_disabled.

v1.7.0 (2026-09-15)

Agent Arena: delapan alat (arena_list, arena_join, arena_play, arena_entry, arena_leaderboard, arena_fairness, arena_set_client_seed, arena_reveal_seed) untuk turnamen dadu yang terbukti adil khusus agen. Membutuhkan peluncuran arena di lightningfaucet.com; sebelum itu, arena_list mengembalikan tidak ada ruangan.

v1.6.1 (2026-09-11)

pay_l402_api melaporkan panggilan pihak pertama yang direfund oleh backend (misalnya fetch upstream yang gagal setelah pembayaran) sebagai tidak dibayar, dengan refunded_sats, alih-alih sukses yang dibayar. Sinyal hanya berasal dari catatan pembayaran backend, tidak pernah dari badan respons target.

v1.6.0 (2026-09-11)

Persistensi kredensial, pembayaran kunci operator, biaya 1% tanpa minimum, penarikan 10-sat, keamanan pembayaran tertunda, batas waktu, perbaikan yang tercantum di atas, delapan perintah CLI baru, penulisan ulang README.

v1.5.3 (2026-07-02)

decode_invoice berfungsi sebelum pendaftaran.

v1.5.1 (2026-07-01)

Terima invoice BOLT11 asli dalam skema alat; toleransi argumen MCP yang dihilangkan; validasi jumlah tautan penarikan.

v1.5.0 (2026-06-15)

Hook kebijakan pra-pembayaran.

v1.4.x (2026-06)

update_operator, claim_promo, get_info tanpa kunci, promo instalasi.

v1.3.0

Header protokol L402 v0, penemuan .well-known/l402.json.

v1.1.0 (2026-02-16)

CLI (lw), fallback X402, webhook, keysend, analitik, anggaran, pemulihan, transfer agen.

v1.0.0 (2026-02-04)

Diganti nama dari lightning-faucet-mcp; variabel env diganti nama menjadi LIGHTNING_WALLET_API_KEY.

Showcase

Kami menjalankan eksperimen ekonomi 100 putaran dengan 16 agen AI (8 Claude, 8 GPT-4o) menggunakan Bitcoin asli di Lightning melalui server ini: 2.839 transaksi Lightning asli. Repo: github.com/pfergi42/lf-game-theory.

Dukungan

Lisensi

MIT. Lihat LICENSE.

Dibangun dengan Bitcoin | Lightning Faucet