createmcps.com

MCP-DEP-007

A modern-only server names its supported versions in the initialize error

A server that supports only modern versions SHOULD name the protocol versions it supports in any error it returns to an initialize request.spec anchor

How to fix this

Name the protocol versions you support in the error you return to an `initialize` request. A legacy client cannot fall forward otherwise, and that error may be the only thing its user ever sees.

How the validator checks this

Probe P9.1, against a streamable-http server on the modern protocol. What it reports:

pass
The initialize rejection names the protocol versions this server does support
warn
The initialize rejection does not name any supported version (message: …). A legacy client cannot fall forward, so this error may be the only thing its user ever sees.
skip
Server accepts initialize, so there is no initialize error to inspect

Quoted from the probe that runs this check, so it cannot drift from what the validator actually reports.

This rule is checked deterministically: a fail here is a certain violation, not an inference.

Checked in the same request as MCP-DEP-006.

Check your own server against this rule

The validator makes real protocol requests and reports this rule as pass, warn or fail alongside the other 78. Validate a server or read how the check works.

Other Deprecated and removed features rules

  • MCP-DEP-001ping is no longer implemented
  • MCP-DEP-002logging/setLevel is no longer implemented
  • MCP-DEP-003resources/subscribe and resources/unsubscribe replaced by subscriptions/listen
  • MCP-DEP-004No legacy HTTP+SSE endpoint is served
  • MCP-DEP-005Roots / Sampling / Logging capabilities are not advertised
  • MCP-DEP-006Server accepts initialize (dual-era support)