mcpField
C
CometBFT validator ops

CometBFT validator ops

ローカル
github.com/wookja-0金融データ14 日前に更新

CometBFT validator ops について

CometBFT validator ops は、Cosmos SDK 系やその他の CometBFT チェーンでノードとバリデーターを監視する運用者向けの読み取り専用 MCP サーバーです。ノード、コンセンサス、スラッシング、アップグレードのデータを安定した検出結果にまとめ、インフラを変更する機能はありません。

主な機能

  1. 01フリートとノードの状態確認
  2. 02バリデーターの署名状況とジャイルリスク分析
  3. 03ピア接続の確認
  4. 04コンセンサス停止の診断
  5. 05アップグレード計画とバージョン差の確認
  6. 06日次チェックとインシデントトリアージのプロンプト

活用シーン

  1. 01バリデーターの署名状況とジャイルリスクを確認
  2. 02チェーンがブロック生成を停止した原因を特定
  3. 03アップグレード前に同期、ピア接続、バージョン差を確認

MCP 対応

フリート、バリデーター、ピア、コンセンサス、アップグレードを確認する読み取り専用ツールとプロンプトを MCP クライアントに提供します。設定された CometBFT RPC エンドポイントを読み取り、任意で Cosmos SDK REST データも参照します。

設定

ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。

mcp.json · 共通設定
{
"mcpServers": {
"wookja-0-cometbft": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/wookja-0/cometbft-mcp:0.4.5"
]
}
}
}
起動コマンドdocker run -i --rm ghcr.io/wookja-0/cometbft-mcp:0.4.5

ローカルサーバーにはマシン上の実行環境(Node.js 18 以上など)が必要です。設定ファイルの場所はクライアントごとに異なります。

パッケージ
ocighcr.io/wookja-0/cometbft-mcp:0.4.5

ツール

ツール一覧はまだ取得されていません

ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。

詳細

cometbft-mcp

CI e2e Release Go MCP Registry Glama Container License

CometBFT ノードおよびバリデーター運用者向けの読み取り専用 MCP サーバーです。

エージェントに 「バリデーターは署名していますか?」、「ジャイルまであとどれくらいですか?」、「チェーンが停止したのはなぜですか?」、「アップグレードの準備はできていますか?」 と尋ねると、自分のノードとチェーン固有のスラッシング状態に基づく回答が得られます。運用者と同じ視点で状況を判断し、何も変更することはできません。

あらゆる CometBFT チェーン(Cosmos Hub、Osmosis、あらゆる Cosmos SDK チェーン、非 SDK の CometBFT アプリ)と、あらゆる MCP クライアント(Claude Code、Claude Desktop、Cursor、VS Code、Codex、Gemini CLI、…)で動作します。

警告

初期リリース(v0.4)です。ツール API は今後変更される可能性があります。

デモ:フリートチェックは正常を返します。val3 が停止すると validator_health はダウンタイムジャイルまであと19回のミスを報告し、さらに val2 も停止すると consensus_diagnosis は val3 と val2 を挙げて no_quorum を報告します
同梱のローカルネットに対する実際のツール出力です。ノードは実際に停止され、待ち時間は短縮されています。再現する。

目次: 質問できること · クイックスタート · インストール · クライアントの接続 · 設定 · ツール · セキュリティモデル · 判定方法 · トラブルシューティング · FAQ · 開発

質問できること

同梱のローカルネットワークからの実際の出力です。

バリデーターは署名していますか — ジャイルまでどれくらいですか?

「val3 は署名していますか?ジャイルされるまでどれくらいですか?」

val3 [critical]: signed 26/30 blocks (88–117), missed 4 (13.33%), 4 missed in a row at the head;
21 more misses until downtime jail (~37s at the current rate)

コミット署名(バリデーター自体が停止している間も機能します)と、チェーン固有の x/slashing カウンターを読み取り、SDK とまったく同じ方法でジャイルのしきい値を計算します。

ブロックが停止したのはなぜですか?

「チェーンがブロックを生成していません。なぜですか?」

height 115 round 0 (Prevote) for 60s [critical]: prevotes 50.1%, precommits 0.0% of power —
no_quorum; not voting: val3, val2

「オンラインの投票力が足りない — そして応答していないのは誰か」と、「バリデーターはオンラインだがコミットしていない」(アップグレードによる停止、アプリハッシュエラーなど)を区別して伝えます。50.1%は誤植ではありません。この実行中に val2 は以前、ダウンタイムにより1%のスラッシングを受けていました。

アップグレードの準備はできていますか?

「アップグレードは予定されていますか? すべてのノードが同じバージョンですか?」

localnet-1 [ok]: upgrade <untrusted>v2-e2e</untrusted> at height 10000000 in ~164d20h (9999969 blocks)

測定したブロック時間に基づくETA付きのx/upgrade計画、投票中のアップグレード提案、ノード間のバージョン差を確認できます。<untrusted>は、チェーンに由来するテキスト(ここではガバナンス提案)を示すため、エージェントはこれをデータとして扱います。

すべて問題ありませんか?

「毎日のチェックを実行して」 — またはdaily_checkプロンプトを使用してください。

[critical] 5 nodes (4 ok, 1 critical), 4 validators (3 ok, 1 critical); localnet-1 [ok]: no upgrade scheduled — needs attention: val3

ほかにも、「val0は本当にセンチネルの背後にいますか?」(peer_healthは、パブリックアドレスのピアを持つバリデーターを検出します)、「遅れ始めているノードはありますか?」、そして1つのノードを証拠優先で診断するincident_triageがあります。

クイックスタート(1分、パブリックRPC)

ノードへのアクセスは不要です。パブリックRPCを指定し、コンセンサスアドレスを使って任意のバリデーターを監視できます。

go install github.com/wookja-0/cometbft-mcp/cmd/cometbft-mcp@latest

cat > hub.yaml <<'EOF'
cosmos:
  rest: https://cosmos-rest.publicnode.com
nodes:
  - name: public
    role: full
    rpc: https://cosmos-rpc.publicnode.com:443
  - name: my-validator
    role: validator
    validator_address: cosmosvalcons1...   # yours, or any validator's
EOF

cometbft-mcp check --config hub.yaml
claude mcp add cometbft -- cometbft-mcp --config "$PWD/hub.yaml" --concurrency 8

次に、*「my-validatorは署名していますか? ジェイルまでどのくらいですか?」*と尋ねます。

validator_addressはコンセンサスアドレス(…valcons1…または40文字の16進数)です。ウォレット(cosmos1…)やオペレーター(cosmosvaloper1…)のアドレスではありません。バリデーター上で<appd> comet show-addressを実行するか、/status → validator_info.addressから、またはエクスプローラーで確認できます。

インストール

方法
バイナリReleasesから入手できるLinuxおよびmacOS(amd64/arm64)版。ビルドの来歴を証明するアテステーション付き:gh attestation verify <file> --repo wookja-0/cometbft-mcp
Gogo install github.com/wookja-0/cometbft-mcp/cmd/cometbft-mcp@latest
コンテナghcr.io/wookja-0/cometbft-mcp — distroless、非root。必要なホストアクセスは、読み取り専用でマウントする設定ファイルのみです
MCP Registryio.github.wookja-0/cometbft-mcpとして登録
Glamaglama.ai/mcp/servers/wookja-0/cometbft-mcp

cometbft-mcp MCP サーバー – Glamaでの品質およびメンテナンススコア

クライアントを接続する

絶対パスを使用してください。ほとんどのクライアントは~を展開しません。

Claude Code
claude mcp add cometbft -- cometbft-mcp --config /Users/you/.config/cometbft-mcp/config.yaml
Claude Desktop

~/Library/Application Support/Claude/claude_desktop_config.json(macOS):

{
  "mcpServers": {
    "cometbft": {
      "command": "cometbft-mcp",
      "args": ["--config", "/Users/you/.config/cometbft-mcp/config.yaml"]
    }
  }
}
Cursor

~/.cursor/mcp.json:

{
  "mcpServers": {
    "cometbft": {
      "command": "cometbft-mcp",
      "args": ["--config", "/Users/you/.config/cometbft-mcp/config.yaml"]
    }
  }
}
VS Code

.vscode/mcp.json:

{
  "servers": {
    "cometbft": {
      "type": "stdio",
      "command": "cometbft-mcp",
      "args": ["--config", "/Users/you/.config/cometbft-mcp/config.yaml"]
    }
  }
}
Codex CLI

~/.codex/config.toml:

[mcp_servers.cometbft]
command = "cometbft-mcp"
args = ["--config", "/Users/you/.config/cometbft-mcp/config.yaml"]
Gemini CLI

~/.gemini/settings.json:

{
  "mcpServers": {
    "cometbft": {
      "command": "cometbft-mcp",
      "args": ["--config", "/Users/you/.config/cometbft-mcp/config.yaml"]
    }
  }
}
Docker(任意のクライアント)
{
  "mcpServers": {
    "cometbft": {
      "command": "docker",
      "args": ["run", "-i", "--rm",
               "--mount", "type=bind,src=/Users/you/.config/cometbft-mcp/config.yaml,dst=/config/config.yaml,readonly",
               "ghcr.io/wookja-0/cometbft-mcp:0.4.2"]
    }
  }
}

または、マウントを省略し、設定をインラインで渡します。イメージ名の前に"-e", "COMETBFT_MCP_CONFIG_YAML={nodes: [...]}"を指定してください。

コンテナ内の127.0.0.1はコンテナ自体を指します。ホスト上のSSHトンネルに接続するには、設定でhost.docker.internal(Docker Desktop)を指定するか、Linuxでは--network hostを追加してください。

## 設定

設定の読み込み元は、次の順に確認され、最初に見つかったものが使われます。

  1. --config <path>
  2. $COMETBFT_MCP_CONFIG_YAML — ファイルではなく環境変数を受け取る環境(コンテナ、ホスト型の MCP ランナーなど)向けの YAML そのものです。フロースタイルなら 1 行に収まります。
    COMETBFT_MCP_CONFIG_YAML='{cosmos: {rest: "https://cosmos-rest.publicnode.com"}, nodes: [{name: public, role: full, rpc: "https://cosmos-rpc.publicnode.com:443"}]}'
    
  3. $COMETBFT_MCP_CONFIG — パス
  4. ~/.config/cometbft-mcp/config.yaml

コメント付きの config.example.yaml をひな形として使用してください。

# Optional: the Cosmos SDK layer (jail status, slashing margin, upgrades, monikers).
# Chain state is the same on every node: use a sentry's or full node's REST API.
cosmos:
  rest: http://127.0.0.1:1317

nodes:
  - name: sentry-1
    role: sentry                     # validator | sentry | full
    rpc: http://127.0.0.1:26657      # CometBFT RPC
  - name: val-1
    role: validator
    rpc: http://127.0.0.1:36657
    validator_address: cosmosvalcons1...   # keeps validator_health working while it is down
  - name: val-2
    role: validator                  # no rpc: watched by address only
    validator_address: cosmosvalcons1...
フィールド
cosmos.rest同期済みの任意のノードの Cosmos SDK REST(app.toml の [api]、ポート 1317)です。SDK 以外のチェーンでは省略してください。
nodes[].nameエージェントがノードを参照するときに使用する小文字の名前です。
nodes[].rolevalidator、sentry、full のいずれかです。コミットはまず sentry と full ノードから読み取り、validator の負荷を抑えます。
nodes[].rpcCometBFT RPC(ポート 26657)です。validator_address が設定されている validator では省略できます。
nodes[].validator_addressvalidator のみ:コンセンサスアドレスです。16 進数または bech32 の …valcons1… を指定します。

キー、ニーモニック、トークンを指定する場所は意図的に設けていません。シークレットに見えるフィールドは拒否されます。

ノードへの接続。 使用するのはポート 26657(および 1 台のノードのポート 1317、任意)のみです。CometBFT の RPC はデフォルトで 127.0.0.1 にバインドされるため、SSH トンネルを使えばノードの変更もポートの開放も不要です:ssh -N -L 36657:127.0.0.1:26657 val-1。このために RPC をインターネットに公開しないでください。

フラグデフォルト
--config上記を参照設定ファイルへのパス
--concurrency4すべてのノードに対する同時進行リクエスト数です。自分のノードへの負荷を抑えられます。パブリック RPC では 8 でも問題ありません。
--timeout10sリクエストごとのタイムアウト
--reveal-networkオフ生のピア IP、ノード ID、トランスポートエラーをモデルに表示します。

cometbft-mcp check は、設定を検証するために MCP クライアントを介さず、ローカルで node_status レポートを出力します。

使用可能な設定がなくてもサーバーは起動します。ツールは一覧に表示されたままになり、各呼び出しで作成すべき内容が説明されます(内部アドレスが含まれている可能性があるため、設定の内容がそのまま出力されることはありません)。ファイルを修正して、MCP サーバーを再起動してください。

ツール

すべてのツールは読み取り専用です(readOnlyHint)。各結果には、summary、level(ok / warn / critical / unknown)、および安定したコードを持つfindingsが含まれます。

fleet_overview — すべてを一度に確認

各ノードの問題を1行ずつ、各バリデーターのサマリー(直近50ブロック)、コンセンサスラウンド、アップグレードの状態を表示します。「すべて問題ないか」を確認するための出発点です。

引数はありません。

node_status — 各ノードは同期していますか?

ブロック高、前回のブロックからの経過秒数、catching_up、フリート内で最も高いノードからの遅延ブロック数、CometBFTとアプリのバージョンを表示します。バリデーターの場合は、コンセンサスアドレスと投票力も表示します。

引数
nodeノード名。すべてのノードを対象にする場合は省略

検出結果:unreachable、catching_up、stale_head、behind_fleet、no_voting_power、address_mismatch。

peer_health — 各ノードは適切に接続されていますか?

ピア数、受信/送信の内訳、公開アドレス上のピア数、別のチェーン上のピア数、および最長接続順のピア一覧(最大40件)を表示します。アドレスはクラスのみ表示されます。

引数
nodeノード名。すべてのノードを対象にする場合は省略

検出結果:no_peers、few_peers、no_outbound_peers、not_listening、validator_public_peers(セントリーの背後に配置する想定のバリデーターに公開ピアがある)、peers_on_other_chain。

validator_health — バリデーターは署名していますか?ジャイルまでどのくらいですか?

直近N個の正規ブロックにおける署名済み/nil投票/未署名/セット外の内訳、最新ブロックでの連続未署名数、最終署名ブロック高、投票力、セット内の順位と割合、平均ブロック時間を表示します。cosmos.restがある場合は、ジャイル/トゥームストーン化/ボンディングの状態、チェーンの未署名ブロックカウンター、max_missed、misses_until_jail、およびバリデーターが現在署名していない場合のtime_to_jailも表示します。

引数
nodeバリデーター名。設定済みのバリデーターが1つだけの場合は省略可能
windowスキャンするブロック数。10~500(デフォルトは100)

検出結果:not_signing、missed_blocks、left_active_set、not_in_active_set、partial_data、no_data。Cosmosの場合:jail_risk、jail_imminent、time_to_jail、jailed、tombstoned、not_bonded、jail_after_grace、no_signing_info、cosmos_unavailable。

consensus_diagnosis — ブロックが停止した原因は?

1つのノードから見たライブのラウンドを表示します。ブロック高、ラウンド、ステップ、このブロック高での経過時間、現在のラウンドにおける各バリデーターのprevoteとprecommit(block/nil/missing)、および投票力の3分の2超が投票しているかどうかを確認できます。バリデーターは設定名またはステーキングモニカーで表示されます。

引数
node読み取り元のノード。デフォルトは同期済みのセントリーまたはフルノード

検出結果:no_quorum(投票していない名前)、stuck_with_quorum、many_rounds、vote_set_mismatch。

upgrade_readiness — アップグレードが近づいていますか? (cosmos.restが必要です)

x/upgradeプラン(名前、ブロック高、残りブロック数、予定時刻)、投票期間中のソフトウェアアップグレード提案、各ノードのアプリとCometBFTのバージョンを表示します。cosmos.restが設定されている場合(またはサーバーにまだ設定がなく、ディレクトリにすべてのツールを表示する場合)にのみ登録されます。各ホストで新しいバイナリが配置済みかどうかは確認できず、その旨を示します。

引数はありません。

検出結果:upgrade_soon、upgrade_height_reached、upgrade_halt、version_skew、plan_unavailable、proposals_unavailable。

プロンプト: daily_check(全体を確認し、フラグが立った項目を詳しく調べ、オペレーター向けブリーフィングとして報告)とincident_triage(引数はnode、任意のsymptom:証拠を優先して診断し、最後にホスト上で確認すべき項目を提示します)。

セキュリティモデル

バリデーターの運用者が、インフラストラクチャについて LLM を信頼しなくても済むように、このサーバーは「問題を起こさない」と約束するのではなく、問題を起こせないように構築されています。

  • 鍵は一切扱いません。 priv_validator_key.json、キ―リング、ニーモニックを指す設定項目はありません。秘密情報に見える項目名は拒否されます。設定以外のファイルシステムは読み取りません。
  • 設計上、読み取り専用です。 1 つの HTTP クライアントが、ハードコードされた許可リストにある CometBFT の /status、/net_info、/validators、/commit、/consensus_state、/abci_info、/health と、Cosmos SDK のスラッシング、ステーキング、アップグレード、ガバナンス関連クエリに対してのみ GET を実行します。broadcast_*、unsafe_*、dial_*、check_tx、ピアアドレスを列挙する /dump_consensus_state、および /cosmos/tx/ は全面的に拒否されます。パスパラメーターはパターンチェックされ、リダイレクトは追跡されず、レスポンスのサイズには上限が設けられています。
  • ネットワークの詳細はマスクされます。 ピアの IP は private-ipv4、public-ipv4 などのクラスとしてのみ表示され、ノード ID は一部が省略されます。また、エラーにアドレスが含まれることはありません。そのため、セントリーで保護されたバリデーターの IP が LLM プロバイダーのログに残ることはありません。--reveal-network を指定すると、明示的にこの機能が無効になります。
  • ノードからのテキストは信頼されません。 モニカー、バージョン、エラーメッセージ、アップグレード計画など、ノードまたは REST サーバーが制御するすべての内容は <untrusted> タグで囲むか、想定される形式と一致する必要があります。これにより、悪意のあるピアや公開 RPC がエージェントに指示を注入することを防ぎます。
  • ノードに負荷をかけません。 全体の同時実行数に上限を設け、ブロックスキャンの範囲を制限しています。コミットはまずセントリーまたはフルノードから読み取ります。
  • サプライチェーン。 リリースアーカイブとイメージにはビルド来歴の証明が付属し、CI のアクションとベースイメージはダイジェストで固定されています。

脅威モデルと報告方法については、SECURITY.md を参照してください。

判定方法

ライブネス。 CometBFT のコミットには、その高さにおけるバリデーターセットの全バリデーターが投票力順に列挙されますが、署名がない場合、その署名にはアドレスが含まれません。 そこで、このツールは各コミット内でバリデーターのアドレスを探します。見つからない場合は、その高さのバリデーターセットと、バリデーターのインデックスに対応する署名を読み取ります。署名がなければ missed、インデックスがなければ not in the set です。スキャン対象は latest − 1 までの正規コミットのみです。ノードが最新の高さに対して返すコミットは seen commit で、+2/3 より前に到着したプリコミットのみを含みます。そのため、セントリーの背後にいるバリデーターは通常、存在しないように見えます。ダウンタイムによるスラッシングの計算にも、正規コミットが使用されます。

ジャイルのリスク。 Cosmos SDK レイヤーでは、チェーン自体の入力である x/slashing のパラメーターと署名情報、およびコンセンサスキーを使って照合した x/staking を読み取り、x/slashing とまったく同じ方法でしきい値を計算します。つまり、猶予期間である start_height + window までの期間も含めて、window − round_half_even(window × min_signed_per_window) を計算します。ステーキング情報の照会に失敗しても、未来の jailed_until はジャイル中として扱われます。ジャイルされるとミスカウンターがリセットされるため、そうしないと問題のない記録に見えてしまうからです。

停止。 CometBFT でプリボートとプリコミットを行うには、投票力の 2/3 を超える支持が必要です。consensus_diagnosis は現在のラウンドの投票を読み取ります。CometBFT は次のラウンドも列挙しますが、まだ空なのでスキップされます。各投票をその位置に対応するバリデーターと照合し、投票済みの投票力を合計します。

互換性

CometBFTv0.38.25(Cosmos Hub メインネット)および v0.39.4(ローカルネット)でテスト済みです。v0.34 / v0.37 は同じ RPC フィールドを使用しますが、未テストです。
Cosmos SDKv0.53.8(Cosmos Hub)および v0.54.4(ローカルネット)の REST でテスト済みです。ed25519 コンセンサスキーを使用します。
チェーンCometBFT チェーンであれば動作します。フォーク(celestia-core、sei-tendermint)と ICS コンシューマーチェーンは未テストです。
規模Cosmos Hub:アクティブなバリデーター 180 件、ステーキング中のバリデーター 450 件以上。validator_health(100 ブロック)の実行時間は、公開 RPC で --concurrency 8 の場合は約 5 秒、デフォルトの 4 の場合は約 10 秒です。
非対応Tendermint2(gno.land)

トラブルシューティング

エラーコード意味確認する項目
rpc_unreachable接続拒否または DNS の失敗URL とポート、SSH トンネル、ファイアウォール、Node プロセス
rpc_timeout--timeout 以内に応答がないNode の負荷、ネットワーク遅延、--timeout の延長
rpc_http_statusJSON 以外の HTTP エラーRPC の前段にあるプロキシまたはロードバランサー、URL パス
rpc_bad_responseCometBFT の JSON-RPC 応答ではないURL が別のもの(REST、gRPC-web、ウェブページなど)を指している
height_unavailableノードがその高さのデータをプルーニング済みより多くの履歴を保持するノードを使うか、window を小さくする
rest_wrong_chaincosmos.rest がノードとは別のチェーンを参照しているREST URL
rest_not_found / no_signing_infoチェーンがそのアドレスを認識していないvalidator_address が cosmos1… / cosmosvaloper1… ではなく、コンセンサスアドレスであること
watched by validator_address onlyrpc を指定せずにバリデーターのノードツールが呼び出された想定どおりです。そのバリデーターで動作するのは validator_health のみです

よくある質問

バリデーターのアンジェイル、ノードの再起動、トランザクションの送信はできますか? いいえ。設計上できません。署名や書き込みを行うコードパスはありません。セキュリティモデルをご覧ください。

バリデーターの RPC は必要ですか? いいえ。バリデーターは validator_address だけで監視できます。署名はセンティネル、フルノード、またはパブリック RPC から読み取ります。

自分のマシンから送信される情報は何ですか? ツールの結果は MCP クライアントに送られ、クライアントを介して LLM プロバイダーに送信されます。送信される情報は、ノード名、ロール、高さ、ピア数、バリデーターアドレスです。IP とノード ID はマスクされます。本番環境のノードで使用する場合は、事前に所属組織の承認を得てください。

gno.land に対応していますか? まだ対応していません。Tendermint2 の RPC は CometBFT のものとは異なります。gno.land 自体については、gnoverse/gno-mcpをご覧ください。

ディスクやメモリのチェックがないのはなぜですか? 意図的なものです。ホストのメトリクスは node_exporter と既存のアラート機能で確認できます。cometbft-mcp は、チェーンルールが必要な判定に特化しています。

開発

make test           # unit tests, no network
make lint
make localnet-up    # 4 validators + 1 sentry (simd) in Docker; writes localnet/config.yaml
make e2e            # MCP over stdio: downtime, a real jail + unjail, an upgrade proposal, a chain halt (~5 min)
go test -tags mainnet -v ./test/mainnet/   # read-only smoke test on Cosmos Hub public endpoints

ローカルネットのジェネシスは、問題が数秒で発生するように調整されています(スラッシング期間は50ブロック、最低署名率は50%、ジェイル期間は60秒、投票時間は30秒)。対話形式で試すには、次を実行します。

make build
claude mcp add cometbft-local -- "$PWD/bin/cometbft-mcp" --config "$PWD/localnet/config.yaml"
make localnet-stop VAL=val3           # "is val3 signing? how long until it's jailed?"
make localnet-stop VAL="val2 val3"    # halt the chain; wait a minute: "why did blocks stop?"
make localnet-down

CI では、プッシュとプルリクエストのたびに lint とユニットテストが実行されます(ドキュメントのみの変更ではスキップされます)。E2E テストスイートは毎日、手動実行時、および e2e ラベルが付いたプルリクエストで実行されます。コントリビューションについては、CONTRIBUTING.mdをご覧ください。コードの構成と、決して壊してはならない不変条件については、AGENTS.mdをご覧ください。

ロードマップ

  • ICS コンシューマーチェーン(スラッシングとジェイルはプロバイダー上で実行)
  • secp256k1 コンセンサスキー
  • Tendermint2(gno.land)アダプター

ライセンス

Apache-2.0

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。