mcpField
A
Alby Bitcoin Payments MCP

Alby Bitcoin Payments MCP

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

Alby Bitcoin Payments MCP について

Alby Bitcoin Payments MCP は、Nostr Wallet Connect(NWC)を通じてライトニングのビットコインウォレットを LLM に接続する MCP サーバーです。ビットコイン決済を AI アシスタントに任せたい開発者やユーザー向けです。リモートでホストされる版と、ローカルで動く STDIO 版が提供されています。

主な機能

  1. 01NWC によるライトニングウォレットの接続
  2. 02LNURL と L402 に関する知識を持つ機能
  3. 03リモート SSE と HTTP Streamable のエンドポイント
  4. 04ローカルの STDIO と HTTP の実行モード
  5. 05Bearer トークンまたはクエリパラメータによる NWC 接続シークレット
  6. 06Host ヘッダーの許可リストと L402 アドレスの検証

活用シーン

  1. 01AI アシスタントによるライトニング送金や受け取り
  2. 02n8n などの自動化ワークフローへのビットコイン決済ステップの追加
  3. 03L402 で保護された有料 HTTP リソースの取得

MCP 対応

本プロジェクト自体が MCP サーバーであり、NWC ウォレットの機能をツールとして MCP クライアントに公開します。リモート版は Bearer 認証または nwc クエリパラメータで接続シークレットを受け取り、ローカル版は環境変数から読み込みます。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"getalby": {
"command": "npx",
"args": [
"-y",
"@getalby/mcp"
],
"env": {
"NWC_CONNECTION_STRING": "<NWC_CONNECTION_STRING>"
}
}
}
}
起動コマンドnpx -y @getalby/mcp
設定が必要な環境変数
NWC_CONNECTION_STRING

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

パッケージ
npm@getalby/mcp

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

Alby Bitcoin Payments MCP サーバー

新機能: MCP に対応していないエージェント向けに、Alby CLIもご確認ください。

Nostr Wallet Connect(NWC)を使って、ビットコインのライトニングウォレットを LLM に接続します。

この MCP サーバーは、公式 MCP TypeScript SDKを使用しています。

この MCP サーバーは、Alby SDKとAlby Lightning Toolsを使用し、NWC、LNURL、L402に関する知識を備えています。

Alby MCP を利用できる場所については、**Awesome AI Bitcoin**をご覧ください。

README の画像

クイックスタート

行き詰まった場合は、下記のトラブルシューティングのセクションをご覧ください。

Alby がホストする MCP サーバーを使う

エージェントがリモート MCP サーバー(SSE(N8N など)または HTTP Streamable トランスポート)に対応している場合は、Alby の MCP サーバーに接続できます。

  • SSE:https://mcp.getalby.com/sse
  • HTTP Streamable:https://mcp.getalby.com/mcp
認証

どちらも、認証用に NWC 接続シークレットを指定する必要があります。方法は、Bearer 認証(推奨)または nwc クエリパラメーターです。

Bearer 認証

例:Authorization: Bearer nostr+walletconnect://...

エージェントの UI が Bearer 認証に対応している場合は、接続シークレットを Bearer 認証フィールドに貼り付けるだけです。

クエリパラメーター

エージェントが Bearer 認証に対応していない場合は、NWC 接続シークレットをクエリパラメーターとして渡せます。

例:https://mcp.getalby.com/sse?nwc=ENCODED_CONNECTION_SECRET または https://mcp.getalby.com/mcp?nwc=ENCODED_CONNECTION_SECRET

ENCODED_CONNECTION_SECRET を取得するには、ブラウザーの開発者ツールを開き(右クリック -> 検証)、自分の NWC 接続シークレットを設定してから、コンソールに次のコードを入力してください。

encodeURIComponent("nostr+walletconnect://...");

貼り付けの確認を求めるメッセージが表示された場合は、指示に従ってから、上記のコマンドをもう一度入力してください。

コマンドの実行後、出力をコピーして ENCODED_CONNECTION_SECRET に置き換えてください。次のような形式になります:nostr%2Bwalletconnect%3A%2F%2F...

Claude Web または Claude Desktop に追加する
リモート Alby MCP サーバーを使う

現時点では、リモート MCP サーバーに接続するには、少なくとも Claude Pro のサブスクリプションが必要です。

  1. Settings -> Connectors に移動します
  2. 「Add custom connector」をクリックします
  3. 名前を alby にします
  4. エンドポイント URI を入力します:https://mcp.getalby.com/mcp?nwc=ENCODED_NWC_URL(手順は上記をご覧ください)
クライアント側

以下を claude_desktop_config.json に追加します:

{
  "mcpServers": {
    "nwc": {
      "command": "npx",
      "args": ["-y", "@getalby/mcp"],
      "env": {
        "NWC_CONNECTION_STRING": "YOUR NWC CONNECTION STRING HERE"
      }
    }
  }
}
Goose Desktop に追加する
  1. Goose Desktop を開きます
  2. Settings -> Advanced Settings に移動します
  3. 「Add custom Extension」をクリックします
  4. 名前を alby にし、タイプを HTTP Streamable に変更します
  5. SSE エンドポイント URI を入力します:https://mcp.getalby.com/mcp
  6. タイムアウト:30
  7. 説明:なし
  8. 環境変数:なし
Goose CLI に追加する
Alby MCP サーバーを使う
  1. goose configure と入力します
  2. Add extension -> Remote Extension (HTTP Streamable) を選択します
  3. 名前を alby にします
  4. HTTP Streamable エンドポイント URI を入力します:https://mcp.getalby.com/mcp
  5. タイムアウト:30
  6. 説明:なし
  7. 環境変数:なし
  8. カスタムヘッダーを追加:はい
  9. ヘッダー名:Authorization
  10. ヘッダー値:Bearer nostr+walletconnect://...(接続シークレットに置き換えてください)
クライアント側
  1. goose configure と入力します
  2. Add extension -> Command Line Extension を選択します
  3. 名前を alby にします
  4. 実行するコマンドを入力します:npx -y @getalby/mcp
  5. タイムアウト:30
  6. 説明:なし
  7. 環境変数:はい
  8. 環境変数名:NWC_CONNECTION_STRING
  9. 環境変数の値:nostr+walletconnect://...(ここに NWC 接続シークレットを入力します)
Cline に追加する

以下をコピーして、Cline のプロンプトに貼り付けてください。接続文字列を更新するよう促されます。

Add the following to my MCP servers list:

"nwc": {
  "command": "npx",
  "args": ["-y", "@getalby/mcp"],
  "env": {
    "NWC_CONNECTION_STRING": "nostr+walletconnect://..."
  },
  "disabled": false,
  "autoApprove": []
}
Claude Code に追加する
Alby MCP サーバーを使用する
claude mcp add --transport http alby https://mcp.getalby.com/mcp --header "Authorization: Bearer nostr+walletconnect://..."
SSE 経由で N8N に追加する

AI エージェントに接続した N8N ネイティブの MCP クライアントツールを使用できます。SSE エンドポイントを入力し、認証を「Bearer」に設定して、NWC 接続シークレットを貼り付けてください。

OpenRouter + anthropic/claude-3.7-sonnet でテスト済みです。

簡単な例については、N8N ワークフローをご覧ください。

STDIO 経由で N8N に追加する(コミュニティノード)

現在、この MCP サーバーはコマンドライン(STDIO)経由でのみ動作します。

n8n-nodes-mcp コミュニティノードをインストールし、ツールを有効にして n8n を実行できます。例:

N8N_COMMUNITY_PACKAGES_ALLOW_TOOL_USAGE=true npx n8n

空のワークフローを作成し、AI エージェントノードを追加します。LLM モデルを設定し、新しいツール「MCP Client」を追加します(コミュニティノードであることを示すキューブが横に表示されます)。

コマンドライン(STDIO)を選択して認証情報を追加し、MCP Client を設定します。

コマンド:npx 引数:-y @getalby/mcp 環境変数:NWC_CONNECTION_STRING=nostr+walletconnect://your_key_here(パスワード欄は平文表示に切り替えられないため、テキストエディターでこの行全体を作成して貼り付けてください)

詳しい例については、N8N 有料チャットワークフローをご覧ください。

Windsurf に追加する
リモート Alby MCP サーバーを使用する
  1. Windsurf Editor をダウンロードして開きます。
  2. 下部のツールバーで「Windsurf - Settings」→「Advanced Settings」→「Cascade」→ Plugins (MCP Servers) の順にクリックします。「Manage plugins」→「View raw config」をクリックすると、「mcp_config.json」が表示されます。
  3. 以下を mcp_config.json に貼り付けます。
{
  "mcpServers": {
    "alby": {
      "serverUrl": "https://mcp.getalby.com/sse?nwc=ENCODED_NWC_URL"
    }
  }
}
  1. 上記の説明に従って「ENCODED_NWC_URL」を置き換えます。「Save」をクリックし、Windsurf Editor を再起動します。

モード

STDIO

デフォルトでは、NWC MCP Server はローカルで STDIO モードで実行されます。

HTTP

次の環境変数を設定すると、Streamable HTTP(http://localhost:3000/mcp)と SSE(http://localhost:3000/sse。注:SSE は非推奨です)が有効になります。

HTTP では Bearer 認証が必要です。トークンにはウォレットの NWC 接続シークレットを指定します。README の上部にある認証のセクションをご覧ください。

リクエストの検証

HTTP エンドポイントでは、Host ヘッダーが許可リストに登録されているリクエストのみ受け付けます。ブラウザーからのリクエスト(Origin ヘッダーを含む)は拒否されます。ブラウザーではない MCP クライアントは、このヘッダーを送信しません。fetch_l402 は、ホスト名がグローバルにルーティング可能なアドレスに解決される http(s) URL のみを取得します。ループバック、リンクローカル、プライベートの範囲は拒否されます。これはベストエフォートのチェックです。取得時にホスト名が再度解決されるため、2 回の名前解決の間に応答を変更する DNS サーバーがあると、チェックを回避できる可能性があります。環境変数で設定します。

変数デフォルト用途
ALLOWED_HOSTSlocalhost、127.0.0.1、[::1]受け付ける Host ヘッダーの値(カンマ区切り)。設定するとデフォルト値を置き換えるため、引き続き localhost を使う場合は含めてください。デプロイ時には、公開ホスト名(例:mcp.getalby.com)を設定します。
BIND_HOST127.0.0.1HTTP リスナーがバインドするアドレス。デフォルトではネットワークからアクセスできません。デプロイ時、または Docker で実行してホストから接続する場合は、::(または 0.0.0.0)を設定します。

fetch_l402 はリダイレクトを追跡しません。リダイレクト先のある URL はエラーを返します。

ソースから

前提条件
  • Node.js 20+
  • Yarn
  • NWC に対応した Lightning ウォレットの接続文字列
インストール
yarn install
ビルド
yarn build
NWC 接続を追加する

.env.example を .env にコピーし、接続文字列を更新します。

ツールを確認する(LLM を使わずに実行/テスト)

yarn inspect

対応ツール

ツールディレクトリをご覧ください。

トラブルシューティング

モデルの使用

適切なモデル(例:Claude Sonnet 3.7)を使用してください。そうでない場合、MCP サーバーは動作しません。

ウォレットに接続できない場合、シークレットが見つかりません

NWC 接続シークレット全体を、スペースを入れずにコピーしたことを確認してください。

Alby サポートへのお問い合わせ

support.getalby.com にアクセスしてください。MCP サーバーが動作するよう、喜んでサポートいたします。

コメント

MCP は初めてですか?

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

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