Description
MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients. Prior to 0.23.0, MCP::Server::Transports::StdioTransport and MCP::Client::Stdio in the mcp gem use IO#gets without a byte limit, allowing a peer that sends data without a newline to exhaust process memory. This issue is fixed in version 0.23.0.
Published: 2026-07-29
Score: 6.2 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A lack of input size limits in the MCP Ruby SDK’s stdio transport allows a peer that sends data without a newline to trigger unlimited buffering of incoming data, causing the process to allocate increasing amounts of memory until it exhausts system resources or the VM crashes. This behavior satisfies the criteria for both Unrestricted Resource Consumption (CWE‑400) and Allocation of Resources without Limits (CWE‑770), and results in a denial‑ofservice condition that compromises availability of the host process.

Affected Systems

The vulnerability affects the Model Context Protocol Ruby SDK (ModelContextProtocol: Ruby‑SDK) in all releases prior to version 0.23.0. Any application or service that imports or uses the MCP::Server::Transports::StdioTransport or MCP::Client::Stdio components through these older versions is susceptible.

Risk and Exploitability

The CVSS score of 6.2 indicates a medium severity; the EPSS score of less than 1% reflects a very low probability of exploitation in the wild, and the vulnerability is not listed in the CISA KEV catalog. The most likely attack vector is a malicious peer capable of communicating with the stdio transport on either side of the protocol, supplying data without a newline to induce memory exhaustion. Once the memory is consumed, the process will fail or restart, leading to a denial‑of‑service state for any client or server using the SDK.

Generated by OpenCVE AI on August 3, 2026 at 12:54 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to MCP Ruby SDK 0.23.0 or later.
  • If an immediate upgrade is not possible, replace the IO#gets usage in MCP::Server::Transports::StdioTransport and MCP::Client::Stdio with a size‑bounded read, such as IO#gets(1024) or IO#readpartial, to limit the maximum memory allocated for incoming data.
  • Monitor memory consumption of processes that utilize the stdio transport and alert on sudden increases indicative of unbounded input handling.

Generated by OpenCVE AI on August 3, 2026 at 12:54 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-7683-3w9x-ch42 MCP Ruby SDK: Unbounded line buffer in stdio transports leads to memory exhaustion (DoS)
History

Wed, 29 Jul 2026 21:30:00 +0000

Type Values Removed Values Added
First Time appeared Modelcontextprotocol
Modelcontextprotocol ruby-sdk
Vendors & Products Modelcontextprotocol
Modelcontextprotocol ruby-sdk

Wed, 29 Jul 2026 20:30:00 +0000

Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'poc', 'Technical Impact': 'partial'}, 'version': '2.0.3'}


Wed, 29 Jul 2026 19:30:00 +0000

Type Values Removed Values Added
Description MCP Ruby SDK is the official Ruby SDK for Model Context Protocol servers and clients. Prior to 0.23.0, MCP::Server::Transports::StdioTransport and MCP::Client::Stdio in the mcp gem use IO#gets without a byte limit, allowing a peer that sends data without a newline to exhaust process memory. This issue is fixed in version 0.23.0.
Title MCP Ruby SDK: Unbounded line buffer in stdio transports leads to memory exhaustion (DoS)
Weaknesses CWE-400
CWE-770
References
Metrics cvssV3_1

{'score': 6.2, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H'}


Subscriptions

Modelcontextprotocol Ruby-sdk
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-07-29T19:28:41.352Z

Reserved: 2026-07-15T16:54:55.816Z

Link: CVE-2026-63119

cve-icon Vulnrichment

Updated: 2026-07-29T19:28:19.436Z

cve-icon NVD

Status : Deferred

Published: 2026-07-29T20:17:10.790

Modified: 2026-07-30T19:30:33.710

Link: CVE-2026-63119

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-03T13:00:07Z

Weaknesses
  • CWE-400

    Uncontrolled Resource Consumption

  • CWE-770

    Allocation of Resources Without Limits or Throttling