mcpField
A
Agent Interop Runtime

Agent Interop Runtime

ローカル
github.com/Praket7AI・エージェント05 週間前に更新

Agent Interop Runtime について

Agent Interop Runtimeは、各プロバイダーのアカウント、履歴、権限、ワークスペースを分けたまま、複数のコーディングエージェントのセッションを調整するローカルMCPサーバーです。タスクの割り当てや進捗確認、セッション間の成果引き継ぎに対応します。

主な機能

  1. 01ローカルのプロバイダーセッション検出
  2. 02対応セッションの作成・再開
  3. 03タスク送信と進捗確認
  4. 04作業メモ、引き継ぎ、レビューの共有
  5. 05設定済みワークスペースチェックの実行
  6. 06許可されたプロジェクトテキストの読み取り

活用シーン

  1. 01タスクに使うローカルエージェントセッションの選択
  2. 02セッション間のタスク送信と完了状況の追跡
  3. 03プロバイダー履歴を統合せずに引き継ぎを調整

MCP 対応

ローカルMCPクライアントが接続し、プロバイダーセッションの検出・管理や共同作業の調整などのツールを利用できます。ローカルstdioとループバックHTTPに対応します。

設定

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

mcp.json · 共通設定
{
"mcpServers": {
"praket7-agent-interop-runtime": {
"command": "npx",
"args": [
"-y",
"agent-interop-runtime"
]
}
}
}
起動コマンドnpx -y agent-interop-runtime

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

パッケージ
npmagent-interop-runtime0.3.2

ツール

52

掲載時のツール一覧 · 3 週間前に更新

このツールにパラメーターはありません。

詳細

Agent Interop Runtime

コーディングエージェントはすでに作業の進め方を知っています。このプロジェクトは、それぞれが独自のアイデンティティ、アカウント、作業環境を保ちながら、タスクを共有できるようにします。

ローカルの MCP クライアントを Agent Interop Runtime に接続すると、コンピューター上で利用できるコーディングエージェントが検出されます。そこからセッションを選び、作業を依頼し、進捗を確認して、結果を別のセッションに引き継げます。各プロバイダーは引き続き、それぞれのアカウント、権限、履歴、ワークスペースへのアクセスを使用するため、ランタイムは別々の環境を統合せずに作業を調整できます。

コーディングエージェントの交通整理役と考えてください。どのセッションがタスクを受け取ったかを表示し、プロバイダーから送られる更新を記録して、裏側に共有チャットを作成することなく、各チェックの結果を1か所にまとめます。

1つの MCP クライアントがローカルコーディネーターを通じて、個別のプロバイダーセッションに作業を送る簡単な図

イラスト付きの短いツアーを見る

自動テスト、オフラインでの引き継ぎ結果、CI マトリックスの規模

画像はイラストです。ワークフローと利用可能な測定値を説明するものであり、実際のプロバイダーセッションを表示しているわけではありません。

作業を依頼すると何が起きるか

ランタイムは、選択したプロバイダーのセッションにメッセージを送信します。受領通知でプロバイダーがメッセージを受け付けたことが確認できる場合がありますが、受け付けられたことはプロバイダーへの配信を確認するだけであり、エージェントがタスクを完了したことを意味しません。ランタイムは、そのセッションから結果を確認した後にのみ、完了を報告します。

配信状況が不確かな場合も同じルールが適用されます。プロバイダーがメッセージを受け付けた後、ランタイムが確認を受け取る前にネットワーク障害が発生することがあるためです。その場合、ランタイムは配信状況を不明として記録し、プロンプトを黙って再送信することはありません。これにより、すでに進行中の可能性がある作業の重複を防ぎます。

できること

コンピューター上でサポートされているプロバイダーセッションを検出し、作業の送信先を選ぶ前に、利用できるローカルツールを確認できます。

選択したプロバイダーが対応している場合は、セッションを作成または再開できます。プロバイダーのレポートで、セットアップで利用できる操作を確認できます。

選択したプロバイダーが対応している場合は、作業の依頼、キャンセル要求、進捗の確認、プロバイダーの差分の取得ができます。

共有の作業メモ、引き継ぎ、エビデンス、レビュー、協調的なリソース要求を維持し、参加するセッションが同じタスクを軸に連携できるようにします。

検証を明示的に有効にすると、名前を指定したワークスペース内でローカルチェックを実行できます。プロジェクトを任せる前に、設定されているプログラムを確認してください。

承認済みのプロジェクトフォルダー内にある小さなテキストファイルを読み取れます。一般的な認証情報ファイルはブロックされ、認証情報のようなテキストは伏せ字になり、バイナリファイルは拒否されます。

プロバイダーによって機能が異なるため、doctor レポートで、インストール済みの各プロバイダーができることを確認できます。ただし、プロバイダーが見つかっただけでは、サインイン状態や作業を受け付ける準備ができているかどうかは確認できません。

できないこと

プロバイダーのアカウントや履歴を統合することはありません。各セッションには、引き続きそのプロバイダー独自の設定が適用されます。

ログイン、同意の確認、権限の要求を回避することはありません。これらの手順は、プロバイダー自体を通じて完了する必要があります。

コンピューターにインストールされていないプロバイダーへのアクセスをエージェントに許可することも、プロバイダー独自のアプリケーションに取って代わることもありません。

コマンドをサンドボックス化することはありません。検証では、アカウントで利用できるアクセス権を使って、設定したプログラムを実行します。信頼できる作業とコマンドにのみ使用してください。

リソース要求によって、このランタイムを使うエージェント同士の連携はできますが、ランタイム外で別のプログラムが同じファイルを編集することは防げません。

プロバイダー

Freebuff Desktop はローカルアプリ接続を使用します。また、書き込みを送信する前に、現在の起動状態を確認します。一方、Freebuff CLI は管理されたターミナルセッションを使用します。

OpenCode はローカルサーバーを使用します。必要に応じてランタイムがループバック上でサーバーを起動することがあります。また、ネットワーク結果が不確かな場合、作業を変更する可能性のあるリクエストが再送されることはありません。各セッションは、それを公開したサーバーに紐付けられたままなので、サーバーを切り替えても既存の作業が暗黙に別のサーバーへ転送されることはありません。

Codex は Codex アプリサーバーを使用し、Claude Code と Cursor はサポート対象の Agent Client Protocol コマンドを使用します。

利用できる機能は、プロバイダーのバージョン、ローカル環境、アカウントの状態によって異なります。また、プロトコルのチェックの大半では、ライブセッションではなくシミュレーションされたプロバイダーを使用します。ライブ作業で利用する前に、対象のコンピューターでプロバイダーを確認してください。

現在のエビデンス

リポジトリのテストスイートでは125件のチェックがすべて成功しました。また、オフラインベンチマークでは3件のシミュレーションされたハンドオフタスクを実行し、プロバイダーへの送信の重複は観測されませんでした。これらの結果が示すのは記録されたテスト実行のみです。ベンチマークはライブエージェントに接続せず、速度を測定せず、プロバイダーのコストも推定しません。

GitHub CI では、サポート対象の Node の4つのバージョンに対して3つのオペレーティングシステムをチェックし、合計12通りの組み合わせを検証します。

以前のローカルチェックでは、Freebuff GLM 5.3 Flash からの応答が確認され、OpenCode Big Pickle ではプロンプトが受け付けられましたが、そのセッションでは完了が確認されませんでした。これらの結果は特定のセッションのみに当てはまるため、プロバイダー全般のサポートを示すものではありません。

インストール

Node 20からNode 26を使用し、プロバイダーをチェックする前に pnpm でリリース済みパッケージをインストールしてください。

pnpm add --global agent-interop-runtime
agent-interop-runtime doctor

最新の公開済み npm バージョンは0.3.2ですが、ここで説明するソースの修正はリポジトリで利用できます。新しいパッケージがリリースされる前にこれらの変更を試したい場合は、リポジトリからビルドしてください。

git clone https://github.com/Praket7/agent-interop-runtime.git
cd agent-interop-runtime
pnpm install
pnpm build
node dist/src/cli.js doctor

ローカル MCP クライアントを接続する

インストーラーを実行してローカルの Codex エントリーを確認してください。また、ランタイムでそのエントリーを更新する場合は、書き込みオプションを使用してください。

node dist/src/cli.js install
node dist/src/cli.js install --write

書き込みオプションは現在のファイルをバックアップし、無関係な設定を保持します。ただし、npm パッケージをインストールするだけでは設定は編集されないため、設定を変更した後は Codex を再起動してください。

ほかの MCP クライアントも、ローカルサーバー設定を通じて同じ serve コマンドを起動できます。認証済みのリモートアクセスを意図的に設定している場合を除き、この接続はご自身のコンピューター上で利用してください。

ツールセットを絞り込む

フルプロファイルでは利用可能なすべてのツールを公開しますが、対象を絞った一連の操作だけが必要なエージェントには、小さめのプロファイルのほうが使いやすい場合があります。

INTEROP_TOOLS_PROFILE=minimal
INTEROP_TOOLS_PROFILE=core
INTEROP_TOOLS_PROFILE=freebuff
INTEROP_TOOLS_PROFILE=legacy
INTEROP_TOOLS_PROFILE=full

Minimal プロファイルはプロバイダーセッションに重点を置き、Core は共有ワークレコードを追加し、Freebuff は Freebuff 固有の操作を公開します。Legacy は Core と旧式の Freebuff ツールを組み合わせたもので、Full がデフォルトです。また、INTEROP_READ_ONLY=1 を設定すると読み取り専用モードを利用できます。

チェックを実行する

pnpm typecheck
pnpm test
pnpm lint
pnpm mcp:validate
pnpm bench:check
pnpm pack:check

セットアップとサポート対象の動作については、プロバイダーガイド、平易な言葉で説明したアーキテクチャガイド、互換性に関する注意事項、トラブルシューティングをお読みください。

安全性とプライバシー

ローカルの stdio サーバーが最もシンプルな構成です。一方、HTTP モードはデフォルトでループバックにバインドされ、ベアラートークンが必要です。リモートアクセスには明示的な設定とネットワーク保護が必要です。セッション識別子は認証の代わりにはならないためです。

プロジェクトファイルの読み取りは選択したプロジェクトフォルダー内に限定され、一般的な認証情報ファイルは拒否されます。また、テキストは一般的な認証情報パターンに照らしてチェックされます。こうしたチェックですべてのシークレットを検出できるわけではないため、エージェントが読み取れるファイルには機密情報を含めないでください。

検証はデフォルトで無効ですが、有効にすると、設定済みのプログラムをシェルを介さずに実行し、作業フォルダーが指定されたワークスペース内にあることを確認します。子プログラムはサンドボックス化されないため、アカウントに付与されたアクセス権を引き続き保持します。

改善にご協力ください

作業を送信する前に doctor を使用してください。問題を報告する際は、プロバイダー名、バージョン、オペレーティングシステム、試した操作、プロバイダーがタスクを受け付けたか、または完了結果を返したかを記載してください。報告には非公開のプロンプトや認証情報を含めないでください。

このプロジェクトでは、再現可能な互換性レポートやコードの貢献を歓迎しています。特に、特定のプロバイダーのバージョンとコンピューターで何が起きたかを説明するものを歓迎します。

コメント

MCP は初めてですか?

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

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