mcpField
L
l402-kit

l402-kit

ローカル
github.com/ShinyDapps金融データ422 週間前に更新

l402-kit について

l402-kitは、L402を使うAPI向けの決済ミドルウェアとエージェントクライアントを提供し、Bitcoin Lightning決済に対応します。x402との互換性もあり、MCPサーバーを通じて対応エージェントが有料APIを利用できます。

主な機能

  1. 01API向けL402決済処理
  2. 02Bitcoin Lightningインボイスの検証
  3. 03セッション予算付きエージェントクライアント
  4. 04リプレイ防止と有効期限付きmacaroon
  5. 05TypeScript、Python、Go、RustのSDK

活用シーン

  1. 01API呼び出しごとのsats課金
  2. 02エージェントによる保護APIの決済利用
  3. 03データ提供前のLightning決済検証
  4. 04対応するサーバー環境へのL402導入

MCP 対応

MCPサーバーにより、MCP対応エージェントはl402-kitを使ってL402保護APIを呼び出せます。READMEではx402互換性についても説明されています。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"thiagodataengineer-l402-kit": {
"command": "npx",
"args": [
"-y",
"l402-kit"
]
}
}
}
起動コマンドnpx -y l402-kit

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
npml402-kit1.8.7

ツール

12

掲載時のツール一覧 · 2 週間前に更新

パラメーター型必須説明
urlstringはい取得する URL(http または https)。
bodystringいいえ文字列形式のリクエストボディ(POST/PUT リクエスト用)。
methodstringいいえHTTP メソッド — GET、POST、PUT、DELETE、PATCH。既定値:GET
headersobjectいいえキーと値のペアで指定する追加の HTTP リクエストヘッダー

詳細

l402-kit

l402-kit

あらゆる API に、Bitcoin Lightning による呼び出しごとの課金を追加できます。コードは 3 行です。

License: MIT ライブデモ テスト l402-kit MCP サーバー


VS Code Marketplace インストール数

▶ エンドツーエンドのデモを見る — インストール → 402 → 支払い → 200 OK



現在の利用状況
SDKバージョンダウンロード数
📦 TypeScript · npmjs.com/package/l402-kitnpmnpm total
🐍 Python · pypi.org/project/l402kitpypipypi total
🦀 Rust · crates.io/crates/l402kitcratescrates dls
🔌 VS Code 拡張機能 · マーケットプレイスvscode vermarketplace
🦫 Go · pkg.go.devgogo report


🌍 11言語に対応 — クリックして展開

🇺🇸 Bitcoin LightningでAPIに課金。コードは3行。 🇧🇷 Bitcoin LightningでAPIを収益化。コードは3行。 🇪🇸 Bitcoin LightningでAPIを収益化。コードは3行。 🇨🇳 Bitcoin LightningでAPIを収益化。コードは3行。 🇮🇳 Bitcoin LightningでAPIを3行で収益化。 🇸🇦 Bitcoin LightningでAPIから収益を得ましょう。わずか3行。 🇫🇷 Bitcoin LightningでAPIを収益化。コードは3行。 🇩🇪 Bitcoin LightningでAPIを収益化。コードは3行。 🇷🇺 Bitcoin LightningでAPIを収益化。コードは3行。 🇯🇵 Bitcoin LightningでAPIを3行で収益化。 🇮🇹 Bitcoin LightningでAPIを収益化。コードは3行。

📖 公式ドキュメント: 🇺🇸 · 🇧🇷 · 🇪🇸 · 🇨🇳 · 🇮🇳 · 🇸🇦 · 🇫🇷 · 🇩🇪 · 🇷🇺 · 🇯🇵 · 🇮🇹


インストール

npm install l402-kit        # TypeScript / Node.js / Express
pip install l402kit         # Python / FastAPI / Flask
go get github.com/shinydapps/l402-kit/[email protected]   # Go / net/http / Chi / Gin
cargo add l402kit           # Rust / axum

AI エージェント/LLM: 機械可読な手順については、llms.txt をご覧ください。 エージェントの検出: /.well-known/agent.json · /.well-known/l402.json


AI エージェント向け

l402-kit は自律型エージェント向けの決済レイヤーです。エージェントは人の介入なしに API の料金を支払えます。

システムプロンプトのスニペット — L402 決済を有効にするには、任意のエージェントに追加してください。

You have access to paid APIs via the L402 protocol.
When you call an API that returns HTTP 402, use the L402Client from l402-kit
to pay automatically with Bitcoin Lightning.
Budget limit: {BUDGET_SATS} sats per session. Never exceed this limit.

エージェント SDK クイックスタート:

import { l402Client, buildWallet } from "l402-kit/agent";

const client = l402Client({
  wallet: buildWallet(process.env), // auto-detects BLINK_API_KEY or ALBY_TOKEN
  budgetSats: 1000,
});

const data = await client.fetch("https://api.example.com/paid-endpoint");

MCP サーバー(Claude Desktop、Cursor、および MCP 互換の任意のエージェント向け):

{
  "mcpServers": {
    "l402-kit": {
      "command": "npx",
      "args": ["l402-kit-mcp"],
      "env": { "BLINK_API_KEY": "your-key" }
    }
  }
}

互換性: LangChain · OpenAI Agents · CrewAI · Vercel AI SDK · AutoGPT · 任意の MCP クライアント

プロトコルのサポート: L402(Bitcoin Lightning) · x402(USDC/Coinbase)互換

L402-Kit を利用


仕組み

1. Client calls your API
       ↓
2. API returns  HTTP 402 + BOLT11 invoice + macaroon
       ↓
3. Client pays  (any Lightning wallet, < 1 second, any country)
       ↓
4. Client sends Authorization: L402 <macaroon>:<preimage>
       ↓
5. API verifies SHA256(preimage) == paymentHash  ✓
       ↓
6. HTTP 200 OK + your data

── Fee flow (managed mode) ─────────────────────────────────
   Payment → 99.7% → your Lightning Address  (instant)
           →  0.3% → ShinyDapps

クイックスタート

TypeScript
import express from "express";
import { l402, AlbyProvider } from "l402-kit";

const app = express();

const lightning = new AlbyProvider(process.env.ALBY_TOKEN!);

app.get("/premium", l402({ priceSats: 100, lightning }), (_req, res) => {
  res.json({ data: "Payment confirmed." });
});

app.listen(3000);
Python
from fastapi import FastAPI, Request
from l402kit import l402_required

app = FastAPI()

@app.get("/premium")
@l402_required(price_sats=100, owner_lightning_address="[email protected]")
async def premium(request: Request):
    return {"data": "Payment confirmed."}
Go
package main

import (
    "fmt"
    "net/http"
    l402kit "github.com/shinydapps/l402-kit/go"
)

func main() {
    http.Handle("/premium", l402kit.Middleware(l402kit.Options{
        PriceSats:             100,
        OwnerLightningAddress: "[email protected]",
    }, http.HandlerFunc(func(w http.ResponseWriter, r *http.Request) {
        fmt.Fprintln(w, `{"data": "Payment confirmed."}`)
    })))
    http.ListenAndServe(":8080", nil)
}
Rust
use axum::{middleware, routing::get, Router};
use l402kit::{l402_middleware, Options};
use std::sync::Arc;

#[tokio::main]
async fn main() {
    let opts = Arc::new(Options::new(100).with_address("[email protected]"));

    let app = Router::new()
        .route("/premium", get(|| async { "Payment confirmed." }))
        .route_layer(middleware::from_fn_with_state(opts, l402_middleware));

    let listener = tokio::net::TcpListener::bind("0.0.0.0:8080").await.unwrap();
    axum::serve(listener, app).await.unwrap();
}

実際に試す

# Step 1 — triggers 402 + returns invoice
curl http://localhost:3000/premium
# ← { "error": "Payment Required", "invoice": "lnbc1u...", "macaroon": "eyJ..." }

# Step 2 — pay the invoice with any Lightning wallet, then:
curl http://localhost:3000/premium \
  -H "Authorization: L402 <macaroon>:<preimage>"
# ← { "data": "Payment confirmed." }

▶ インタラクティブなデモを試す


Stripe ではなく、なぜこれを選ぶのか?

Stripel402-kit
最低手数料$0.30< 1 sat(約 $0.001)
決済完了までの時間2~7 日< 1 秒
チャージバックあり不可 — 暗号学的証明
アカウントが必要はい不要 — 任意の Lightning ウォレット
AI エージェントのサポートなしあり — ネイティブ対応の SDK 4 種
利用できない国約 50 か国0 — デフォルトで世界中から利用可能
取り消し可能はいいいえ — 受領時に確定
オープンソースいいえはい — MIT

プロバイダー

import { BlinkProvider, OpenNodeProvider, LNbitsProvider } from "l402-kit";

// Blink (recommended — free, instant setup)
const provider = new BlinkProvider(process.env.BLINK_API_KEY!, process.env.BLINK_WALLET_ID!);

// OpenNode (production, custodial)
const provider = new OpenNodeProvider(process.env.OPENNODE_KEY!);

// LNbits (self-hosted)
const provider = new LNbitsProvider(process.env.LNBITS_KEY!, "https://your.lnbits.host");

独自のノードを使用 — LightningProvider インターフェースを 5 行で実装できます。

import type { LightningProvider } from "l402-kit";

class MyNode implements LightningProvider {
  async createInvoice(amountSats: number) { /* return Invoice */ }
  async checkPayment(paymentHash: string) { /* return boolean */ }
}

セキュリティモデル

Invoice creation:  paymentHash = SHA256(preimage)
Client payment:    Lightning Network releases preimage to payer
API verification:  SHA256(preimage) == paymentHash  ✓
Replay protection: each preimage is marked used — works exactly once
Token expiry:      macaroons expire after 1 hour
  • 偽造不可能 — SHA256 は一方向関数であり、プリイメージを偽造することはできません
  • チャージバックなし — 取り消し可能なカード認証ではなく、暗号学的に決済します
  • リプレイ攻撃に安全 — MemoryReplayAdapter(開発環境)または RedisReplayAdapter(本番環境、複数インスタンス)
  • 5 つのランタイム(TS、Python、Go、Rust、Cloudflare Workers)で 600 件以上の自動テスト — 自律型エージェントのワークフローに対応する、プロダクション品質の信頼性
  • 完全に監査可能 — MIT、すべてのコードがオープンソースです

VS Code 拡張機能

エディターを離れずに、すべての sats をリアルタイムで監視できます。

VS Code Marketplace

  • ⚡ エンドポイントごとのライブ決済フィード
  • 📊 棒グラフ — 1D / 7D(無料) · 30D / 1Y / ALL(Pro)
  • 🌍 11 言語を標準搭載
  • 🎨 ライト/ダーク/自動テーマ
  • 🔧 設定不要 — Lightning Address を設定するだけです

Lightning Address を取得する(無料)

dashboard.blink.sv で登録できます。無料で、クレジットカード不要、すぐに利用できます。 アドレス:[email protected]

その他のウォレット:Wallet of Satoshi · Phoenix · Zeus · Alby


リンク

リソースURL
📖 ドキュメント(11 言語)l402kit.com/docs
📦 npmnpmjs.com/package/l402-kit
🐍 PyPIpypi.org/project/l402kit
🦫 Gopkg.go.dev/github.com/shinydapps/l402-kit/go
🦀 Rustcrates.io/crates/l402kit
🔌 VS Codemarketplace.visualstudio.com
⚡ Lightning[email protected]
🐙 GitHubgithub.com/ShinyDapps/l402-kit

MIT — 自由に使い、自由に構築できます。

Bitcoin に国境はありません。


⚡ ShinyDapps が開発


ドキュメント · デモ · VS Code · npm

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。