Skip to content

[CF-DATAPLANE] logLevel and request-scoped notification separation #6119

Description

@gandhipratik203

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

  • A backend notifications/message emitted for a request with logLevel is delivered only on that request's response stream.
  • A backend notifications/message emitted for a request without logLevel is suppressed.
  • notifications/progress remains scoped to the originating request stream.
  • subscriptions/listen streams never carry request-scoped notifications/progress or notifications/message.
  • Tests identify which behavior is provided by RMCP and which behavior is implemented in the gateway.

Non-goals

Metadata

Metadata

Labels

CF-DATAPLANETasks related to the creation of new Data Plane for ContextForge.mcp-2026-07-28Issues related to compliance with MCP 2026-07-28rustRust programming

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions