mcp 0.5.0 tool retry logic retries the same failed input forever instead of failing fast
we deployed mcp 0.5.0 to staging yesterday and found that when a tool fails (like external api returns 500), the agent just retries the exact same input over and over with zero backoff until it hits some parent timeout around 120 seconds the retry logic doesnt seem to have any failure threshold or exponential backoff, it just hammers the same failing call in a tight loop. we saw one tool get retried 847 times in 90 seconds before the agent finally gave up is this expected behavior for 0.5.0 or is there some retry config im missing in the sdk docs? we ended up wrapping every tool in our own retry handler with backoff but it feels like this should be built in
we saw this in prod. tool fails, agent retries with identical input 47 times before timeout. no exponential backoff, no circuit breaker, just hammering
we hit this in prod two months ago and it cost us $340 in api calls before we caught it. tool fails because external api returns 429, agent retries with identical request, gets 429 again, loops 127 times before our monitoring caught it 0.5.0 has zero retry intelligence - no exponential backoff, no jitter, no circuit breaker, no max attempts. just hammers the same failed request forever until parent timeout we patched it by wrapping every tool in a retry decorator with exponential backoff and max 3 attempts, but that should be in the sdk itself
hit this exact thing in prod two weeks ago. tool fails, agent retries with identical input, fails again, loops forever. we patched it with a max retry counter but that's not in the sdk itself