Skip to content

Adopt MCP specification 2026-07-28 #431

Description

@ypldan

QuickApps version

latest

What is the problem this feature will solve?

MCP spec 2026-07-28 is a major, partly breaking release (RC published; final on 2026-07-28 — see the release-candidate announcement and the changelog). QuickApps' MCP client implements the session-based protocol the new revision removes: the initialize/initialized handshake and Mcp-Session-Id are gone — protocol version, client info, and capabilities travel via _meta on every request; a mandatory server/discover RPC advertises server identity, capabilities, and instructions; server-initiated requests (sampling/elicitation/roots) become Multi Round-Trip Requests; subscriptions/listen replaces the GET/SSE stream; tool schemas move to full JSON Schema 2020-12; error codes are renumbered; and roots/sampling/logging are deprecated. Servers on older revisions stay valid on those revisions, so QuickApps must interoperate with both generations for the long transition.

What is the feature you are proposing to solve the problem?

Assess and adopt the new spec in the MCP client:

  • Support new-spec servers: stateless request cycle, _meta-carried client info/capabilities, server/discover, multi-round-trip InputRequiredResult handling, updated error codes and JSON Schema 2020-12 tool schemas.
  • Detect the server's spec generation (server/discover as the probe) and keep old-spec servers working — they will remain the majority for a long time, so the session-based path is not legacy code but the primary path for now.
  • Re-baseline in-flight MCP work against the new spec — see Additional information.
  • Evaluate the operability additions (ttlMs/cacheScope caching hints, Mcp-Method/Mcp-Name routing headers, trace-context propagation) as follow-ups.

What alternatives have you considered?

Stay on the 2025 spec until forced — rejected: new servers will target the stateless protocol, and the deprecation clock on the old one is already running.

Additional information

Impact on existing backlog items (to reconcile in this issue's design pass):

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Fields

    No fields configured for Feature.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions