GHSA-f897-62hf-6gxq: MCP TypeScript SDK: HTTP server transports and handlers did not limit request body size or JSON-RPC batch length
- Identifier
- GHSA-f897-62hf-6gxq
- Published
- Record updated
- Affected
- @modelcontextprotocol/hono >= 2.0.0, < 2.0.1, fixed in 2.0.1
- @modelcontextprotocol/node >= 2.0.0, < 2.1.0, fixed in 2.1.0
- @modelcontextprotocol/server >= 2.0.0, < 2.1.0, fixed in 2.1.0
- and 1 more
Summary
Affected versions of the MCP TypeScript SDK put no limit on the size of HTTP POST bodies or on the number of messages in a JSON-RPC batch, so large requests can exhaust server memory and a long batch can block other clients. Exploitation needs no credentials unless the application authenticates requests before they reach the SDK, and stdio-only servers are not affected.
Mitigation
Upgrade @modelcontextprotocol/sdk to 1.30.1 or later for 1.x, and to @modelcontextprotocol/server 2.1.0, @modelcontextprotocol/node 2.1.0 and @modelcontextprotocol/hono 2.0.1 or later for 2.x, upgrading every installed package. Bodies over 4 MiB now get 413 and batches over 100 messages get 400; raise the maxRequestBodySize option if clients send larger bodies. If upgrading is not possible yet, cap request body size in a reverse proxy.
Affected packages in the Exposure Registry
Matched by package name and ecosystem. Each entry shows whether the package delegates to a language model and how many tracked packages depend on it.
- @modelcontextprotocol/nodenpmNo LLM dependency detected · 2 tracked dependents
- @modelcontextprotocol/sdknpmLLM dependency since 2024-11-11 · 19 tracked dependents
- @modelcontextprotocol/servernpmNo LLM dependency detected · 3 tracked dependents
Topics
Related items
- MediumGHSA-w4fh-qvv9-3v23: Model Context Protocol Python SDK: Server bearer-token authentication accepts tokens issued for a different resource serverSame vendor · GitHub Advisory Database
- MediumGHSA-5h93-6whr-6q8j: Model Context Protocol Python SDK: HTTP client transports followed cross-origin redirects carrying custom headers and bodiesSame vendor · GitHub Advisory Database
- MediumGHSA-rwrf-2pqf-9j8j: Model Context Protocol Python SDK: Client fetched server-chosen $ref URLs while validating tool results against output schemasSame vendor · GitHub Advisory Database
- HighGHSA-46jr-4wx8-v453: MCP TypeScript SDK: One HTTP request within the default size limit could exhaust server memory during validationSame vendor · GitHub Advisory Database
- HighGHSA-22jm-h49p-29qw: MCP TypeScript SDK: Experimental tasks were not tied to the session that created themSame vendor · GitHub Advisory Database