Satstream MCP Server について
Satstream MCP Serverは、オンチェーンデータを調べるユーザー向けに、SatstreamのBitcoinブロックチェーンAPIをMCP対応環境に提供します。アドレス、ブロック、取引、メンプールに加え、OrdinalsのインスクリプションやRunesを扱います。
主な機能
- 01アドレス、残高、履歴、UTXOの照会
- 02Bitcoinアドレスの検証
- 03ブロックと取引の詳細取得
- 04ブロックチェーンとメンプール情報の照会
- 05OrdinalsインスクリプションとRunesの検索
活用シーン
- 01アドレスの残高と取引履歴を確認
- 02高さまたはハッシュでブロック情報を取得
- 03未確認取引とメンプール統計を確認
- 04インスクリプションやRuneの情報を検索
MCP 対応
CursorなどのMCP対応環境に、Bitcoinデータを照会するSatstream APIツールを提供します。利用にはSATSTREAM_API_KEYが必要です。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Satstream MCP サーバー
Satstream の Bitcoin データ API にアクセスできる Model Context Protocol(MCP)サーバーです。
セットアップ
依存関係をインストールするには:
bun install
API キーを指定して実行するには:
export SATSTREAM_API_KEY="your-api-key-here"
bun run index.ts
または、コマンドライン引数として API キーを渡します:
bun run index.ts your-api-key-here
Satstream について
Satstream は、トランザクション、アドレス、ブロックのほか、Ordinals インスクリプションや Runes トークンなどの特殊なデータを含む、リアルタイムのブロックチェーンデータにアクセスできる包括的な Bitcoin ブロックチェーン API サービスです。
API キーの取得
この MCP サーバーを使用するには、Satstream API キーが必要です。以下の手順で取得できます。
- Satstream ドキュメントにアクセスします
- アカウントを登録します
- ダッシュボードから API キーを生成します
無料プランでは、レート制限付きで基本機能を利用できます。有料プランでは、より高いレート制限や追加機能を利用できます。
利用可能な MCP 機能
Bitcoin データのクエリには、以下の MCP 機能を利用できます。
アドレス機能
| 機能名 | 説明 | パラメーター |
|---|---|---|
address_get | Bitcoin アドレスの詳細情報を取得します | address: Bitcoin アドレス |
address_balance_get | Bitcoin アドレスの残高を取得します | address: Bitcoin アドレス |
address_deltas_get | アドレスのトランザクション履歴を取得します | address: Bitcoin アドレス、および任意のページネーションパラメーター |
address_validate | Bitcoin アドレスを検証します | address: Bitcoin アドレス |
address_outputs_get | Bitcoin アドレスの UTXO を取得します | address: Bitcoin アドレス、type: 任意の UTXO タイプフィルター |
address_rune_deltas_get | アドレスの Rune トークン履歴を取得します | address: Bitcoin アドレス、および任意のページネーションパラメーター |
ブロックチェーン機能
| 機能名 | 説明 | パラメーター |
|---|---|---|
block_get | ハッシュまたは高さを指定してブロック情報を取得します | identifier: ブロックのハッシュまたは高さ |
blockchain_info | 現在のブロックチェーン統計とネットワーク情報を取得します | random_string: 任意のダミーパラメーター |
transaction_get | トランザクションの詳細を取得します | txid: トランザクション ID |
メモリプール機能
| 機能名 | 説明 | パラメーター |
|---|---|---|
mempool_info_get | メモリプールの統計情報を取得します | random_string: 任意のダミーパラメーター |
mempool_transactions_get | 未確認のトランザクションを一覧表示します | 任意のページネーションパラメーター |
Ordinals および Runes 機能
| 機能名 | 説明 | パラメーター |
|---|---|---|
ordinals_inscription_get | Ordinals インスクリプションのデータを取得します | inscription_id: インスクリプション ID |
rune_get | 特定の Rune に関する情報を取得します | identifier: Rune の名前または ID |
runes_latest_get | 最新の Rune を取得します(先頭の 100 件) | random_string: 任意のダミーパラメーター |
runes_page_get | 指定したページの Rune を取得します | page: ページ番号 |
使用例
アドレス情報を取得する
address_get({ address: "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa" })
Bitcoin アドレスを検証する
address_validate({ address: "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa" })
ブロック情報を取得する
block_get({ identifier: "000000000019d6689c085ae165831e934ff763ae46a2a6c172b3f1b60a8ce26f" })
ブロックチェーンの統計情報を取得する
blockchain_info({ random_string: "dummy" })
アドレスの残高を取得する
address_balance_get({ address: "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa" })
タイプで絞り込んでアドレスの UTXO を取得する
address_outputs_get({
address: "1A1zP1eP5QGefi2DMPTfTL5SLmv7DivfNa",
type: "cardinal"
})
特定の Rune に関する情報を取得する
rune_get({ identifier: "UNCOMMON•GOODS" })
最新の Rune を取得する
runes_latest_get({ random_string: "dummy" })
MCP 連携
このサーバーは、Cursor や Model Context Protocol に対応したその他の環境で使用できるよう設計されています。機能の詳細や使用方法については、function-descriptions.jsonを参照してください。
このプロジェクトは、高速なオールインワンの JavaScript ランタイムである Bun を使用して作成されました。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。