remote-capable server
The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.
Integrations
Provides wallet functionality, BSV blockchain interaction, ordinals/NFT management, and utility tools for Bitcoin SV. Capabilities include retrieving addresses, sending transactions, purchasing NFTs, getting price information, working with ordinals, and managing BSV20 tokens.
Uses Bun as the JavaScript runtime for the MCP server, enabling fast execution of the Bitcoin SV tools and capabilities.
Bitcoin SV MCP サーバー
⚠️ 注意: 実験作業進行中
このプロジェクトはまだ初期段階の実験段階です。機能は変更される可能性があり、APIはまだ安定していません。貢献、フィードバック、バグ報告を歓迎します!お気軽に問題を報告したり、プルリクエストを送信してください。
モデルコンテキストプロトコル(MCP)フレームワーク用のBitcoin SV(BSV)ツールのコレクション。このライブラリは、BSVブロックチェーンとの連携に必要なウォレット、序数、ユーティリティ関数を提供します。
MCPクライアントへの接続
このサーバーはモデルコンテキストプロトコル(MCP)を実装しており、AIアシスタントがBitcoin SVの機能を利用できるようにします。このサーバーは、MCP対応の様々なクライアントに接続できます。
カーソル
Cursorで BSV MCP サーバーを使用するには:
- まだインストールしていない場合は、Cursorをインストールしてください。
- このリポジトリをクローンし、プロジェクトディレクトリで
bun install
実行します。 - カーソルを開き、設定→拡張機能→モデルコンテキストプロトコルに移動します。
- 「新しいグローバルMCPサーバーを追加」をクリックします
- 次の構成を JSON 形式で入力します。
<your_private_key_wif>
を実際の秘密鍵 WIF に置き換えます (安全に保管してください)。- 「保存」をクリック
BSV ツールは、「Bitcoin SV」名前空間の Cursor の AI アシスタントで利用できるようになります。
デスクトップ版クロード
このサーバーをClaude for Desktopに接続するには:
- Claude for Desktopがインストールされ、最新バージョンに更新されていることを確認してください。
- このリポジトリをクローンし、プロジェクトディレクトリで
bun install
実行します。 - Claude for Desktop の構成ファイルを開きます。Copy
- BSV MCP サーバーを設定に追加します (ファイルが存在しない場合は作成します)。Copy
<your_private_key_wif>
を実際の秘密鍵 WIF に置き換えます。- ファイルを保存し、Claude for Desktopを再起動します。
- Claude for Desktopのツールアイコン(ハンマー)をクリックするとBSVツールが表示されます。
利用可能なツール
ツールキットはいくつかのカテゴリに分類されています。
ウォレットツール
ウォレットツールはBSVウォレットのコア機能を提供します。
ツール名 | 説明 | 出力例 |
---|---|---|
wallet_getPublicKey | 指定されたプロトコルとキーIDの公開キーを取得します | {"publicKey":"032d0c73eb9270e9e009fd1f9dd77e19cf764fbad5f799560c4e8fd414e40d6fc2"} |
wallet_createSignature | 提供されたデータの暗号署名を作成する | {"signature":[144,124,85,193,226,45,140,249,9,177,11,167,33,215,209,38,...]} |
wallet_verifySignature | 提供されたデータに対して暗号署名を検証する | {"isValid":true} |
wallet_encryption | ウォレットの暗号鍵を使用してデータを暗号化および復号化するための複合ツール。例: 1. テキストを暗号化: "Encrypt this message: Hello World" 2. データを復号化: "Decrypt this data that was previously encrypted for me" | 暗号化: {"ciphertext":[89,32,155,38,125,22,49,226,26,...]} 復号化: {"plaintext":"hello world"} |
wallet_getAddress | 現在のウォレットのBSVアドレスまたは派生パスを返します | {"address":"1ExampleBsvAddressXXXXXXXXXXXXXXXXX","status":"ok"} |
wallet_sendToAddress | 指定されたアドレスにBSVを送信します(BSVまたはUSDの金額をサポート) | {"status":"success","txid":"a1b2c3d4e5f6...","satoshis":1000000} |
wallet_purchaseListing | マーケットプレイスのリストからNFTまたはBSV-20/BSV-21トークンを購入する | {"status":"success","txid":"a1b2c3d4e5f6...","type":"nft","origin":"abcdef123456..."} |
wallet_createOrdinals | BSVブロックチェーン上に序数を作成して刻み込む | {"txid":"a1b2c3d4e5f6...","inscriptionAddress":"1ExampleAddress...","contentType":"image/png"} |
BSVツール
BSVブロックチェーンおよびネットワークと対話するためのツール:
ツール名 | 説明 | 出力例 |
---|---|---|
bsv_getPrice | 取引所APIから現在のBSV価格を取得します | Current BSV price: $38.75 USD |
bsv_decodeTransaction | BSVトランザクションをデコードし、詳細情報を返します | {"txid":"a1b2c3d4e5f6...","version":1,"locktime":0,"size":225,"inputs":[...],"outputs":[...]} |
bsv_explore | WhatsOnChain APIエンドポイントにアクセスできる包括的なブロックチェーンエクスプローラーツール | {"chain_info":{"chain":"main","blocks":826458,"headers":826458,"bestblockhash":"0000000000..."}} |
序数ツール
BSVで序数(NFT)を操作するためのツール:
ツール名 | 説明 | 出力例 |
---|---|---|
ordinals_getInscription | 特定の碑文に関する詳細情報を取得します | {"id":"a1b2c3d4e5f6...","origin":"a1b2c3d4e5f6...","contentType":"image/png","content":"iVBORw0KGgoAAA..."} |
ordinals_searchInscriptions | さまざまな基準に基づいて碑文を検索します | {"results":[{"id":"a1b2c3...","contentType":"image/png","owner":"1Example..."},...]} |
ordinals_marketListings | 統一されたインターフェースでNFT、BSV-20、BSV-21トークンの市場リストを取得します | {"results":[{"txid":"a1b2c3...","price":9990000,"tick":"PEPE","listing":true},...]} |
ordinals_marketSales | BSV-20およびBSV-21トークンの市場販売に関する情報を取得します | {"results":[{"txid":"a1b2c3...","price":34710050,"tick":"$BTC","sale":true},...]} |
ordinals_getTokenByIdOrTicker | IDで特定のBSV20トークンの詳細を取得します | {"tick":"PEPE","max":"21000000","lim":"1000","dec":"2"} |
ユーティリティツール
汎用ユーティリティ関数:
ツール名 | 説明 | 出力例 |
---|---|---|
utils_convertData | 異なるエンコード形式 (utf8、16 進数、base64、バイナリ) 間でデータを変換します。パラメータ: - data (必須): 変換する文字列from (必須): ソースエンコード形式 (utf8、16 進数、base64、またはバイナリ) - to (必須): ターゲットエンコード形式 (utf8、16 進数、base64、またはバイナリ)例: - UTF-8 から 16 進数: {"data": "hello world", "from": "utf8", "to": "hex"} → 68656c6c6f20776f726c64 - UTF-8 から base64: {"data": "Hello World", "from": "utf8", "to": "base64"} → SGVsbG8gV29ybGQ= - base64 から UTF-8: {"data": "SGVsbG8gV29ybGQ=", "from": "base64", "to": "utf8"} → Hello World - 16 進数から base64: {"data": "68656c6c6f20776f726c64", "from": "hex", "to": "base64"} → aGVsbG8gd29ybGQ= 注: - すべてのパラメータは必須です - ツールは変換されたデータを文字列として返します - バイナリ変換の場合、データはバイト値の配列として表されます | "SGVsbG8gV29ybGQ=" (UTF-8の「Hello World」をbase64に変換) |
MNEEツール
MNEE トークンを操作するためのツール:
ツール名 | 説明 | 出力例 |
---|---|---|
mnee_getBalance | ウォレットの現在のMNEEトークン残高を取得します | {"balance": {"amount": 2900, "decimalAmount": 0.029}} |
mnee_sendMnee | MNEEトークンを指定のアドレスに送信します。MNEEとUSDの両方の金額をサポートします。 | {"success": true, "txid": "d1ce853934964e6c1fe9f44c918a824f175c6ab466b966f49ebc0682a8318895", "rawtx": "0100000002a0be40d8942015f1...", "mneeAmount": 0.01, "usdAmount": "$0.01", "recipient": "15mNxEkyKJXPD8amic6oLUjS45zBKQQoLu"} |
mnee_parseTx | MNEE取引を解析して、その操作と金額に関する詳細情報を取得します。金額はすべて小数点以下5桁の原子単位で表されます(例:1000原子単位 = 0.01 MNEE)。 | {"txid": "d1ce853934964e6c1fe9f44c918a824f175c6ab466b966f49ebc0682a8318895", "environment": "production", "type": "transfer", "inputs": [{"address": "18izL7Wtm2fx3ALoRY3MkY2VFSMjArP62D", "amount": 2900}], "outputs": [{"address": "15mNxEkyKJXPD8amic6oLUjS45zBKQQoLu", "amount": 1000}, {"address": "19Vq2TV8aVhFNLQkhDMdnEQ7zT96x6F3PK", "amount": 100}, {"address": "18izL7Wtm2fx3ALoRY3MkY2VFSMjArP62D", "amount": 1800}]} |
MCP でのツールの使用
接続すると、AIアシスタントを介して自然言語でBitcoin SVと対話できるようになります。プロンプトの例を以下に示します。
ウォレット操作
- 「Bitcoin SVアドレスを取得する」
- 「0.01 BSVを1ExampleBsvAddressXXXXXXXXXXXXXXXXXXに送金する」
- 「1ExampleBsvAddressXXXXXXXXXXXXXXXXXXに5米ドル相当のBSVを送信してください」
- 「0.01 MNEEを1ExampleBsvAddressXXXXXXXXXXXXXXXXXXに送金する」
- 「MNEE残高を確認する」
- 「このMNEEトランザクションを解析する: txid」
- 「ウォレットのキーを使用してこのメッセージを暗号化する」
- 「以前暗号化されたこのデータを復号化してください」
- 「このNFTリストを購入: txid_vout」
- 「このBSV-20トークンリストを購入: txid_vout」
序数(NFT)
- 「アウトポイント6a89047af2cfac96da17d51ae8eb62c5f1d982be2bc4ba0d0cd2084b7ffed325_0のNFTに関する情報を表示してください」
- 「Pixel Zoide NFTを検索」
- 「BSV NFTの現在のマーケットプレイスリストを表示」
- 「ティッカーPEPEのBSV-20トークンリストを表示」
- 「最近のBSV-20トークンセール情報を入手」
ブロックチェーン運用
- 「現在のBSVの価格はいくらですか?」
- 「このBSVトランザクションをデコードします: (トランザクションの16進数またはID)」
- 「最新のビットコインSVチェーン情報を入手する」
- 「高さ800000のブロックの詳細を表示」
- 「アドレス 1ExampleBsvAddressXXXX の取引履歴を調べる」
- 「ウォレットアドレスの未使用出力(UTXO)を確認する」
- 「ハッシュ a1b2c3d4e5f6 のトランザクションの詳細を取得します...」
データ変換
- 「『Hello World』をUTF-8から16進形式に変換する」
MCPの仕組み
MCP 対応の AI アシスタントと対話する場合:
- AIがあなたのリクエストを分析し、どのツールを使用するかを決定します
- 承認されると、適切なBSV MCPツールが呼び出されます。
- サーバーはビットコインSVブロックチェーン上で要求された操作を実行する
- 結果はAIアシスタントに返されます
- アシスタントは自然な会話形式で情報を提示します
トラブルシューティング
サーバーへの接続に問題がある場合:
- パッケージの依存関係が適切にインストールされていることを確認します:
bun install
- WIF秘密鍵が環境に正しく設定されていることを確認します
- クライアントがMCPをサポートし、適切に構成されていることを確認してください。
- クライアントのコンソール出力でエラーメッセージを探します
Claude for Desktop の場合は、次のログを確認してください。
カーソルの場合は、[設定] → [拡張機能] → [モデル コンテキスト プロトコル] でカーソル MCP ログを確認します。
最近の更新
- ブロックチェーンエクスプローラー:メインネット/テストネットをサポートするWhatsOnChain APIアクセス用の
bsv_explore
ツールを追加しました - 統合ツール:
wallet_encrypt
/wallet_decrypt
単一のwallet_encryption
ツールに統合しました - 強化されたマーケットプレイス:出品、販売、購入におけるNFT、BSV-20/21トークンのサポート
- パフォーマンス: 価格キャッシュの追加とAPIエンドポイント構造の最適化
- 検証の改善:秘密鍵とパラメータのエラー処理の改善
Bitcoin SV ブロックチェーンエクスプローラー
bsv_explore
ツールは、WhatsOnChain APIを介してBitcoin SVブロックチェーンへの包括的なアクセスを提供します。この強力なエクスプローラーツールを使用すると、チェーンデータ、ブロック、トランザクション、アドレス情報など、ブロックチェーンのさまざまな側面を照会できます。
利用可能なエンドポイント
このツールは、次のエンドポイント カテゴリと特定のエンドポイントをサポートしています。
チェーンデータ
終点 | 説明 | 必須パラメータ | 回答例 |
---|---|---|---|
chain_info | ネットワーク統計、難易度、チェーンワーク | なし | {"chain":"main","blocks":826458,"headers":826458,"bestblockhash":"000000000000..."} |
chain_tips | 高さや状態を含む現在のチェーンのヒント | なし | [{"height":826458,"hash":"000000000000...","branchlen":0,"status":"active"}] |
circulating_supply | 現在のBSV流通供給量 | なし | {"bsv":21000000} |
peer_info | 接続されたピアの統計 | なし | [{"addr":"1.2.3.4:8333","services":"000000000000...","lastsend":1621234567}] |
ブロックデータ
終点 | 説明 | 必須パラメータ | 回答例 |
---|---|---|---|
block_by_hash | ハッシュによるブロックデータの完全化 | blockHash | {"hash":"000000000000...","confirmations":1000,"size":1000000,...} |
block_by_height | 高さでブロックデータを完了する | blockHeight | {"hash":"000000000000...","confirmations":1000,"size":1000000,...} |
tag_count_by_height | 特定のブロックのタグ数の統計 | blockHeight | {"tags":{"amp":3,"bitkey":5,"metanet":12,"planaria":7,"b":120}} |
block_headers | 最後の10個のブロックヘッダーを取得します | なし | [{"hash":"000000000000...","height":826458,"version":536870912,...},...] |
block_pages | 大きなブロックのトランザクションIDのページを取得します | blockHash 、オプション: pageNumber | ["tx1hash","tx2hash","tx3hash",...] |
統計データ
終点 | 説明 | 必須パラメータ | 回答例 |
---|---|---|---|
block_stats_by_height | 特定の高さのブロック統計 | blockHeight | {"size":123456,"txCount":512,"outputTotal":54.12345678,"outputTotalUsd":2345.67,...} |
block_miner_stats | 一定期間のブロックマイニング統計 | オプション: days (デフォルトは7) | {"blocks":{"miner1":412,"miner2":208,...},"total":1008} |
miner_summary_stats | 鉱業統計の概要 | オプション: days (デフォルトは7) | {"totalBlocks":1008,"totalFees":1.23456789,"totalFeesUsd":53.67,...} |
取引データ
終点 | 説明 | 必須パラメータ | 回答例 |
---|---|---|---|
tx_by_hash | 詳細な取引データ | txHash | {"txid":"a1b2c3d4e5f6...","version":1,"locktime":0,"size":225,...} |
tx_raw | 生のトランザクション16進データ | txHash | "01000000012345abcdef..." |
tx_receipt | 取引領収書 | txHash | {"blockHash":"000000000000...","blockHeight":800000,"confirmations":26458} |
bulk_tx_details | 1回のリクエストで複数のトランザクションを取得する | txids (配列) | [{"txid":"a1b2c3d4e5f6...","version":1,...}, {"txid":"b2c3d4e5f6a7...","version":1,...}] |
住所データ
終点 | 説明 | 必須パラメータ | 回答例 |
---|---|---|---|
address_history | 住所の取引履歴 | address 、オプション: limit | [{"tx_hash":"a1b2c3d4e5f6...","height":800000},...] |
address_utxos | アドレスの未使用出力 | address | [{"tx_hash":"a1b2c3d4e5f6...","tx_pos":0,"value":100000},...] |
ネットワーク
終点 | 説明 | 必須パラメータ | 回答例 |
---|---|---|---|
health | APIヘルスチェック | なし | {"status":"synced"} |
使用例
bsv_explore
ツールは、次のような自然言語プロンプトで使用できます。
内部的には、ツールは取得するデータを指定するためのパラメータを受け入れます。
endpoint
: クエリする特定の WhatsOnChain エンドポイント (例:chain_info
、tx_by_hash
)network
: 使用するBSVネットワーク(main
またはtest
)- 特定のエンドポイントに必要な追加パラメータ:
blockHash
: block_by_hash および block_pages エンドポイント用blockHeight
: block_by_height、tag_count_by_height、block_stats_by_heightエンドポイントの場合pageNumber
: block_pagesエンドポイント(ページネーション)days
: block_miner_stats および miner_summary_stats エンドポイントの場合 (デフォルトは 7)txHash
: トランザクション関連のエンドポイント (tx_by_hash、tx_raw、tx_receipt)txids
: bulk_tx_detailsエンドポイント用(トランザクションIDの配列)address
: アドレス関連のエンドポイントの場合limit
: address_history のページ区切り制限(オプション)
ネットワークオプション
このツールはメインネットとテストネットの両方をサポートしています。
main
: Bitcoin SV メインネット(デフォルト)test
:Bitcoin SV テストネット
発達
サーバーの実行
テストの実行
ライセンス
このプロジェクトは MIT ライセンスに基づいてライセンスされています - 詳細についてはLICENSEファイルを参照してください。
This server cannot be installed
AI アシスタントがウォレット操作、序数 (NFT)、およびさまざまなブロックチェーン ユーティリティを通じて BSV ブロックチェーンと対話できるようにする、モデル コンテキスト プロトコル用の Bitcoin SV ツールのコレクション。