The mcp-scan module of tencent/ai-infra-guard modified its tool call parser. The commit of November 3, 2026 (7e6df02, PR #739) broadened the regular expression and fallback handling so that calls are read even when OpenAI-compatible models emit parameters in the <parameter name="x"> form. According to the repository description, this project is an AI red-teaming platform that bundles Agent Scan, Skills Scan, MCP scan, AI Infra scan, and LLM jailbreak assessment.
The problem was the way calls were breaking silently. The form written in the documentation is <parameter=x>, but some OpenAI-compatible models, DeepSeek in particular, emit the attribute form. The mcp-scan parser recognized only the form written in the documentation, so such calls were parsed with no arguments, and the model repeatedly retried until the values were filled back in, driving up cost. According to the issue report, up to 48 incorrect tags were observed in a single run, and code mode was 2.65 times slower.
There are two changed files. In mcp-scan/mcp_scan/utils/parse.py, the parameter regular expression in _parse_tags() and the fallback that handles an unclosed <function=finish> were changed to accept the attribute form in both double quotes and single quotes, and the parse results were aligned with the agent-scan parser, which already handled both forms. In mcp-scan/pytests/test_parse.py, 7 regression tests were added covering mixed use of the two forms, multiple parameters, the fallback path, mcp_function calls, and preserving the existing form. The change statistics are 77 lines added and 3 lines deleted.
Here the judgment stops at drawing the line. 48 and 2.65 times are figures contained in the issue report, not measurements re-taken in this commit. The fix is limited to the parsing stage of mcp-scan, and the other scan paths listed in the repository description are not in this commit. For teams that run MCP scans against models that emit parameters in the attribute form, it is reasonable to say the cause of the parse mismatch is gone, but whether scan times return to the baseline is not in the given records.