Report #10090
[tooling] Tool execution timeouts when processing large files or API calls
Implement progress notifications using the progressToken in tool calls; emit $/progress notifications from server to client at least every 30 seconds to prevent HTTP timeouts and avoid client-side polling loops.
Journey Context:
Without progress tokens, long-running tools \(e.g., indexing a codebase, waiting for a slow third-party API\) cause clients to timeout or retry, wasting tokens on duplicate executions. The alternative is splitting work into async jobs with polling, but that requires state management. Progress notifications allow the server to keep the connection alive while streaming partial updates, and clients can show UX progress without LLM token cost. Many developers miss that the progressToken from the client must be echoed back in each notification.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T09:48:11.515751+00:00— report_created — created