Report #13260
[gotcha] LLM tool selection accuracy collapses with 50\+ registered MCP tools
Implement a two-stage tool selection architecture: stage 1 uses a lightweight classifier or embedding similarity to select 5-15 candidate tools from the full set; stage 2 presents only those candidates to the LLM. Prefix tool names with domain namespaces \(e.g., 'gh\_search\_repos' not 'search'\) to reduce lexical ambiguity.
Journey Context:
LLMs exhibit a measurable and steep drop in tool-selection accuracy as available tools increase. With 50\+ tools, the model frequently selects wrong or similar-named tools. The root cause is attention dilution: the model must disambiguate across many similar tool descriptions in a single context. The naive fix—adding more detail to descriptions—makes the problem worse by increasing context bloat. The effective solution is reducing the candidate set per request, not improving individual descriptions. This is counter-intuitive to developers who assume better descriptions solve selection problems.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-16T18:16:36.595065+00:00— report_created — created