ホームへ戻る

Agent safety and infrastructure

MCPツールアノテーションの普及だけではトランザクションの安全性を支えられず、研究がエージェントによる外部副作用の異常を8種類に整理

新たな研究は、エージェントの再試行、並行実行、補償によって生じる外部状態の不整合を8種類の異常に分類し、個々のツール呼び出しが成功してもワークフロー全体の整合性が保証されるわけではないと指摘した。98,291件のMCPツールを対象とした調査では、アノテーションフィールドは広く使われているものの、結果確認、ステージングとコミット、補償、呼び出し間の依存関係を表現できないことが示された。

Panek · CC BY-SA 4.0 · Image source
zh-Hant

9月14日に公開された研究は、エージェントツールの信頼性を「外部副作用の整合性」の問題として捉え直した。1回のAPI呼び出しが局所的には成功しても、再試行、投機的実行、並行分岐、部分的な失敗によって、ワークフロー全体に誤った状態が残る可能性がある。例えば、支払いの応答が失われた後に再試行すると二重請求が発生し得る。キャンセルされた分岐が返金不能な注文を残す場合もある。また、それぞれ単独では正当な2件の並行予約が、合計では総予算を超えることもある。

著者らは、現実世界ですでに発生した効果、実行器による結果の観測、ワークフローの最終的なcommitまたはabortを意図的に区別するeffect-historyモデルを提案した。そこから、重複効果、commit済みだが必要な効果が欠落している状態、孤立した補償、キャンセル後の残留、早すぎる外部化、汚染された投機的結果、競合する外部化、ゴースト補償という8種類の異常を整理した。これらを一般的に排除するには、ツール境界で、論理操作ID、権威ある状態照会、冪等な再試行、宣言可能な補償、dry-runまたはステージング、安定したリソース識別子、依存関係の追跡、共有リソースの調整といった機能を提供する必要がある。ブラックボックスのツールを、より賢いエージェント層で包むだけでは不十分だ。

付随する調査では、MCP Registryにある59,625件のバージョン記録から各サーバーの最新版を取得し、9,234個のリモートエンドポイントを匿名でプローブした。接続可能だった4,838台のサーバーから、合計98,291件のツールが返された。ツールの74.0%は標準ヒントフィールドを少なくとも1つ送信し、61.7%は4フィールドすべてを備えていたが、適切な破壊性分類を持つものは12.9%にとどまった。さらに、`readOnlyHint=true、destructiveHint=false、idempotentHint=true、openWorldHint=true`という単一の組み合わせが39.9%を占めた。これは、フィールドが揃っていても単なるフレームワークのデフォルト値である可能性があり、トランザクションのセマンティクスが完全であることを意味しないと示している。

この研究は、スキャン対象のツールが実際にこれらの異常を引き起こすことを証明したものではない。4,318個のリモートターゲットには接続できず、stdio型サーバーは対象外で、副作用を持つツールのサブセットもツール名から推定したにすぎない。今後注目すべき点は、MCPまたは上位レイヤーのコントラクトで、結果照会、補償、ステージング、リソーススコープを標準化し、4つのヒント用ブール値を安全性の保証と見なすのではなく、実行器が再試行前に状態を検証できるようにすることだ。

出典

  1. When Tool Calls Succeed but Workflows Fail: Anomalies at the Agent–Tool Boundary
  2. MCP Registry Tool Annotation Census
  3. MCP Annotation Census Report