Parent: #5681
Depends on: #5679
Related: #5953
Goal
Implement and verify MCP 2026-07-28 request-scoped notification behavior for notifications/message and io.modelcontextprotocol/logLevel in the Rust dataplane.
Request-scoped notifications must stay on the response stream for the originating request and must not be routed through subscriptions/listen.
Scope
- Verify what RMCP 3.0.1 already enforces for request-scoped notification routing.
- Plumb
io.modelcontextprotocol/logLevel from request _meta through the gateway path.
- Suppress
notifications/message when logLevel is absent.
- Preserve request-scoped
notifications/progress behavior on the originating request stream.
- Add tests proving
notifications/progress and notifications/message do not appear on subscriptions/listen streams.
Acceptance criteria
Non-goals
Parent: #5681
Depends on: #5679
Related: #5953
Goal
Implement and verify MCP
2026-07-28request-scoped notification behavior fornotifications/messageandio.modelcontextprotocol/logLevelin the Rust dataplane.Request-scoped notifications must stay on the response stream for the originating request and must not be routed through
subscriptions/listen.Scope
io.modelcontextprotocol/logLevelfrom request_metathrough the gateway path.notifications/messagewhenlogLevelis absent.notifications/progressbehavior on the originating request stream.notifications/progressandnotifications/messagedo not appear onsubscriptions/listenstreams.Acceptance criteria
notifications/messageemitted for a request withlogLevelis delivered only on that request's response stream.notifications/messageemitted for a request withoutlogLevelis suppressed.notifications/progressremains scoped to the originating request stream.subscriptions/listenstreams never carry request-scopednotifications/progressornotifications/message.Non-goals
subscriptions/listen; tracked in [CF-DATAPLANE] Relay MCP 2026-07-28 resource update notifications through subscriptions/listen #5615.subscriptions/listenmanagement; tracked in [CF-DATAPLANE] Upstream subscriptions/listen management for modern backends #6118.