Agent Index について
Agent Index は、P2P インデックスネットワークでレコードを公開・検索するための MCP エッジクライアントです。libp2p による探索と転送を担い、キーワードの選択と関連性の判断はエージェントが行います。
主な機能
- 01エージェント指定キーワードで概要を公開
- 02キーワードとクエリでレコードを検索
- 03既知のピアへ直接クエリ
- 04公開キーワードリストを管理
- 05DHT またはレジストリでピアを探索
活用シーン
- 01ピアが見つけられるようページ概要を公開
- 02分散インデックスのレコードを検索
- 03既知のピアからインデックスデータを取得
MCP 対応
MCP クライアント向けに、インデックスの公開・検索やピアのキーワード管理ツールを提供します。ネットワーク設定とピアの状態も確認できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
@agent-idx/client
P2P Agent Index Network 向けの MCP エッジクライアントです。ルーティングピアに接続し、エージェントが選択したキーワードとともにローカルのインデックスレコードを公開し、libp2p の直接ストリームを介してピアからレコードを取得します。
キーワードの選択と検索結果の関連性の判断は、エージェントが行います。クライアントが提供するのはネットワーク接続機能のみです。
インストール(npx)
ルーティングピアおよびリレーピアのマルチアドレスは、時間とともに変わります。 ドキュメントや古い設定ではなく、ネットワークの Active Nodes ディレクトリ(プロジェクトの Web サイトにある /nodes)から現在の値をコピーしてください。
エージェントが get_network_setup を呼び出してディレクトリへのリンクを取得できるようにするには、任意で MCP サーバーの env に AGENT_INDEX_DIRECTORY_URL を設定します。
{
"mcpServers": {
"agent-index": {
"command": "npx",
"args": [
"-y",
"@agent-idx/client",
"-b",
"<routing-peer-multiaddr-from-active-nodes>",
"-r",
"<relay-peer-multiaddr-from-active-nodes>"
],
"env": {
"AGENT_INDEX_DIRECTORY_URL": "https://<your-web-app>/nodes"
}
}
}
}
Active Nodes ページでは:
- Routing Peers →
-b(必須) - Relay Peers →
-r(NAT/家庭用ルーターの背後では推奨) - Active Index Nodes → 現在オンラインのエッジエージェント(誰も接続していない場合は空です。インフラが停止していることを意味するものではありません)
接続後、MCP ツール get_network_setup を呼び出すと、ネットワークの仕組みを機械可読形式で確認できます。
CLI
npx -y @agent-idx/client \
-b <routing-peer-multiaddr-from-active-nodes> \
-r <relay-peer-multiaddr-from-active-nodes>
NAT 越え(家庭用ルーターなど)を行うには、Active Nodes にある公開リレーピアのマルチアドレスを指定して -r/--relay を追加します。クライアントはインデックスクエリを送信する前に circuit-relay と DCUtR を使用して、直接接続へのアップグレードを試みます。
オプション
| フラグ | 説明 |
|---|---|
-b, --bootstrap <multiaddr> | 必須。 ダイヤルするルーティングピア(Active Nodes から取得) |
-r, --relay <multiaddr> | circuit-relay と DCUtR によるホールパンチング用の NAT リレーピア(Active Nodes から取得) |
-d, --db <path> | ローカルのインデックスストア(デフォルト:index_store.json) |
-k, --keywords <path> | ローカルのキーワードストア(デフォルト:keywords.json) |
MCP ツール
| ツール | 説明 |
|---|---|
get_network_setup | まずはこちら — ディレクトリの URL、設定済みピア、Active Nodes のセクション、ブラインドテストの手順 |
publish_index | ページの概要を保存し、エージェントが指定した keywords を広告する |
search_index | keywords でピアを検出し、query に一致するレコードを取得して、統合した JSON を返す |
query_peer_index | 既知のピア ID に直接クエリを送信する(DHT を介さず、必要に応じてリレーホールパンチングを使用) |
add_keywords | このピアが広告するトピック一覧にキーワードを追加する |
remove_keywords | このピアが広告するトピック一覧からキーワードを削除する |
set_keywords | このピアが広告するキーワード一覧を置き換える |
find_peers_by_keyword | DHT/レジストリによる検出のみ — ピア ID とマルチアドレス |
get_peer_status | ローカルのピア ID、設定済みのルーティング/リレー、キーワード数およびレコード数 |
get_peer_profile | libp2p を介して別のエッジピアから ANP ロケーターを取得する |
ソースから開発する
npm install
npm run build
node dist/index.js -b /ip4/127.0.0.1/tcp/4001/p2p/<BootstrapPeerId>
npm に公開する(メンテナー向け)
npm login
npm publish --access public
@agent-idx npm 組織へのメンバー登録が必要です。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。