mcpField
A
Agent Action Gate

Agent Action Gate

ローカル
a2zsoc.comセキュリティ04 週間前に更新

Agent Action Gate について

Agent Action Gateは、AgentやMCPツール呼び出しを制御するポリシーゲートです。無人の破壊的操作を防ぎ、監査証跡を残したいチーム向けに、書き込みを既定でシミュレーションし、高リスク操作には人間の承認証明を求めます。

主な機能

  1. 01未知のツール呼び出しを拒否
  2. 02高リスク操作に人間の承認を要求
  3. 03書き込みを既定でシミュレーション
  4. 04ハッシュチェーン付き操作台帳
  5. 05緊急停止スイッチ
  6. 06MCP stdioサーバーとPythonマッパー

活用シーン

  1. 01破壊的ツールの実行前にポリシーを確認
  2. 02廃止操作に承認証明を要求
  3. 03副作用なしで書き込みをシミュレーション
  4. 04監査やデューデリジェンス用の操作記録を保持

MCP 対応

MCP stdioサーバーはgate_checkとledger_verifyを提供します。クライアントは破壊的なツールを呼び出す前にgate_checkを実行し、このプロセスは要求を評価しますが、ツール自体は実行しません。

設定

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

インストール方法は未掲載です

このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。

リポジトリ
パッケージ
mcpbagent-action-gate.mcpb

ツール

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

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

詳細

Agent Action Gate

エージェントと MCP ツールの呼び出しのための Gate/Prove ランタイムです。

ツールの意図を正規化 → 不明なものは拒否 → モデルの信頼度を承認として扱わない → 破壊的操作/プロビジョニング/デコミッションでは HITL による証明を要求 → Action Ledger(ハッシュチェーン)。

GRC_Claw の @grc-claw/agent-policy-firewall から抽出しました。このリポジトリは、必要な機能だけに絞った鋭いファウンドリスライスです。コマンドは 1 つ、壮大な構築物はありません。

商用提供(販売内容): $499 Instant Audit と 相談 は a2zsoc.com でご利用いただけます。

これが必要な理由(収益+コスト)

AI エージェント企業がお金を払うのは、「MCP をもう 1 つ」ではありません。無人で実行される破壊的なツールを止めること、そして SOC 2 Type I、PE デューデリジェンス、保険更新の前に Gate/Prove の不足を証明することに対して対価を払います。

コスト要因このゲートの動作購入者が得る効果
ゲートされていない shell.exec/制御の無効化/デコミッションHITL 証明トークンと approved がなければ拒否本番環境への被害を回避
エージェントの「95% 確信」never_equate_intent_to_approval: true意図 ≠ 台帳上の証明
書き込みツールが最初の思いつきで実行されるデフォルトは SIMULATE(副作用なし)インシデントコストではなく、FDE の作業時間
監査証跡がないハッシュチェーン付きの追記専用 Action Ledgerデューデリジェンス用資料

絶対ルール:エージェントの意図やモデルのスコアを、人間の承認と同一視してはいけません。

コストの概算例(見積もりではありません):make bench。

クイックスタート

make demo
PYTHONPATH=. python3 -m aag demo
PYTHONPATH=. python3 -m aag check fixtures/t1059_unattended_shell.json
PYTHONPATH=. python3 -m aag bench

無人の高ティア呼び出しは、信頼度が 0.99 でも DENY になります。ALLOW には AAG_PROVE_TOKEN(または --prove-token)と approved: true が必要です。

export AAG_PROVE_TOKEN='replace-me'
PYTHONPATH=. python3 -m aag check fixtures/proved_decommission.json --prove-token "$AAG_PROVE_TOKEN"

キルスイッチ:AAG_KILL_SWITCH=1 を設定するか、artifacts/KILL に触れてください。

MCP stdio サーバー

このプロセスはツールを実行しません。クライアントは、破壊的なツールを呼び出す前に gate_check を呼び出します。

PYTHONPATH=. python3 -m aag serve

Cursor/Claude の例(mcpServers):

{
  "agent-action-gate": {
    "command": "python3",
    "args": ["-m", "aag", "serve"],
    "cwd": "/path/to/agent-action-gate",
    "env": { "PYTHONPATH": ".", "AAG_PROVE_TOKEN": "replace-me" }
  }
}

Docker/レジストリイメージ:

docker run --rm -i ghcr.io/aah20/agent-action-gate:0.2.0

公式 MCP Registry 名:io.github.AAH20/agent-action-gate

エンベロープ

各判定には次の内容が含まれます。

  • never_equate_intent_to_approval: true
  • allow_auto_execute(無人の高ティアでは false)
  • mode: deny | simulate | allow
  • ledger_id / receipt_hash
  • CTA:Instant Audit + 相談

ライブラリマッパー

stdio ループなしで、Python から同じ Gate/Prove ポリシーを使用できます。

from aag.gate import AgentActionGate
from aag.mcp import evaluate_mcp_call

gate = AgentActionGate(prove_token="replace-me")
evaluate_mcp_call(gate, {"params": {"name": "shell.exec", "arguments": {"note": "no payload"}}})

フィクスチャ(ペイロードではなく、ラベル付き)

ファイル手法期待される結果
t1059_unattended_shell.jsonT1059無人の破壊的操作を拒否
t1078_read_identity.jsonT1078読み取りを許可
t1562_impair_defenses.jsonT1562無人の破壊的操作を拒否
write_ticket_simulate.json—書き込みをシミュレート
proved_decommission.jsonT1578HITL トークンがある場合のみ許可

構成

aag/
  gate.py      HITL + kill-switch + unknown deny
  ledger.py    hash-chained JSONL
  server.py    MCP stdio (gate_check, ledger_verify)
  mcp.py       MCP tools/call mapper (no execution)
  cost.py      illustrative avoidance sketch
  demo.py      fixture runner
fixtures/      ATT&CK-tagged cases
server.json    MCP Registry metadata
tests/         Gate/Prove + MCP contract

有料評価(無料の証明ではありません)

エージェントまたは MCP サーバーをデプロイしており、SOC 2、PE デューデリジェンス、保険に備えて Gate/Prove の評価が必要な場合:

→ $499 Instant Audit
→ 相談(スプリント/vCISO)

無償の持ち帰り課題には対応しません。make demo を実行し、Instant Audit をご購入ください。

ライセンス

MIT

コメント

MCP は初めてですか?

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

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