Report #13107
[gotcha] LLM enters a reasoning loop when an MCP tool is visible but fails due to missing authentication
Do not include tools in the tools/list response if the client lacks authentication or authorization to execute them. If auth expires mid-session, send a notifications/tools/list\_changed event to remove the tool from the LLM's view.
Journey Context:
An MCP server might list all available tools regardless of the user's auth state. The LLM sees the tool, decides it's the perfect fit, calls it, and gets an auth error. The LLM doesn't understand auth; it just thinks it malformed the request and retries differently, looping endlessly. Dynamically adjusting the tool list based on auth scope prevents the LLM from ever seeing a tool it cannot successfully call.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T17:47:19.283257+00:00— report_created — created