Skip to content

Track: upgrade to MCP 2026-07-28 protocol revision (blocked on mcp-go) #532

Description

@Dumbris

Summary

The MCP 2026-07-28 spec revision (release candidate) is a major, proxy-impacting protocol change. This issue tracks mcpproxy's upgrade. Full scope captured in spec 057-mcp-2026-upgrade (specs/057-mcp-2026-upgrade/spec.md).

⛔ Dependency gate

Implementation is BLOCKED until github.com/mark3labs/mcp-go ships 2026-07-28 support. As of 2026-05-28, pinned v0.54.0 and latest v0.54.1 both target only 2025-11-25. We do not hand-roll protocol primitives ahead of the library.

Breaking changes to address (proxy-specific)

  • Sessions removed / fully stateless; */list MUST NOT vary per connection — reconcile with agent-token scoping + multiuser filtering.
  • initialize/initialized removed → new server/discover RPC + per-request _meta (protocolVersion/clientInfo/clientCapabilities), both as server and client.
  • New REQUIRED headers Mcp-Method, Mcp-Name, MCP-Protocol-Version — proxy must set/validate/forward both directions; -32001 HeaderMismatch.
  • MRTR (input_required + inputResponses) replaces server-initiated sampling/elicitation over SSE.
  • x-mcp-header param→header mirroring.
  • resources/subscribesubscriptions/listen; GET stream removed.
  • Resource-not-found -32002-32602.

Additive opportunities

  • CacheableResult (ttlMs + cacheScope) → amplifies token-savings value prop.
  • Deterministic tool ordering; server:tool prefix now spec-blessed.
  • Header-based routing (avoid JSON body parse); Tasks + MCP Apps extensions.
  • W3C/OTel trace context in _meta → activity log; JSON Schema 2020-12 default.

Deprecations to migrate away from

roots, sampling, logging, HTTP+SSE 2024-11-05 transport (12-month window).

Next steps

  1. Watch mcp-go for a 2026-07-28 release (scheduled tracking agent).
  2. Re-validate spec 057 against the finalized (non-RC) spec when the gate clears.
  3. Run /speckit.plan/speckit.tasks once unblocked.

Related spec: specs/057-mcp-2026-upgrade/spec.md

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions