Mission — Trust Graduation Gate について
Mission — Trust Graduation Gateは、MCPプロバイダーの前段でツール呼び出しを判定し、重大な操作を正確なアクションに結び付けて保留するインターセプトアダプターです。チャット上の承認文を権限とはみなさず、保留した呼び出しを自ら再開することもありません。
主な機能
- 01プロバイダー実行前の呼び出し遮断
- 02リスクと確信度に応じた保留
- 03アクションバインディングとレシートの記録
- 04実行器への引き渡し用バインディング検証
- 05Claude Desktop設定の導入と検証
活用シーン
- 01重大なMCP呼び出しへの実行前チェック
- 02人による確認用の操作要約とレシートの保存
- 03認可済みの正確な操作を別の実行器へ引き渡す
MCP 対応
MCP子サーバーをラップまたはインターセプトし、MCP discoveryを通じて実験的なmission-authority/v1機能を通知します。呼び出しの保留とバインドを担いますが、信頼済みMission Keyの発行や保留呼び出しの再開は行いません。
設定
リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。
https://claude.gomission.io/mcp/claude mcp add --transport http gomission https://claude.gomission.io/mcp/{"mcpServers":{"gomission":{"type":"http","url":"https://claude.gomission.io/mcp/"}}}Cursor で開く{"servers":{"gomission":{"type":"http","url":"https://claude.gomission.io/mcp/"}}}VS Code で開く{"mcpServers":{"gomission":{"type":"http","url":"https://claude.gomission.io/mcp/"}}}{"mcpServers":{"gomission":{"serverUrl":"https://claude.gomission.io/mcp/"}}}コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。
ツール
詳細
@gomission/mcp
厳密なアクション権限を実現する、Mission のオープンな MCP インターセプトアダプターです。
役割はひとつに絞られています。ラップした MCP プロバイダーの前段に配置され、提案されたツール呼び出しを分類し、重大な影響を伴う呼び出しを不変の Trust Graduation アクションバインディングとともに保留します。リスクの低い呼び出しはそのまま通過できます。チャットのメッセージで「承認」と言っても、権限が付与されたとはみなしません。
ステータス:実験的ベータ版。Apache-2.0。実行時依存関係はありません。
まず境界を検証する
要件:Node.js 20 以降。
npx -y @gomission/mcp@beta demo
このコマンドは、フェイクのメールプロバイダーを使用し、機械可読な DEMO_RESULT を出力します。次のことを証明します。
- 重大な影響を伴うプロバイダー関数が一度も呼び出されないこと。
- 保留内容に、厳密なアクションと入力ハッシュが含まれること。
- レビュー済みの入力を変更すると、コミットメントも変わること。
- チャットのテキストでは実行権限が付与されないこと。
これはインターセプトを証明するものであり、認可の完了や本番環境での採用を証明するものではありません。移植可能な許可/リプレイの証明は @trust-graduation/core にあります。
npx -y @trust-graduation/core@beta demo
3 つのプリミティブ
| プリミティブ | 責務 | 移植可能なオブジェクト |
|---|---|---|
| Mission Gate | プロバイダーの作用が発生する前に判断する | アクション判定 |
| Trust Profile | プリンシパルとアクションクラスごとに、獲得した権限を追跡する | 証拠プロファイル |
| Mission Key | 期限切れまたは失効まで、ひとつの厳密なアクションを認可する | 単回使用の許可 |
MCP アダプターは、プロバイダーの前段で呼び出しを保留します。信頼された Mission Key を発行することも、保留中の呼び出しを再開することもできません。信頼された承認ホストと実行機能が、対応するキーを検証し、アトミックに消費する必要があります。実験的な A2A 継続仕様は、次の場所で公開されています。
https://trustgraduation.org/extensions/a2a/action-authorization/v1
MCP の保留から厳密なプロバイダー実行まで
パッケージルートでは、外部の承認ホストと実行機能が使用する、安定した依存関係ゼロのバインディングブリッジを公開しています。
import { providerActionFromMcpBinding } from "@gomission/mcp";
import { createProviderGate } from "@trust-graduation/core";
const gate = createProviderGate({
store: sharedAtomicGrantStore,
authenticateGrant: verifyApprovalIssuer,
provider: existingProviderFunction,
writeReceipt: durableReceiptSink
});
// Re-read the actual provider input at the final seam; never trust a preview.
const action = providerActionFromMcpBinding(
heldReceipt.action_binding,
actualProviderInput
);
const execution = await gate.execute({
binding: heldReceipt.action_binding,
approval: authenticatedMissionKey,
action
});
このブリッジはバインディングの整合性を検証し、インターセプトした ID、ターゲット、制約、有効期限、ノンスをコアの実行形式にマッピングします。続いてコアが実際のプロバイダー入力を再ハッシュし、キーを認証してアトミックに消費し、プロバイダーを呼び出し、結果にリンクされた証拠を書き込みます。変更やリプレイがあった場合、プロバイダーには到達しません。
生成されたアダプターと、客観的なプロバイダー呼び出しカウンターを使うには、次を実行します。
npm install @trust-graduation/core@beta
npx trust-graduation init-adapter
npx trust-graduation conformance ./mission-gate-adapter.mjs --json
両方のパッケージがインストールされている場合、付属の互換性テストは次のとおりです。
node node_modules/@trust-graduation/core/examples/mcp-provider-roundtrip.mjs
チャットで「approve」と言っただけで、MCP プロキシが保留中の呼び出しを再開することはありません。このブリッジは、別途認証される承認ホストと、プロバイダーにバインドされた実行機能のためのものです。
Claude Desktop へのインストール
npx -y @gomission/mcp@beta install-claude
インストーラーは既存の Claude Desktop MCP 設定を調べます。
- 重大な影響を伴う MCP サーバーが見つかった場合は、
--wrapを選択します。 - 見つからない場合は、アドバイザリー用途の厳密なバインディングデモである
--localを選択します。 - ホスト型の読み取り専用モードが自動選択されることはありません。
インストール後に Claude Desktop を再起動し、次のコマンドで確認します。
npx -y @gomission/mcp@beta verify
verify は server/discover と tools/list を使って最新の MCP を検査し、古いエンドポイントでは initialize 時代のプロトコルにフォールバックします。機械可読なレポートを表示するには --json を、設定のみを検査するには --no-probe を追加してください。
モード
| モード | 強制する内容 | 行わないこと |
|---|---|---|
--wrap | 選択した子 MCP サーバーをインターセプトし、高リスク/重大な呼び出し、または信頼度の低い呼び出しを子サーバーに渡す前に保留します。子サーバーが利用できない場合はフェイルクローズします | 保留中の呼び出しを再開したり、チャットでの承認を信頼したりしません |
--local | 助言目的の、アクションを厳密に特定した保留とローカルレビューのレシートを記録します | 別のツールとそのプロバイダーの間に介在するものではありません |
--remote | 明示的に設定され、認証されたリモートサービスを必須とします | 旧パブリック PHP エンドポイントは廃止されています。このリリースではホスト型サービスを提供しません |
必要に応じて明示的に選択します。
npx -y @gomission/mcp@beta install-claude --wrap
npx -y @gomission/mcp@beta install-claude --local
# The legacy public remote is retired. Use the local or provider-interception mode above.
便利なフラグ:
--workspace <path>— 既存のワークスペースにローカルのレシートを保存します。--dry-run— 設定の変更内容を表示しますが、書き込みは行いません。--force— Claude Desktop が検出されない場合でも設定を作成します。--remote-url <url>— ホスト型エンドポイントを上書きします。MISSION_DONT_WRAP="name1,name2"— 選択した MCP 子サーバーを除外します。
アクションを厳密に特定した保留の契約
重大なラップ対象の呼び出しに対して、アダプターは以下を含むローカルのレシートを書き込みます。
- アクションクラス;
- プライバシーを保護するローカルワークスペース識別子;
- 呼び出し元の MCP 子サーバー;
- 推定できる場合は対象;
- SHA-256 入力コミットメント;
- 1 回限りの実行制約;
- 有効期限と nonce;
- バインディング全体に対する SHA-256 コミットメント。
レシートは、所有者のみがアクセスできるファイル権限でアトミックに書き込まれます。アダプターは、バインディング内にワークスペースの生のパスを保存しません。人間によるレビュー用に、ローカル引数の要約がレシートに残るため、レシートのディレクトリは機密性の高いワークスペースデータとして扱ってください。
MCP 互換性
推奨プロトコル:2026-07-28。
- クライアント機能を含む、リクエストごとのステートレスな
_meta; - 必須の
server/discover; - HTTP POST ごとに 1 つの JSON-RPC メッセージ。最新のバッチとクライアント通知はフェイルクローズします;
MCP-Protocol-Version、Mcp-Method、Mcp-Nameの HTTP バインディング;- プロトコルで定義された
HeaderMismatchおよび未対応バージョンのエラー; resultType: "complete"およびキャッシュメタデータ;2025-11-25および2024-11-05との initialize 方式の互換性。
権限マニフェストは、実験的な mission-authority/v1 機能の下で MCP ディスカバリーを通じて公開されます。
セキュリティ境界
このアダプターは、以下を保証しません。
- モデルまたはチャット UI がプリンシパルを認証したこと;
- レビューレシートが承認の付与であること;
- 外部プロバイダーでの厳密に 1 回の実行;
- 独立した適合性確認または本番環境での検証;
- エージェントに対する全般的な信頼。
厳密に特定した許可を作成および検証するには、@trust-graduation/core を使用してください。エグゼキューターは許可の発行者を認証し、実際のプロバイダー入力を再バインドし、キーをアトミックに消費し、プロバイダーを最大 1 回呼び出し、不明なプロバイダー結果を照合する必要があります。
オープンコアの境界
無料かつオープンなもの:
- この MCP アダプター;
@trust-graduation/coreとそのスキーマ;@gomission/mission-schemasの適合性語彙;- A2A のアクションを厳密に特定した認可拡張;
- Mission Lite のローカルフォーカスアプリ。
Commercial Mission では、マネージドポリシー、信頼できる承認画面、ホスト型の監査/レシート運用、組織向け管理機能、サポート、プロバイダー連携を提供する場合があります。製品の利用資格によってアクション権限が付与されることはありません。
リンク
- プロトコル:https://trustgraduation.org/
- A2A 拡張:https://trustgraduation.org/extensions/a2a/action-authorization/v1
- Mission:https://gomission.io/
- ソース:https://github.com/gomission/mcp
ライセンス
Apache-2.0。Mission の名称とロゴは商標です。コードライセンスは、推奨を受けているかのように示す許可を付与するものではありません。
0.3.0-beta.3 におけるワークスペースの分離
ローカルチャットブリッジは、ポート 8814 が選択されたワークスペースに属していると見なさなくなりました。ワークスペースの識別プローブにも、明示的な絶対パスの MISSION_WORKSPACE と、明示的なループバックアドレスの MISSION_LOCAL_URL(または MISSION_LOCAL_PORT)が必要です。リダイレクトは拒否されます。デスクトップからサポート対象のワークスペーススコープ認証ハンドオフが提供されるまで、チャット転送は利用できません。このリリースではクエリは送信されません。ローカルのアドバイザリホールドとレシートは引き続き機能します。
従来の gomission.io/mcp/ および claude.gomission.io/mcp/ エンドポイントは廃止されました。これらは代替の認証経路ではありません。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。