aggrete について
Aggreteは、コネクターを横断する呼び出しを統制するMCPポリシープロキシです。上流への呼び出し前にYAMLルールとユーザーごとの履歴で操作を検査し、結果のマスキングや人間の承認も行えます。
主な機能
- 01コネクター横断の呼び出し前ポリシー検査
- 02呼び出し・セッションをまたぐユーザー別メモリ
- 03結果のマスキングとツール表示制御
- 04プロンプトインジェクションとツール汚染への対策
- 05改ざん検知可能な監査ログとメトリクス
- 06指定操作に対する人間の承認
活用シーン
- 01行動規範に反するデータの組み合わせを阻止
- 02結果がモデルに届く前に機密値をマスキング
- 03MCP設定のサーバー横断リーク経路を検査
- 04統制対象の呼び出しを人間の承認まで保留
MCP 対応
AggreteはMCPコネクターをプロキシし、上流サービスの呼び出し前にポリシーを適用します。agentgateway、Docker MCP Gateway、IBM ContextForge、AuthZEN対応ゲートウェイとのアダプターモードもサポートします。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
Aggrete
コネクター全体に行動規範ドキュメントを適用し、呼び出しをまたいで蓄積されるユーザーごとのメモリーを備えた MCP プロキシです。
個別に承認された4つの質問を組み合わせると、解雇者リストを作成できてしまいます。どの質問も単独では機微なものではないため、ガードレールは作動しません。Aggrete は、まさにこの組み合わせを検知するレイヤーです。この呼び出しは、この人が今日すでに取得したすべての情報と合わせると、行動規範で禁じられていることに当たるでしょうか?
ライブで試す — インストール不要 · または uvx aggrete --demo
スキャンから始める
pip install aggrete && aggrete scan
クライアントが使用しているすべての MCP サーバーを見つけ、それぞれに接続して、サーバー単位のスキャナーでは検出できない内容を出力します。サーバー間で漏えい経路となるツールの組み合わせ、説明文に隠された指示、クライアント設定内のシークレット、プロキシを迂回するサーバーなどです。--fix を指定すると、それらを塞ぐ設定とポリシーを書き込みます。詳細。
インストール
pip install aggrete # or: uv tool install aggrete
uvx aggrete --demo # the walkthrough — no config, auth, or network
aggrete --config proxy.config.yaml # run it for real
具体例
check ツールはプランをドライランし、何かを取得する前に判定を返します。
Plan check: REFUSED.
1. hr__recent_joiners [hr-personnel] -> allowed
2. finance__budget_roles [finance-comp] -> allowed
3. ops__oncall_draft [ops-rota] -> REFUSED COC-HR-004
Personnel, compensation, and operational rosters may not be combined to
derive the planned departure of identifiable individuals.
各呼び出しは単独なら問題ありません。3つ目の呼び出しによって、同じ人物を対象とする3つのドメインにまたがる禁止対象のセットが完成するため、上流への呼び出し前に拒否されます。データは一切取得されません。
できること
- YAML ポリシーと、呼び出しやセッションをまたぐユーザーごとのメモリーを使って、取得前に拒否します。単一呼び出しの承認ではありません。
- 結果がモデルに届く前に、メールアドレス、SSN、カード番号、トークンをマスキングします。また、呼び出せないユーザーには、壁で保護されたツールを非表示にします。
- プロンプトインジェクションから保護します。セッションで信頼できないコンテンツを読み取った後の書き込みはすべて拒否されます。また、ツールの説明文に隠された指示を検出して、ツールポイズニングにも対処します。
- 上流の認証情報を自ら保持するため、Confused Deputy 問題を防げます。ユーザーごとの代理アクセスもオプションで利用できます。
- 改ざんを検知できる形式で監査します。すべての判断は、ハッシュチェーンで連結された1行の JSON(
aggrete-audit)として記録され、SIEM または OpenTelemetry コレクターに転送されます。運用向けの Prometheus メトリクスとヘルスエンドポイントも備えています。 - 実行前に確認できます。
checkで任意の一連の処理をプレビューし、scenariosで試せる項目を一覧表示します。 - 人による承認を保留できます。
action: approveは、条項の所有者が Slack、ターミナル、またはコンソールから承認するまで呼び出しを一時停止します。承認は有効期限付きで監査記録に残る許可です。
詳細はこちら
- ポリシーの作成 —
coc.yamlのスキーマ、ルールの種類、arg_match、およびaggrete-ingestを使ってハンドブックからポリシーを作成する方法 - デプロイ — アーキテクチャ、デプロイマトリクス、HTTP と OAuth、Claude への接続、ユーザーごとの認証情報
- コネクターの構築 — 読み取り/書き込みツールを公開し、あらゆるシステムを管理する方法(Google Drive をリファレンスとして使用)
- アダプターモード — エンジンを agentgateway(gRPC 経由のネイティブ ExtMCP、
aggrete extmcp)、Docker MCP Gateway、IBM ContextForge、または AuthZEN 対応の任意のゲートウェイ内で実行する方法 - 防止できないこと — サプライチェーン、ホストでの実行、クライアントのバグ、メモリポイズニング:プロキシが適切な対策ではないケースと、その理由
- スキャン —
aggrete scanは既存の MCP セットアップを強化します。サーバー間の漏えい経路、汚染された説明、設定内のシークレット、プロキシのバイパスを検出し、1 つのコマンドで修正します - 適合性 —
aggrete conformanceは実際のコンポーネントに対して 16 項目のチェックを実行し、OWASP MCP Top 10、OWASP Agentic Top 10、CoSAI、AIUC-1 に対応付けます。--urlを使うと、任意のゲートウェイに対して同じシナリオをブラックボックスで実行できます(最新のレポート) - ロードマップ — リリース済み、進行中、予定されている機能
- エージェントスキル — Claude Code または任意の MCP クライアントに Aggrete のセットアップと運用方法を学習させます:
/plugin marketplace add aggrete/aggreteを実行するか、稼働中のプロキシからskill://aggrete/SKILL.mdを読み取ってください
正直な制限事項
- 呼び出し後の拒否では、取得を取り消すのではなく、情報を編集して隠します — 呼び出し前に判定できるルールを優先してください。
- stdio での ID は参考情報にすぎません — 実際に強制するには、OAuth を使用するストリーミング可能な HTTP と、プロキシだけを経由させるためにコネクターへの直接的な権限付与を IdP レベルでブロックする必要があります。
- 集約への対策は範囲を狭めることしかできず、解決はできません — リクエスト間隔をウィンドウより長く空けるユーザーや、プロキシが介在しない複数のシステムにまたがって言い換えるユーザーは、検出をすり抜けます。これにより、攻撃のコストが上がり、監査証跡が作成されますが、完全に防げるわけではありません。
- ゲートウェイではありません — マルチテナント機能、トークン保管庫、高可用性はありません。本番環境では、agentgateway、Docker のゲートウェイ、または IBM ContextForge の背後で実行し、それらから呼び出してください(アダプターモード)。
mcp-name: io.github.aggrete/aggrete
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。