Give an agent too many tools and it picks the wrong one

To choose a tool, the agent reads all of them. With a hundred near-identical options, the right one is buried among distractors, and selection accuracy collapses.

B

Balagei G Nagarajan

3 MIN READ


An AI agent facing an overwhelming wall of hundreds of near-identical glowing tool icons, hesitating, with one correct tool lost in the crowd
RAG-MCP scaled from 1 to over 1,100 tools and measured selection accuracy at each step.
— from “Give an agent too many tools and it picks the wrong one”

Key facts.

  • More tools, worse choices: retrieving only the relevant tools more than tripled tool-selection accuracy, from 13.62% to 43.13%, while cutting prompt tokens by over 50% (RAG-MCP, arXiv:2505.03275, 2025).
  • Degradation is sharp: accuracy held up below about 30 tools and fell off steeply past roughly 100, as distractors and semantic overlap overwhelmed selection (RAG-MCP, 2025).
  • The cost is double: every tool definition fills context window, so a sprawling toolset both confuses the model and inflates the token bill of every call (RAG-MCP, 2025).

Why does adding tools make the agent worse?

It reads every definition to choose; a bigger model still picks wrong at scale. (arXiv:2505.03275)

Every tool in context is a distractor the model has to eliminate. With a handful of tools, that's easy. With a hundred, many of them similar, the right choice is buried. The model can't reliably filter relevant from irrelevant, so it picks a plausible wrong one. Two things compound this: semantic overlap (several tools sound like they could do the job) and prompt bloat (tool definitions crowd out the actual task). More tools isn't more capability. Past a threshold, it's less.

How fast does it degrade?

Faster than you'd expect. RAG-MCP scaled from 1 to over 1,100 tools and measured selection accuracy at each step. Below 30 tools, the agent held up. Past about 100, accuracy dropped sharply. At the extreme end, failures dominated. The numbers: showing every tool gave 13.62% accuracy. Fetching only the relevant ones hit 43.13%, more than three times better, same tasks. A large tool registry isn't neutral. It actively limits how well your agent picks.

A heatmap with number of available tools on the x-axis and tool-selection accuracy shaded from green at low tool counts to red past about 100 tools, with a marker at the 30 and 100 thresholds

The fix: retrieval, not a bigger prompt

Treat tools like documents in RAG. Index their descriptions. At query time, pull only the handful relevant to the current task and show the model those, nothing else. RAG-MCP does this and more than triples selection accuracy while cutting prompt tokens by over half. Your registry can hold thousands of tools. The model only ever sees the few that matter for this request. Retrieve what's relevant. Don't stuff everything in.

How to keep the toolset sane

PracticeWhat it does
Retrieve tools per queryShow the model only the few relevant tools, not the whole registry
Keep the per-call set smallAim for a handful of tools in context, well under the degradation point
Remove near-duplicatesMerge or namespace tools that overlap, so the model isn't guessing between them
Group hierarchicallyPick a category first, then a tool within it, instead of one flat list
Name and describe clearlyDistinct names and crisp descriptions make the right tool easier to find
Measure selection accuracyTrack how often the agent picks the right tool as you add more

Every tool you add makes the choice harder and the prompt heavier. Past a point, accuracy collapses under the weight of the toolbox itself. Retrieve the relevant tools per task. Keep the per-call set small. Remove overlap. A bigger model gets just as confused by a hundred near-identical tools. Find where your agent breaks, from the goal, before you build it.

Frequently asked questions

How many tools is too many?
Agents held up below about 30 tools in the RAG-MCP study and degraded sharply past roughly 100. A few dozen is a soft ceiling for what the model sees at once. Retrieve a smaller relevant subset per task.

Isn't a bigger context window the answer?
No. A bigger window lets you stuff in more tool definitions, which adds more distractors and more prompt bloat. The fix is showing fewer relevant tools, not making room for all of them.

What's the single best fix?
Tool retrieval: index your tool descriptions and fetch only the relevant ones per request. That alone more than tripled selection accuracy and halved prompt tokens in the study.


Share this post

Join the discussion

Have a take, a war story, or a question? Sign in with GitHub to comment and react. Comments are powered by GitHub Discussions, ad-free and yours to moderate.

Continue Reading

Find where your agent breaks, before you build it

Faultmap maps where your agent will fail from the goal and your data, then hands you the first test suite it has to pass.