CVE-2026-111768

MCP TypeScript validation can exhaust memory within request-size limits

Model Context Protocol maintainers · MCP TypeScript SDK HTTP servers

First documented disclosure · Review checkpoint

Summary

One allowed-size request can exhaust validation memory.

Severity and exploitation evidence

High · 7.5/10 · CVSS 3.1. Severity source.

Exploitation not established: Reviewed sources do not establish malicious exploitation or confirmed victims.

Exploitation evidence source

Technical severity is not a measure of observed attacks or of risk to your deployment. Attempts, demonstrations, and successful compromise retain the qualifications in the source.

How the weakness works

Unbounded array elements and object keys overwhelm validation despite the default 4MiB body cap.

Conditions required

Untrusted HTTP clients; unauthenticated unless protected before the SDK. Stdio-only servers are unaffected.

Potential impact

Process termination and denial of service.

Affected versions and configurations

@modelcontextprotocol/sdk >=1.3.0,<1.32.0; @modelcontextprotocol/server >=2.0.0,<2.3.0.

Fix and mitigation status

SDK 1.32.0/server 2.3.0 add an optional safeguard, disabled by default.

Practical next steps

Upgrade AND configure maxToolInputElements for legitimate tool inputs; lower HTTP/parser body limits too. Upgrade alone changes nothing. Older deployments need request limits, potentially at a proxy.

Operating lesson

Limit structural complexity as well as byte size.

Evidence and limits

The input-element limitation and optional fix were public in PRs 2926/2927 on October 2; the October 15 maintainer GHSA subsequently assigned this CVE and described the memory-exhaustion impact. CVE Program API/cvelistV5 returned 404 and NVD returned zero results October 29; published CNA status is unverified. This differs from the existing body/batch-limit advisory.

Sources