Impact
The vulnerability in the Model Context Protocol TypeScript SDK allows the HTTP client transports and OAuth client functions to follow redirects to a different origin while retaining custom request headers and, for HTTP status 307 or 308, the request body. When a redirect occurs, sensitive headers such as mcp-session-id and Authorization‑like information, as well as OAuth refresh_token and client_secret contained in the request body, are inadvertently re‑sent to the new origin. This results in unintended disclosure of confidential session identifiers, API keys, and OAuth credentials to potentially malicious or compromised servers.
Affected Systems
The affected products are @modelcontextprotocol/sdk (versions prior to 1.32.0) and @modelcontextprotocol/client (versions 2.0.0 through 2.3.0). Both StreamableHTTPClientTransport, SSEClientTransport, and OAuth client functions such as auth() are impacted. Upgrading to @modelcontextprotocol/sdk 1.32.0 or @modelcontextprotocol/client 2.3.0 resolves the issue.
Risk and Exploitability
With a CVSS score of 6.5, the vulnerability represents moderate severity. The exploitability requires an attacker to be able to influence the redirect path, typically by controlling the MCP or authorization server. Because EPSS data is not available and the vulnerability is not listed in the CISA KEV catalog, current risk is primarily tied to the likelihood of an attacker successfully issuing a cross‑origin redirect. Once the redirect is triggered, credentials and session data can be captured, compromising account security and potentially allowing further lateral movement.
OpenCVE Enrichment
Github GHSA