Hedera MCP Server について
Hedera MCP ServerはLangchainラッパーを介してHederaネットワークと連携し、自然言語でネットワーク操作を行う用途に対応します。MCPリクエストを稼働中のプロキシに渡し、トークン作成、HBAR送金、スマートコントラクト操作を実行します。
主な機能
- 01Langchainプロキシ経由でHederaを呼び出し
- 02トークン作成とHBAR送金
- 03スマートコントラクトとの連携
- 04トークンによるSSE接続認証
活用シーン
- 01自然言語でHederaを操作
- 02トークン作成またはHBAR送金
- 03Hederaスマートコントラクトの呼び出し
- 04認証トークンを使ったMCPサーバー接続
MCP 対応
MCPサーバーはリクエストをLangchainラッパーに転送し、Hederaネットワーク上の操作を実行します。SSE接続はX-MCP-AUTH-TOKENで認証します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Hedera MCP サーバー
このプロジェクトは、Langchain ラッパーと連携して Hedera ネットワークを操作するサーバーを提供します。Langchain のセットアップを通じて自然言語コマンドを利用し、Hedera の操作を実行できます。
前提条件
開始する前に、以下がインストールされていることを確認してください。
- Node.js(20 以降を推奨)
- pnpm(
npm install -g pnpm) - Git
クイックスタート
全体は、実行が必要な 2 つのサービスで構成されています。
-
リポジトリをクローンします:
git clone https://github.com/mateuszm-arianelabs/hedera-mcp-server.git cd hedera-mcp-server -
各パッケージの環境変数を設定します:
- .env.example ファイルをコピーし、以下の 2 か所で .env を作成する必要があります。
- packages/langchain-proxy
- packages/mcp-server
- .env.example ファイルをコピーし、以下の 2 か所で .env を作成する必要があります。
.env ファイルを編集し、必要な設定値(Hedera のキー、ネットワークの詳細など)を入力してください。
API_URL= # url to langchain proxy endpoint
PORT= # port on which MCP server will be started
MCP_AUTH_TOKEN= # array of accepted tokens separated by comas
LANGCHAIN_PROXY_TOKEN= # token for accessing the Langchain proxy
-
依存関係をインストールします:
pnpm install -
Lang chain Proxy Service を起動します
pnpm run dev:lc(本番モードの場合は
pnpm startを使用します。ただし、設定されている場合に限ります)。 -
MCP サーバーを実行します:
pnpm run dev:mcp(本番モードの場合は
pnpm startを使用します。ただし、設定されている場合に限ります)。
利用可能なツール
- Hedera を操作する: この主要機能により、サーバーは実行中の Langchain ラッパーサービスにリクエストを送信できます。ラッパーはリクエストを解釈し、Hedera ネットワーク上で対応する操作(トークンの作成、HBAR の送金、スマートコントラクトとのやり取りなど)を実行します。
Visual Studio Code の設定
MCP サーバーに接続するには、X-MCP-AUTH-TOKEN ヘッダーが必要です。
以下は、Visual Studio Code の .vscode/settings.json 設定例です。
{
"mcp": {
"inputs": [],
"servers": {
"hedera": {
"type": "sse",
"url": "http://localhost:3000/sse",
"headers": { "X-MCP-AUTH-TOKEN": "your-mcp-auth-token"}
}
}
}
}
注:現在、Cursor IDE では X-MCP-AUTH-TOKEN などの追加ヘッダーを渡すことはサポートされていません。
出典:Cursor Forum
ただし、MCP の連携機能は急速に進化しており、今後の Cursor やその他の MCP クライアントツールのバージョンでは、カスタムヘッダーがサポートされる見込みです。
OAuth への移行の可能性
2025 年 3 月時点で、公式の MCP OAuth 仕様は公開されていますが、いくつかの制限や実装上の課題が残っています。アプローチは改訂される可能性があります(出典)。
今後の OAuth 連携に備えて、MCP + OAuth のセットアップ例を紹介するリポジトリを以下に示します。
これらは、今後の開発段階で MCP サーバーに OAuth ベースの認証を導入する際の参考として利用できます。
簡略化したアーキテクチャ

API ドキュメント(langchain-proxy)
GET /sse
MCP サーバーとの Server-Sent Events(SSE)接続を確立します。
リクエスト
GET /sse
X-MCP-AUTH-TOKEN: example-token
| Header | Type | Description |
|---|---|---|
| X-MCP-AUTH-TOKEN | string | サーバーの env ファイル(MCP_AUTH_TOKEN 変数)にあるトークンのいずれかと一致する必要がある必須の認証トークン |
レスポンス
認証に成功すると、コンテンツタイプ text/event-stream で SSE 接続を確立します。
ステータスコード
200 OK:接続が正常に確立されました
401 Unauthorized:認証トークンが無効、または指定されていません
エラーレスポンス
{
"content": [
{
"type": "text",
"content": "Unauthorized: Invalid or missing X-MCP-AUTH-TOKEN header"
}
]
}
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。