One change
Subscriptions
specification/2026-07-28/basic/patterns/subscriptions
Nearest release: v2.1.238, published 5 hours before this site recorded the change. Shown because the two are within 24 hours of each other. Nothing here says the release caused the edit.
specification/2026-07-28/basic/patterns/subscriptions Changed · +7 / -6 lines
from line 117
* The **client** cancels it — close the SSE stream (HTTP) or send `notifications/cancelled` referencing the `subscriptions/listen` request ID (stdio). -* The **server** tears it down (e.g., during shutdown) — it **SHOULD** send the - empty `subscriptions/listen` response to signal a graceful end (see +* The **server** tears it down (e.g., during shutdown) — it **SHOULD** send a + successful `subscriptions/listen` response to signal a graceful end (see [Graceful Closure](#graceful-closure)), then close the stream. * The underlying transport closes (HTTP timeout, TCP disconnect, stdio process exit).
from line 127
When the server ends a subscription on its own initiative (for example, during shutdown), it **SHOULD** respond to the original `subscriptions/listen` request -with an empty result before closing the stream. This is the JSON-RPC response to -the long-lived request, correlated by its `id`, and signals that the subscription -ended gracefully — as opposed to an abrupt transport drop, which carries no -response. +with a completion result before closing the stream. The result carries no +method-specific data beyond the standard result fields and subscription +metadata. This is the JSON-RPC response to the long-lived request, correlated by +its `id`, and signals that the subscription ended gracefully — as opposed to an +abrupt transport drop, which carries no response. ```json theme={null} {