SSRF in Jlowin Fastmcp

CVE-2026-32871

FastMCP is a Pythonic way to build MCP servers and clients. Prior to version 3.2.0, the OpenAPIProvider in FastMCP exposes internal APIs to MCP clients by parsing OpenAPI specifications. The RequestDirector class is responsible for constructing HTTP requests to the backend service. A vulnerability exists in the _build_url() method. When an OpenAPI operation defines path parameters (e.g., /api/v1/users/{user_id}), the system directly substitutes parameter values into the URL template string without URL-encoding. Subsequently, urllib.parse.urljoin() resolves the final URL. Since urljoin() interprets ../ sequences as directory traversal, an attacker controlling a path parameter can perform path traversal attacks to escape the intended API prefix and access arbitrary backend endpoints. This results in authenticated SSRF, as requests are sent with the authorization headers configured in the MCP provider. This issue has been patched in version 3.2.0.

Vulnerability class: SSRF (Server-Side Request Forgery)

Published · last modified .

CVSS v3 metric

CVSS v3 base score 10.0 (Critical). Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H.

EPSS exploit prediction

EPSS: 0.014 (70.8th percentile), scored .

Low probability of exploitation in the next 30 days, but still tracked. 71st percentile — 70.8% of CVEs in the catalogue have a lower EPSS than this one. How to read EPSS.

EPSS trend (30 days)EPSS over the last 30 days for CVE-2026-32871: held from 0.009 to 0.014.

EPSS over last 30 days · oldest: 0.009 · newest: 0.014 · change: +0.005

Affected products

Weakness classification (CWE)

References

Frequently asked questions

What is CVE-2026-32871?
CVE-2026-32871 is a critical-severity vulnerability in Jlowin Fastmcp, classified under Server-Side Request Forgery (SSRF). CVSS score: 10.0/10. Published 2026-04-02.
How severe is CVE-2026-32871?
Critical severity. CVSS v3 base score is 10.0 out of 10.