mcp-proxy · Model Context Protocol Python SDK: Client fetched server-chosen $ref URLs while validating tool results against output
Affects mcp-proxySource GCVE Database
Not known to be exploited · CVSS 6.5 Medium : upgrade to 0.12.0_5 or 0.9.0 when convenient.
Data as of 30 Oct 2026, 08:30 UTC
Thin evidence
One scorer or none| CNA (GitHub_M) | CVSS 3.1 | 6.5 |
|---|
- Patch
- Available – fixed in 0.12.0_5, 0.9.0
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:N/I:N/A:HExploitation evidence
Disclosed: evidence found.
CVE published 27 Oct 2026
Detectable: no evidence on record.
No public nuclei template indexed
Weaponized: no evidence on record.
No public exploit code indexed in Metasploit or Exploit-DB
Exploited in the wildExploited: no evidence on record.
Not in CISA KEV and no source reports exploitation
Observed by OffSeq MirageSeen by Mirage: no evidence on record.
No attack traffic recorded by OffSeq Mirage sensors
A missing step is not evidence of safety. Sources: cve.org (opens in a new tab), the Metasploit, Exploit-DB and nuclei-templates index as of 29 Oct 2026.
What to do
Upgrade mcp-proxy to 0.12.0_5 or 0.9.0.
Affected software
| Product | Affected | Fixed in |
|---|---|---|
Homebrewmcp-proxypkg:brew/mcp-proxyOther threats | Affected
| Fixed in
|
Check your own hosts for these packages with threat-finder (opens in a new tab), our free open-source scanner.
AI-suggested
Upgrade the MCP Python SDK client to version 1.30.0 or later (for 1.x) or 2.2.0 or later (for 2.x), where the client restricts $ref resolution to within the schema document and standard metaschemas, preventing external fetches. Until upgrading, only call tools on servers you fully trust. As a partial workaround, avoid calling tools whose outputSchema contains an $id or any $ref/$dynamicRef that does not start with '#'.
Description
The Model Context Protocol (MCP) Python SDK client versions 1.10.0 through 1.29.1 and 2.0.0 through 2.1.1 have a vulnerability where the client fetches server-declared external $ref URLs during tool output schema validation. This can cause the client to synchronously fetch arbitrary HTTP, HTTPS, or file URLs from the client's network position, potentially stalling the client if the target is unresponsive. The issue affects applications using the SDK as a client calling tools on untrusted servers. Fixed in versions 1.30.0 and 2.2.0.
References
- github.com/modelcontextprotocol/python-sdk/security/advisories/GHSA-rwrf-2pqf-9j8j (opens in a new tab)
- github.com/modelcontextprotocol/python-sdk/pull/3394 (opens in a new tab)
- github.com/modelcontextprotocol/python-sdk/pull/3396 (opens in a new tab)
- github.com/modelcontextprotocol/python-sdk/commit/5ebdfed4060d8e5b11b8e2348f86bad4d1fb8836 (opens in a new tab)
- github.com/modelcontextprotocol/python-sdk/commit/6705402e246dc4eb1fcdf4d9902b78d3c9c36e1b (opens in a new tab)
- github.com/modelcontextprotocol/python-sdk (opens in a new tab)
- github.com/modelcontextprotocol/python-sdk/releases/tag/v1.30.0 (opens in a new tab)
- github.com/modelcontextprotocol/python-sdk/releases/tag/v2.2.0 (opens in a new tab)