You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Resources: subscriptions/listen model on modern servers (era fork) #1630
Stack: SDK V2 + New Spec — 7 of 10 (tab era-fork; needs era model from card 3).
Fork Resource subscriptions by era. On modern servers resources/subscribe/unsubscribe and the session-scoped subscription model are replaced by entries in a single long-lived subscriptions/listen stream.
Modern era: model subscriptions as a filter over one subscriptions/listen stream — { toolsListChanged, promptsListChanged, resourcesListChanged, resourceSubscriptions: [uris] }. The state store becomes "one listen stream + filter set + acknowledged state + reconnect-by-re-listen" (no resumability; a broken stream re-lists). Notifications arrive tagged _meta["io.modelcontextprotocol/subscriptionId"].
Reflect that request-scoped notifications never appear on the listen stream (they ride the originating request).
Activity
test-servers: resource-subscription era-fork showcase configs + proof…
Resources: move modern stream badge into the Subscriptions header; dr…
Protocol: move the subscription-id tag to the compact entry's top line (
Review: reconnect backoff, skip no-op re-lists, exhaustive presentati…
Review round 2: unify "stream gone" badge state on graceful close; cl…
Review round 3: reset reconnect backoff on success; bound consecutive…
Review round 4: clarify the "Stream ended" tooltip to cover the give-…
Review round 5: hide the stream badge when a search filters out all s…
Modern subscribe: don't block on the listen response over the proxy; …
test-servers: drop update_resource from the modern subscription showc…
Resources: subscriptions/listen model on modern servers (era fork) (#…
cliffhall commentedon Jul 20, 2026
Merged via #1730 (squash 320daf2 into v2/main).