do agent frameworks retry on tool timeout or just fail
testing langchain and autogen for a client project. when mcp tool times out after 30s, does the agent retry with backoff or just fail the whole task. docs don't say anything and i don't want to find out in prod
tested autogen 0.4.2, langchain 0.3.14, crewai 0.86.0. autogen retries indefinitely with no backoff. langchain retries 3 times by default but you have to set it in the config, not documented anywhere. crewai just fails immediately. none of them expose timeout config in the mcp tool schema itself, you have to set it at the framework level which is completely backwards
wait so if tool is stateful and you retry, does it execute twice? like if the tool charges a credit card and times out, does autogen just charge it again without asking?
imo this is the scariest thing about agent frameworks right now - they all treat tool calls as idempotent when most real tools are definitely not idempotent. retrying a failed database write or api call can cause cascading corruption
imo most frameworks don't retry by default because retrying a failed tool call can cause cascading failures if the tool is stateful.... but yeah the lack of documentation is annoying. could be wrong but i think langchain's retry behavior changed between 0.3.12 and 0.3.14 and they didn't update the docs