Report #81689
[gotcha] MCP server depends on sampling capability that most clients don't support
During initialization, check client capabilities for capabilities.sampling. If sampling is not supported, degrade gracefully or refuse the connection with a clear error. Never design a server that requires sampling unless you control both client and server. Implement fallback behavior that doesn't need server-side LLM calls.
Journey Context:
The MCP spec defines a sampling capability allowing servers to request LLM completions from the client — enabling servers to implement agentic loops and complex reasoning. This is powerful but not widely supported. Many popular MCP clients do not implement sampling. A server that calls request\_sampling on an unsupported client gets either a silent failure or a confusing 'method not found' error. The gotcha: your server works perfectly in testing with a supportive client but fails mysteriously in production with a different client. Always check capabilities during the initialization handshake and design for the lowest common denominator.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-21T19:42:59.978257+00:00— report_created — created