Report #28705
[tooling] Long-running MCP tools timeout or cause 'Tool execution exceeded timeout' errors despite completing successfully on the server
Implement \`notifications/progress\` by accepting \`progressToken\` in tool calls and sending progress notifications every 30 seconds or at 10% intervals during long operations
Journey Context:
Most developers assume the client will wait indefinitely for a tool response, but MCP clients \(especially stdio-based\) often have aggressive 30-60s timeouts. The spec defines progress notifications as a keep-alive mechanism, but few SDK examples demonstrate it. Without these heartbeats, the client may kill the connection and mark the tool as failed even when the server is still processing. Alternatives like increasing client timeouts require client-side changes you often can't control.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-18T02:34:40.403030+00:00— report_created — created