The MCP subscriptions listen stream and notification delivery
Verified 2026-09-05 · 15 claims · sources tier 1
Also known as Last-Event-ID, subscriptions/listen, toolsListChanged.
The Model Context Protocol defines a subscriptions listen stream that a client opens to receive server notifications 9. Delivery requirements and transport handling across these streams are specified in the 2026-07-28 revision 1312.
Notification delivery and filter negotiation
In the 2026-07-28 revision, a server that declared the list changed capability SHOULD send the tool list changed notification to clients that have opened a subscriptions listen stream with the tools list changed filter set to true 13. Delivery of a tool list changed notification to a subscribed client is defined as a SHOULD rather than a MUST 7. WarmTransfer's reading of the sources is that a client re-issuing the tools list request after a notification is optional rather than required, as the Tools page depicts it inside an optional fragment of its message flow diagram 6.
When negotiating subscription filters, a filter type the server does not support is omitted from the acknowledgment rather than raising an error, and the client-side check that would catch the omission is a SHOULD 8. Furthermore, the specification does not state what becomes of a notifiable event that occurs while no client holds a matching subscription; neither the subscriptions page, the streamable transport page, the tools page, nor the changelog addresses retention, queueing, or replay 14.
Transport behaviors
Transport requirements differ between streamable HTTP and standard input and output streams 1012. For the standard input and output transport, a client MUST demultiplex incoming notifications by subscription identifier 12.
Under streamable HTTP, resumable server-sent event streams via the Last-Event-ID header are not supported in the 2026-07-28 revision 10. In addition, client reconnection after a dropped stream is graded MAY, and the specification publishes no backoff schedule, no retry cap, and no way to learn what was missed 11.
See also
See also Tool schema signature monitoring and drift handling. See also Model Context Protocol transports compared. See also Webex published MCP servers for external AI clients.
Applicability
Across the claims in this article, the evidence covers Model Context Protocol Project, verified as of 2026-09-05. The deployment model is not covered by any claim in this article. The claims in this article specifically apply to Model Context Protocol specification revision 2026-07-28 9137148101112.
What remains uncertain
The specification does not state what becomes of an event that occurs while no client holds a matching subscription, as retention, queueing, and replay are not addressed by any claim in this article 14. Whether any Webex MCP server implements subscriptions is not covered by any claim in this article. Whether a client can discover supported filters before subscribing is not covered by any claim in this article. The Discovery page new in this revision is not covered by any claim in this article. The specification Resources page is not covered by any claim in this article. The full list of subscribable event types is not covered by any claim in this article. How subscriptions differ between stdio and streamable HTTP beyond client demultiplexing, lack of Last-Event-ID support, and optional reconnection is not covered by any claim in this article. Whether the corpus extractor drops diagrams entirely is not covered by any claim in this article.
See also
Parent of
- Model Context Protocol transports comparedstub — The one client obligation is transport scoped
Related to
- Webex published MCP servers for external AI clients — Whether any Webex server implements subscriptions is unknown
Scopes
- Tool schema signature monitoring and drift handling — Delivery guarantees decide whether drift is detectable
Referenced by
- Tool schema signature monitoring and drift handling — Notification delivery is gated on the subscription stream
- Whether a cached tool list defeats a change notificationstub — The notification only arrives over a subscription stream the server agreed to honour
- Stateful tools in the Model Context Protocol — Introduced in the same specification revision
- Fidelity of the corpus text extraction pipelinestub — A finding was recoverable only from the raw payload
- Model Context Protocol resources and the caching utility — Resource subscriptions were folded into that stream
Claims
| # | Claim | Status | Confidence | Verified |
|---|---|---|---|---|
| 1 | The 2026-07-28 message flow diagram shows the server answering a subscriptions listen request with a notification named notifications slash subscriptions slash acknowledged. Model Context Protocol specification 2026-07-28, Server Features: Tools · Tools > Message Flow diagram | fact | 0.60 | 2026-09-05 |
| 2 | A client whose requested toolsListChanged filter is silently dropped from the subscription acknowledgment receives no notification, so the caching page's invalidation scenario never applies to it even though the server advertised listChanged. Model Context Protocol specification 2026-07-28, Subscriptions · Acknowledgment section combined with the caching page's Interaction with Notifications | inference | 0.60 | 2026-09-05 |
| 3 | The subscriptions listen stream replaces the former resources subscribe request, so resource subscriptions and tool list notifications now share one filter-based mechanism rather than running in parallel. Model Context Protocol specification 2026-07-28, Subscriptions · Subscriptions | fact | 0.90 | 2026-09-05 |
| 4 | The subscriptions page states that a server MUST NOT send notification types the client has not explicitly requested. Model Context Protocol specification 2026-07-28, Subscriptions · Subscriptions | fact | 0.90 | 2026-09-05 |
| 5 | The Resources page does not state what becomes of a notifiable event that occurs while no client holds a matching subscription; no queueing, retention or replay language appears in its prose, its code samples or its diagram. | fact | 0.90 | 2026-09-05 |
| 6 | The Tools page depicts a client re-issuing the tools list request after a notification inside an optional fragment of its message flow diagram rather than requiring it. Model Context Protocol specification 2026-07-28, Server Features: Tools · Tools > Message Flow diagram | inference | 0.60 | 2026-09-05 |
| 7 | Delivery of a tool list changed notification to a subscribed client is a SHOULD rather than a MUST. Model Context Protocol specification 2026-07-28, Server Features: Tools · Tools > List Changed Notification | fact | 0.90 | 2026-09-05 |
| 8 | A subscription filter type the server does not support is omitted from the acknowledgment rather than raising an error and the client side check that would catch the omission is a SHOULD. Model Context Protocol specification 2026-07-28, Subscriptions · Subscriptions, filter negotiation | fact | 0.90 | 2026-09-05 |
| 9 | The Model Context Protocol defines a subscriptions listen stream that a client opens to receive server notifications. Model Context Protocol specification 2026-07-28, Subscriptions · Subscriptions | fact | 0.90 | 2026-09-05 |
| 10 | Resumable server-sent event streams via the Last-Event-ID header are not supported in the 2026-07-28 revision. Model Context Protocol specification 2026-07-28, Streamable HTTP · Streamable HTTP | fact | 0.90 | 2026-09-05 |
| 11 | Client reconnection after a dropped stream is graded MAY and the specification publishes no backoff schedule no retry cap and no way to learn what was missed. Model Context Protocol specification 2026-07-28, Streamable HTTP · Streamable HTTP | fact | 0.60 | 2026-09-05 |
| 12 | The subscriptions page states a client obligation for the standard input and output transport: a client MUST demultiplex incoming notifications by subscription identifier. Model Context Protocol specification 2026-07-28, Subscriptions · Subscriptions, stdio transport | fact | 0.90 | 2026-09-05 |
| 13 | In the 2026-07-28 revision a server that declared the list changed capability SHOULD send the tool list changed notification to clients that have opened a subscriptions listen stream with the tools list changed filter set to true. Model Context Protocol specification 2026-07-28, Server Features: Tools · Tools > List Changed Notification | fact | 0.90 | 2026-09-05 |
| 14 | The specification does not state what becomes of a notifiable event that occurs while no client holds a matching subscription; neither the subscriptions page the streamable transport page the tools page nor the changelog addresses retention queueing or replay. Model Context Protocol specification 2026-07-28, Subscriptions · Subscriptions, whole page | fact | 0.90 | 2026-09-05 |
| 15 | Multi Round-Trip Requests do not share the long-lived connection machinery that subscriptions use. Model Context Protocol specification 2026-07-28, Multi Round-Trip Requests · Multi Round-Trip Requests | inference | 0.60 | 2026-09-05 |
Sources
Model Context Protocol specification 2026-07-28, Multi Round-Trip Requests
Model Context Protocol specification 2026-07-28, Resources
Model Context Protocol specification 2026-07-28, Server Features: Tools
Model Context Protocol specification 2026-07-28, Streamable HTTP
Model Context Protocol specification 2026-07-28, Subscriptions
Cite this page
APA
WarmTransfer. (2026, September 5). The MCP subscriptions listen stream and notification delivery. WarmTransfer. https://warmtransfer.net/knowledge/mcp-subscriptions-listen
BibTeX
@misc{warmtransfer-mcp-subscriptions-listen,
title = {The MCP subscriptions listen stream and notification delivery},
author = {{WarmTransfer}},
year = {2026},
url = {https://warmtransfer.net/knowledge/mcp-subscriptions-listen},
note = {Verified 2026-09-05}
}