₿itcoin & Lightning Network MCP Server について
₿itcoin & Lightning Network MCP Server は、AI モデルがビットコインネットワークおよびライトニングネットワークとやり取りできるようにする MCP サーバーです。鍵の生成、アドレス検証、トランザクションのデコード、ブロックチェーンの照会に対応しており、AI との会話内でこれらの情報を扱いたい利用者や開発者を想定しています。
主な機能
- 01WIF 形式の秘密鍵を含むビットコイン鍵ペアの生成
- 02ビットコインアドレスの検証
- 03生のトランザクションのデコードと詳細表示
- 04最新ブロックの取得
- 05TXID によるトランザクションの検索
- 06BOLT11 インボイスのデコードと LNBits 経由の支払い
活用シーン
- 01Claude Desktop から最新のビットコインブロックを照会する
- 02Goose から特定のトランザクションの詳細を確認する
- 03ライトニングインボイスの内容を確認してから支払う
MCP 対応
本プロジェクトは、ビットコインおよびライトニングの機能をツールとして提供する MCP サーバーであり、Claude Desktop や Goose などの MCP 対応クライアントから利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
7掲載時のツール一覧 · 3 週間前に更新
このツールにパラメーターはありません。
詳細
₿itcoin & Lightning Network MCP サーバー
概要
AI モデルが Bitcoin と Lightning Network を利用できるようにする Model Context Protocol(MCP)サーバーです。キーの生成、アドレスの検証、トランザクションのデコード、ブロックチェーンへの問い合わせなどが可能です。
🎮 デモ
| Claude のデモ 動画 | Goose のデモ 動画 |
|---|---|
![]() | ![]() |
💼 目次
🔧 機能
- キー生成:Bitcoin の新しいキーペアを作成します。アドレス、公開鍵、秘密鍵(WIF)が含まれます。
- アドレス検証:Bitcoin アドレスが正しいかどうかを検証します。
- トランザクションのデコード:Bitcoin の生トランザクションを解析し、詳細を人が読みやすい形式で表示します。
- ブロックチェーンへの問い合わせ:
- 最新ブロック:直近のブロックの詳細(ハッシュ、高さ、タイムスタンプ、トランザクション数など)を取得します。
- トランザクションの詳細:TXID を使用してトランザクションの詳細情報を取得します。
- Lightning Network:
- インボイスのデコード:BOLT11 Lightning インボイスを解析し、人が読みやすい情報を表示します。
- 支払い:LNBits ウォレットから Lightning インボイスへ直接支払います。
🔑 Claude Desktop との統合
Claude Desktop(Claude の Anthropic 製デスクトップアプリ)で Bitcoin MCP サーバーを使用するには、次の手順に従ってください。
-
Claude Desktop をダウンロードしてインストールします: 公式の Claude Desktop ダウンロードページにアクセスし、お使いのオペレーティングシステム(macOS または Windows)用のアプリを入手します(Claude for Desktop のインストール | Anthropic ヘルプセンター)。アプリをインストールし、最新バージョンを使用していることを確認してください(アプリメニューから更新を確認できます)。
-
Bitcoin MCP サーバーを使用するよう Claude Desktop を設定します: Claude Desktop の設定ファイルを開きます(Claude Desktop で初めて設定を編集すると作成されます)。
- macOS:
~/Library/Application Support/Claude/claude_desktop_config.json - Windows:
%APPDATA%\Claude\claude_desktop_config.json
JSON 設定の"mcpServers"セクションに、Bitcoin MCP サーバーのエントリーを追加します。例:
{ "mcpServers": { "bitcoin-mcp": { "command": "npx", "args": ["-y", "bitcoin-mcp@latest"] } } }上記のスニペットでは、
"bitcoin-mcp"はサーバーの識別子です(任意の名前を付けられます)。commandはnpxコマンドを実行するように設定されており、argsは Bitcoin MCP サーバーのスクリプトへのパス、またはサーバーを実行するコマンドを指定します。 - macOS:
-
Claude Desktop を再起動します:
claude_desktop_config.jsonファイルを保存し、Claude Desktop を終了して再度開きます。次回の起動時に、設定に従って Claude が Bitcoin MCP サーバーを自動的に起動します。Claude Desktop の起動中に設定を変更した場合は、変更を反映するために再起動する必要があります。
Claude Desktop との統合をテストする
Claude Desktop を再起動したら、Bitcoin MCP サーバーが正常に動作しているかテストできます。
-
Bitcoin に関するサンプル質問を Claude にしてみます。 たとえば、「Bitcoin ネットワークの最新のブロックは何ですか?」 と質問してみてください。統合が成功していれば、Claude の回答には「わかりません」や一般的な回答ではなく、MCP サーバー経由で取得した最新のブロックが含まれます。「TXID abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890 のトランザクションについて教えてください。」 など、ほかの質問も試せます。Claude は MCP サーバーのツールを使ってデータを取得し、質問に回答するはずです。
-
回答を確認します: Claude はエラーを出さずに、Bitcoin ネットワークの最新のブロックなど、詳細な回答を返すはずです。エラーメッセージが表示されたり、有用な回答が得られなかったりする場合は、MCP サーバーが正しく接続されていない可能性があります。
-
必要に応じて Claude のログを確認します: Claude Desktop には、MCP 統合のデバッグに役立つログファイルがあります。ツールが応答しない場合は、次の場所にあるログファイルを確認してください。
- macOS:
~/Library/Logs/Claude/ - Windows:
%APPDATA%\Claude\logs\
MCP 接続に関する一般的なメッセージはmcp.logで、MCP サーバーの出力やエラーはmcp-server-bitcoin-mcp.log(または指定した名前のファイル)で確認できます。これらのログには、サーバーが起動したかどうかや、パスの誤り、サーバー内の例外などのエラーが記録されます。エラーが表示された場合は、必要に応じて設定または環境を修正してから、Claude Desktop を再起動し、もう一度テストしてください。
- macOS:
🦆 Goose との統合
Goose は、Model Context Protocol を介した拡張機能に対応する、Block 製のオープンソース AI エージェントフレームワークです。Bitcoin MCP サーバーを Goose の拡張機能として統合すると、Goose が Bitcoin ブロックチェーンとやり取りできるようになります。Goose は MCP サーバーとの統合方法として、サーバーをローカルプロセス(STDIO)として実行する方法と、Server-Sent Events(SSE)経由でリモートサービスに接続する方法の 2 つをサポートしています。以下に両方の方法を説明します。
STDIO の使用(ローカル拡張機能)
この方法では、Bitcoin MCP サーバーを Goose のサブプロセスとしてローカルで実行し、標準入出力を介して通信します。
-
Goose に新しい拡張機能を追加します: Goose の設定画面を開きます。コマンドラインで
goose configureを実行するか、Goose Desktop アプリで Settings > Extensions に移動します。メニューから "Add Extension" を選択します。(Using Extensions | goose) -
拡張機能の種類として「コマンドライン拡張機能」を選択します: 拡張機能の種類を尋ねられたら、Goose がローカルコマンドを起動するように、CLI メニューまたは UI で Command-Line Extension を選択します(組み込み拡張機能やリモート拡張機能ではなく、ローカルコマンドを起動します)。(Using Extensions | goose)
-
拡張機能の詳細を入力します: Bitcoin MCP サーバーの名前とコマンドを指定します。
-
名前: "bitcoin"、または任意の識別子を指定できます(これが拡張機能を参照する際の名前になります)。
-
コマンド: MCP サーバーの実行方法を指定します。たとえば、Python スクリプトがある場合は、その実行コマンドを入力します。CLI 設定ツールで「What command should be run?」と尋ねられた場合は、次のように入力します。
npx -y bitcoin-mcp@latestこれにより、Goose が Bitcoin MCP サーバーを起動します(GitHub - AbdelStark/bitcoin-mcp: Bitcoin MCP Server)。サーバースクリプトへの正しいパス、またはサーバーを実行する正しいコマンドを使用してください(Claude の設定と同様です)。
-
通常、スクリプトのパス以外の引数を追加する必要はありません(サーバーで特別なフラグが必要な場合を除きます)。上記のコマンドはデフォルトの STDIO トランスポートを使用します。これは、コマンドライン拡張機能に Goose が想定する方式です。(Goose の設定ファイルでは、
cmd: "npx"およびargs: ["-y", "bitcoin-mcp@latest"]を含み、標準入出力モードを示すtype: stdioが指定された項目に相当します(Using Extensions | goose)。)
-
-
設定を完了して有効にします: 拡張機能の追加を完了します。Goose はこの新しい拡張機能を設定(通常は
~/.config/goose/config.yaml)に追加します。拡張機能が 有効 になっていることを確認してください(CLI ウィザードを使用する場合、追加後にデフォルトで有効になります。Goose Desktop アプリでは、Extensions リストを確認し、まだ有効になっていない場合は切り替えて有効にできます(Using Extensions | goose)(Using Extensions | goose)。) -
新しい拡張機能を使って Goose セッションを開始します: これで Goose で拡張機能を使用できます。Goose を CLI で実行している場合は、次のコマンドを実行して拡張機能を含むセッションを開始します。
goose session --with-extension "bitcoin"
"bitcoin" を拡張機能に付けた名前に置き換えてください(Using Extensions | goose)。これにより、セッションで拡張機能が読み込まれます。あるいは、拡張機能がグローバルに有効になっていれば、Goose Desktop または CLI のすべてのセッションで自動的に使用できます。
SSE の使用(リモート拡張機能)
この方法では、HTTP SSE ストリームを介して、すでに実行中の MCP サーバーに Goose を接続します。Bitcoin MCP サーバーをスタンドアロンサービスとして(別のマシン上、または Goose とは独立して)実行する場合に使用します。
-
MCP サーバーをスタンドアロンサービスとして起動します: Bitcoin MCP サーバーを実行して、接続を待ち受けるようにします。実際には、MCP 用の HTTP エンドポイントを提供するモードでサーバーを起動する必要があります。たとえば、ポートで待ち受けるための特定のコマンドやオプションを使ってサーバーを実行します(MCP ライブラリに組み込まれたウェブサーバー機能を使うか、ウェブフレームワーク上で実行する方法があります)。サーバーが既知の URL(例:
http://localhost:9000)でアクセス可能であり、SSE 経由の MCP プロトコルに対応していることを確認してください。 -
Goose で新しい拡張機能を追加します(リモート): 先ほどと同様に、
goose configureを実行するか、Goose の UI を使って 拡張機能を追加します(拡張機能の使用 | goose)。今回は、拡張機能の種類を尋ねられたら リモート拡張機能を選択します(拡張機能の使用 | goose)。これにより、Goose は SSE 経由で外部サーバーに接続します。 -
リモート拡張機能の詳細を入力します: 拡張機能に名前(例:「bitcoin」)を付け、サーバーの URL を指定します。URL には、MCP サーバーが稼働しているベースアドレスを入力します。たとえば、ローカルマシンのポート 9000 でサーバーが待ち受けている場合は、
http://localhost:9000と入力します。Goose はそのアドレスにある MCP サーバーの SSE エンドポイントへの接続を試みます。(Goose は標準の MCP SSE パスを使用します。慣例ではサーバー上の/mcp/sseルートになっており、通常はホストとポートを指定するだけで、残りは Goose が処理します。) -
拡張機能を有効にします: リモート拡張機能を追加したら、Goose の設定で有効になっていることを確認します(STDIO の場合と同様です)。STDIO または SSE の拡張機能のうち、同じツールを持つものは一方だけを有効にすれば十分です。同じサーバーのローカル版とリモート版の両方を誤って有効にした場合は、混乱を避けるために一方を無効にしてください。
Goose で Bitcoin MCP 拡張機能を使用する: 上記いずれかの方法で拡張機能を設定して有効にしたら、Goose を使って Bitcoin のデータを問い合わせることができます。新しい Goose のチャットまたはセッションで、通常どおり質問してください。Goose は、リクエストに応じるために Bitcoin MCP ツールを使うべきタイミングを判断します。たとえば、次のように質問できます。
- 「最新の Bitcoin ブロックは何ですか?」
- 「TXID abcdef1234567890abcdef1234567890abcdef1234567890abcdef1234567890 のトランザクションについて教えてください。」
これらの質問をすると、Goose は MCP サーバーのツールを呼び出し、回答(例:最新の Bitcoin ブロック情報)を返します。MCP サーバーを介して Bitcoin ブロックチェーンから取得した最新情報に基づいて、Goose が応答することを確認できます。
Goose が拡張機能を使っていないように見える場合(たとえば、情報が見つからないと応答する場合)は、拡張機能が有効になっており、サーバーが実行中であること(リモートの場合は SSE モードであること)を確認してください。拡張機能の呼び出しを試みたかどうかは、詳細ログを有効にして Goose の CLI を実行することでも確認できます。通常、正しく設定されていれば、Goose は MCP サーバーの機能を自動的に検出し、関連する場面で使用します。
関連リソース: Goose の拡張機能と MCP の詳細については、Goose の公式ドキュメントを参照してください(拡張機能の使用 | goose)。ドキュメントには、組み込みおよびコミュニティの拡張機能の一覧と、MCP サーバーを Goose に統合する方法が記載されています。また、利用可能な MCP サーバーのディレクトリや追加の設定方法も、Goose のドキュメントと Model Context Protocol のドキュメントで確認できます。拡張機能をさらに探したり、独自に開発したりする際に役立ちます。
📦 開発環境のセットアップ
セットアップ手順は、開発環境のセットアップガイドをご覧ください。
Lightning Network の設定(任意)
Lightning Network の機能を使用するには、LNBits の接続情報を設定する必要があります。これらの設定は任意であり、Lightning Network ツールを使用する場合にのみ必要です。
{
"lnbitsUrl": "https://demo.lnbits.com",
"lnbitsAdminKey": "your_admin_key", // Required for making payments
"lnbitsReadKey": "your_read_key" // Required for wallet information
}
以下の手順で値を取得できます。
- LNBits でアカウントを作成します
- 新しいウォレットを作成します
- API 情報に移動して、API キーを確認します
📦 利用可能なツール
利用可能なツールについては、API リファレンスガイドをご覧ください。
🚨 エラー処理
サーバーでは、Bitcoin の操作やブロックチェーンへのクエリを処理するために、カスタムエラー型を使用しています。デバッグしやすいよう、詳細なエラーメッセージは Pino を使ってログに記録され、クライアントへの応答に含まれます。
🤝 貢献
貢献や機能のリクエストを歓迎します。お気軽にプルリクエストを送信するか、GitHub でイシューを作成してください。
📝 ライセンス
このプロジェクトはMIT Licenseの下でライセンスされています。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。


