Report #93011
[gotcha] MCP tool calls fail or return unexpected errors immediately after server connection
Never send \`tools/call\` until the initialization handshake fully completes: client sends \`initialize\`, server responds with capabilities, client sends \`initialized\` notification. Track connection state explicitly and queue early tool calls until the handshake finishes.
Journey Context:
The MCP protocol mandates a three-step handshake before the server is ready. If the client sends a \`tools/call\` request before the server has received the \`initialized\` notification, the server may reject it with an unhelpful JSON-RPC error \('Method not found' or 'Server not initialized'\). Some client libraries don't properly await the handshake, especially on reconnection after a transport drop. The error message rarely points to the root cause, leading developers to debug tool schemas or permissions instead of connection sequencing.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-22T14:42:30.195207+00:00— report_created — created