Hedera Testnet Mirror Node MCP Server

Hedera テストネット ミラー ノード MCP サーバー

このリポジトリには、Hedera Testnet Mirror Node APIと連携するModel Context Protocol(MCP)サーバーが含まれています。このサーバーは、MCPサーバー作成用のTypeScriptフレームワークであるFastMCPを使用して構築されています。入力検証にはZodスキーマを使用しています。

特徴

  • エンドポイント統合: OpenAPI 仕様形式で定義された Hedera ミラー ノード API を MCP 互換ツールに自動的に変換します。
  • サーバー送信イベント (SSE) サポート: クライアントは SSE トランスポート経由でこの MCP サーバーに接続できません。
  • スキーマ検証: Zod を使用して、リクエスト パラメータが定義されたスキーマに準拠していることを確認します。

前提条件

サーバーを実行する前に、以下がインストールされていることを確認してください。

  • Bun 、または Typescript を直接実行できるその他の環境。

インストール

(1)リポジトリのクローンを作成する

git clone https://github.com/hedera-dev/mirrornode-mcp-server

(2)プロジェクトディレクトリに移動する

cd mirrornode-mcp-server

(3)依存関係をインストールする

npm install

使用法

MCP サーバーを起動するには:

bun mcpServer.ts

起動が成功すると、次のように表示されます。

MCP server started

サーバーは構成された SSE エンドポイントを介してアクセス可能になります。

http://localhost:3333/hedera-testnet-mirror-node-api/sse

プロジェクト構造

  • mcpServer.ts : MCP サーバーを初期化して起動するエントリ ポイント。
  • openApiZod.ts : ミラー ノード API エンドポイント定義と、 zodios ( zodスキーマ定義が拡張されたaxiosなど) を使用する API クライアントが含まれています。
    • このファイルはopenapi-zod-clientを使用してプログラム的に生成され、いくつかの手動変更が加えられていることに注意してください。

仕組み

(1)APIクライアントの作成

createApiClient関数を使用して、Hedera Testnetミラーノード用のAPIクライアントが作成されます。MCPサーバーは、このHTTP APIクライアントと独自のSSEトランスポート間のプロキシとして機能します。

(2)エンドポイント変換:

endpointDefinitionsからの各エンドポイント定義は、 convertZodiosToMcp関数によって処理されます。

  • エンドポイントがGETメソッドを使用していることを検証します。
  • パラメータを Zod スキーマにマップします。
  • 対応する API 呼び出しを行って結果を返す実行関数を定義します。
  • ツールを MCP サーバーに登録します。

(3)サーバーの初期化:

MCP サーバーは SSE トランスポートを使用して起動されます。

依存関係

  • FastMCP : MCP サーバーを構築するためのフレームワーク。
  • Zod : TypeScript ファーストのスキーマ宣言および検証ライブラリ。
  • openapi-zod-client : OpenAPI 仕様ファイルから Zodios コードを生成します。

著者

ブレンダン・グラーツ

ライセンス

マサチューセッツ工科大学

-
security - not tested
-
license - not tested
-
quality - not tested

Hedera Testnet Mirror Node API とインターフェースし、OpenAPI 定義のエンドポイントを Server-Sent Events (SSE) 経由でアクセスできる MCP 互換ツールに変換するサーバー。

  1. Features
    1. Prerequisites
      1. Installation
        1. Usage
          1. Project Structure
            1. How It Works
              1. Dependencies
                1. Author
                  1. Licence
                    ID: vw3yykkxod