MCP Capability Negotiation
Not every MCP implementation supports every optional feature. Clients need a reliable way to understand what a server can do before they depend on a feature.
Discovery before execution
A client may discover capabilities such as available tools, prompts, resources, protocol features, or extensions. Modern SDKs can perform discovery and adapt behavior based on the server's supported protocol level.
Why negotiation matters
Without capability awareness, a client might call a method the server does not support or assume semantics from a newer protocol revision. Negotiation makes compatibility explicit instead of relying on trial and error.
What changed in 2026
The latest protocol core is self-describing and no longer requires the old handshake/session pattern for every interaction. Discovery is still useful, but the core allows requests to carry enough information to be handled independently. The OpenAI Agents SDK, for example, documents modern MCP SDK behavior that probes newer discovery first and can fall back to legacy initialization when talking to older servers.
Application guidance
- Use official SDK negotiation rather than hardcoding assumptions.
- Log negotiated protocol versions for debugging.
- Do not expose a feature to your agent until the server actually supports it.
- Plan graceful degradation when optional capabilities are absent.