MCPNews

The Model Context Protocol ecosystem, verified

Current spec 2026-07-28

Model Context Protocol project

Ruby SDK 1.4.0 repairs the subscriptions/listen stream and lets buffering hosts decline it

The official Ruby SDK's v1.4.0, released 2026-08-28, fixes the ordering of the subscriptions/listen stream: no notification is delivered before the acknowledgement, and the graceful closing result is guaranteed to be the final message. It also adds serve_subscriptions_listen: false, so a host that buffers its responses, the SDK's documented Rails controller pattern among them, can decline the method instead of answering a streaming request with a body it cannot render.

The official Ruby SDK released v1.4.0 on 2026-08-28, a release aimed entirely at subscriptions/listen, the 2026-07-28 method that streams change notifications to a client over one long-lived response.

Two of the three changes enforce the stream's ordering guarantees: a notification can no longer reach a client before the acknowledgement that opens the stream (#532), and writes are serialized so the graceful closing result is always the final message a client sees (#535). Out of order, either failure mode leaves a client unable to tell a healthy close from a dropped stream.

The third change is an escape hatch. Not every Ruby host can hold an SSE stream open; the SDK's own documented Rails controller pattern buffers its responses. serve_subscriptions_listen: false lets such a host decline the method outright rather than answer a modern client with a streaming body it cannot actually deliver (#533).

The SDK's promotion from Tier 2 to Tier 1 remained pending as of 2026-09-02: PR #3248, which proposes the promotion on conformance evidence, was still open with no activity since 2026-08-23.

Related spec revisions

Related publishers

How was this verified, and what are the sources?

Published · last verified · confidence 1.00.

  1. Ruby SDK v1.4.0 release notes, published 2026-08-28 - "This release repairs the subscriptions/listen stream"; adds serve_subscriptions_listen: for hosts that cannot hold an SSE stream open (#533), delivers notifications only after the acknowledgement (#532), serializes writes so the graceful result is the final message (#535) - accessed

← All news