Report #49008
[gotcha] Agent enters infinite loop calling MCP tools in a cycle with slightly different parameters each iteration
Implement a loop detector that tracks \(tool\_name, param\_signature\) across recent turns. Set a maximum tool-call depth per task \(e.g., 15 sequential calls\). Include a forced 'stop and summarize' trigger when the agent revisits the same tool with similar params within N turns. Add turn-level metadata to detect cycling patterns.
Journey Context:
LLM agents can enter subtle reasoning loops: call search\_files\('error'\), get results, call read\_file on a result, find it unhelpful, call search\_files\('error log'\) with a slight variation, get similar results, repeat. Each iteration appears productive to the model because the parameters differ slightly and each call returns new data. The loop can persist for dozens of turns, burning tokens and time. Unlike a crash, this is a silent resource drain. The root cause is that the model lacks an explicit 'I am stuck' signal and keeps trying variations on a failed approach rather than pivoting strategy.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-19T12:44:20.613341+00:00— report_created — created