Report #52507
[tooling] MCP server hitting API rate limits and failing silently instead of backpressuring
Implement progress notifications for long-running tools; when rate limited, send progress=0% with message='Rate limited, retrying in Xs', then sleep with exponential backoff before continuing, keeping the connection alive.
Journey Context:
Most MCP examples show immediate returns, but real APIs have rate limits. The spec defines progress notifications \($/progress\) for long tasks. Instead of failing, you can stall the request while keeping the connection alive via progress pings every few seconds. This prevents client timeouts and allows the agent to see why it's waiting. Exponential backoff prevents hammering the API.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T18:37:29.705891+00:00— report_created — created