CVE Catalog

CVE-2026-59951

MediumCVSS 6.9
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.46%

38th percentile - higher than 38% of all known CVEs

Summary

The MCP Python SDK (mcp on PyPI) from 1.8.0 until 1.30.0 and 2.2.0 does not reliably discard session entries in stateful Streamable HTTP servers, including FastMCP, MCPServer, Server.streamable_http_app(), and StreamableHTTPSessionManager. A client that can reach the endpoint can send ordinary short requests that grow server memory without bound until restart. Stateless HTTP, stdio, and SSE transports are not affected.

Risk Assessment

An attacker with network access to the endpoint can exhaust server memory, causing a crash or forced restart. This results in denial of service for legitimate MCP clients.

Recommendation

Upgrade the mcp package to version 1.30.0 or 2.2.0. Consider restricting network access to Streamable HTTP servers and monitoring memory usage.

Other vulnerabilities in MCP Python SDK

See all
Original NVD description (English source)

The MCP Python SDK, called mcp on PyPI, is a Python implementation of the Model Context Protocol (MCP). From 1.8.0 until 1.30.0 and 2.2.0, stateful Streamable HTTP servers, including FastMCP, MCPServer, Server.streamable_http_app(), and StreamableHTTPSessionManager, retain session entries without an idle expiration or aggregate session-count limit. DELETE, refused opening requests, and completed sessions do not reliably discard their entries, and each entry can retain parsed initialize parameters. A client that can reach the endpoint can therefore create ordinary short requests that grow server memory without bound until restart. Stateless HTTP, stdio, and SSE transports are not affected. This issue is fixed in versions 1.30.0 and 2.2.0.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS