Skip to content
verify mcp Beta VerifyMCP is currently in beta. If you notice any issues, email [email protected] and we’ll put it right.

MCP spec 2025-11-25: what changed

2025-11-25 is a supported revision of the Model Context Protocol specification, published on 25 November 2025. It was superseded by 2026-07-28, but it remains inside VerifyMCP’s supported-version window, so a server that negotiates it still earns full protocol-recency credit.

It is the last revision built on the initialize handshake. Everything from 2026-07-28 onward is stateless, which makes this the boundary between the two eras the spec calls legacy and modern.

What changed versus 2025-06-18

The major changes, as listed in the official changelog, are:

  • Richer authorization server discovery with support for OpenID Connect Discovery 1.0, plus incremental scope consent via the WWW-Authenticate header and support for OAuth Client ID Metadata Documents as a recommended registration mechanism.
  • Icons as additional metadata for tools, resources, resource templates and prompts.
  • Extended elicitation: a more standards-based ElicitResult and EnumSchema supporting titled, untitled, single-select and multi-select enums, plus a new URL mode for elicitation requests.
  • Tool calling in sampling, via tools and toolChoice parameters on sampling requests.
  • Experimental tasks, which let a client track durable requests through polling and deferred result retrieval.

Minor changes included establishing JSON Schema 2020-12 as the default dialect for MCP schema definitions, clarifying that input-validation errors should be returned as tool execution errors (so the model can self-correct), and clarifying stdio and Streamable HTTP transport behaviour. The revision also formalised the protocol’s governance structure, including working groups and an SDK tiering system.

Why it matters

This revision continues to mature the authorization and elicitation work of the previous releases while adding forward-looking capabilities such as tasks and tool calling within sampling. Several of them were reshaped almost immediately: 2026-07-28 moved tasks into an official extension and replaced this revision’s URL-mode elicitation completion notification with the Multi Round-Trip Requests pattern.

A server that negotiates 2025-11-25 still earns full protocol-recency credit in the remote endpoint rubric, because it sits inside the supported window. That window moves with each release, so this is the right moment to plan the move to 2026-07-28. If yours negotiates something older, see negotiate a current protocol version.

Read the full revision

modelcontextprotocol.io/specification/2025-11-25 (or the changelog).

Next and previous

Written by Stuart Blackler.