Devotd Github
新着セキュリティ

tencent/ai-infra-guard — MCP スキャン、XML 属性形式パラメータタグの解析修正

tencent/ai-infra-guard の mcp-scan パーサが OpenAI 互換モデルの属性形式パラメータタグを受け付けるように、正規表現と 7 件の回帰テストを変更したコミット。

リポジトリ情報tencent/ai-infra-guard ↗

tencent/ai-infra-guard の mcp-scan パーサが OpenAI 互換モデルの属性形式パラメータタグを受け付けるように、正規表現と 7 件の回帰テストを変更したコミット。

GitHub の説明: A full-stack AI Red Teaming platform securing AI ecosystems via Agent Scan, Skills Scan, MCP scan, AI Infra scan and LLM jailbreak evaluation.

スター
★ 6.9K
フォーク
665
言語
Python
ライセンス
Apache-2.0
最新リリース
v4.6.6
原文を見る ↗GitHub で見る ↗

tencent/ai-infra-guard の mcp-scan モジュールがツール呼び出しパーサを修正した。2026 年 11 月 3 日のコミット(7e6df02、PR #739)は、OpenAI 互換モデルが <parameter name="x"> の形でパラメータを出力する場合でも呼び出しを読み取れるよう、正規表現とフォールバック処理を広げた。リポジトリの説明によれば、このプロジェクトは Agent Scan、Skills Scan、MCP スキャン、AI Infra スキャン、LLM ジェイルブレイク評価をまとめた AI レッドティーミングプラットフォームである。

問題は、呼び出しが静かに壊れる形で発生していたことにある。ドキュメントに記載されている形式は <parameter=x> だが、一部の OpenAI 互換モデル、とくに DeepSeek は属性形式を出力する。mcp-scan パーサはドキュメントに記載された形式しか認識しなかったため、こうした呼び出しは引数なしの状態として解析され、モデルは値が再び埋められるまで再試行を繰り返し、コストが嵩んだ。イシュー報告によれば、1 回の実行で不正なタグが最大 48 個観測され、コードモードでは 2.65 倍遅くなった。

変更されたファイルは 2 つだ。mcp-scan/mcp_scan/utils/parse.py では、_parse_tags() のパラメータ正規表現と、閉じられていない <function=finish> を扱うフォールバックが、ダブルクォートとシングルクォート双方の属性形式を受け付けるように変わり、解析結果もすでに両方の形式を扱っていた agent-scan パーサと揃えた。mcp-scan/pytests/test_parse.py には、2 つの形式の混在、複数のパラメータ、フォールバック経路、mcp_function 呼び出し、既存形式の維持を扱う回帰テスト 7 件が追加された。変更統計は 77 行の追加と 3 行の削除である。

ここでの判断は線を引くところで止まる。48 と 2.65 倍はイシュー報告に含まれる数値であり、このコミットで再計測した値ではない。修正は mcp-scan の解析段階に限られ、リポジトリの説明に挙がる他のスキャン経路はこのコミットには含まれていない。属性形式でパラメータを出力するモデルに対して MCP スキャンを実行するチームなら、解析の不一致の原因は消えたと見てよいが、スキャン時間が基準値に戻るかは与えられた記録にはない。