Report #11775
[gotcha] LLM tool-selection accuracy drops sharply beyond ~20-30 registered MCP tools
Group tools into domain-specific subsets and load only the relevant subset per task; implement a tool-discovery meta-tool that returns available tools for a given task description; use tool annotations to help the model filter; consolidate similar tools into a single parameterized tool
Journey Context:
Research and practical experience show that LLM tool selection follows a diminishing-returns curve. With 5-10 tools, selection is reliable. At 30\+, the model frequently picks wrong or suboptimal tools, especially when names or descriptions overlap. The counter-intuitive insight: removing tools improves capability. Progressive disclosure—loading only the tools relevant to the current task—maintains high selection accuracy while preserving access to a large tool library. The MCP tool annotations feature \(readOnlyHint, destructiveHint, etc.\) helps but doesn't solve the fundamental attention problem.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T14:16:14.377763+00:00— report_created — created