One read of Model Context Protocolmcp-20260820T233715Z
1 pages moved out of 144 read.
Pages moved
1
significant first
Pages read
144
in this capture
Captured
23:37 UTC
Corpus hash
afd2772c90a1
corpus-hash
What this read moved
1-1 of 1specification/2026-07-28/basic/patterns/subscriptions Changed · +7 / -6 lines
from line 117
117117
118118* The **client** cancels it — close the SSE stream (HTTP) or send
119119 `notifications/cancelled` referencing the `subscriptions/listen` request ID (stdio).
120* The **server** tears it down (e.g., during shutdown) — it **SHOULD** send the
121 empty `subscriptions/listen` response to signal a graceful end (see
120* The **server** tears it down (e.g., during shutdown) — it **SHOULD** send a
121 successful `subscriptions/listen` response to signal a graceful end (see
122122 [Graceful Closure](#graceful-closure)), then close the stream.
123123* The underlying transport closes (HTTP timeout, TCP disconnect, stdio process
124124 exit).
from line 127
127127
128128When the server ends a subscription on its own initiative (for example, during
129129shutdown), it **SHOULD** respond to the original `subscriptions/listen` request
130with an empty result before closing the stream. This is the JSON-RPC response to
131the long-lived request, correlated by its `id`, and signals that the subscription
132ended gracefully — as opposed to an abrupt transport drop, which carries no
133response.
130with a completion result before closing the stream. The result carries no
131method-specific data beyond the standard result fields and subscription
132metadata. This is the JSON-RPC response to the long-lived request, correlated by
133its `id`, and signals that the subscription ended gracefully — as opposed to an
134abrupt transport drop, which carries no response.
134135
135136```json theme={null}
136137{