Tool distribution across agents should follow the principle of least privilege: each agent gets only the tools needed for its specific role. Not equal distribution, not all tools, not “enough to be flexible.” Exactly what the role requires.
The correct distribution
For a multi-agent research system:
- Search agent:
[WebSearch, FetchURL]— web discovery tools - Analysis agent:
[Read, ExtractData]— data processing tools - Synthesis agent:
[Write, FormatReport]— output generation tools
Each agent has 2 tools. Total system tools: 6. No overlap, no “just in case” additions.
Why not give everyone everything?
12 tools per agent (all shared) degrades selection reliability for every agent. The search agent would sometimes misroute to Write. The synthesis agent would sometimes try WebSearch. Cross-specialization misuse wastes time and produces confusing results.
Why not equal distribution?
“Give each agent a unique tool and share remaining tools equally” has no principled basis. Tool access should match role requirements, not be distributed for fairness. A search agent has no business with FormatReport regardless of how many tools other agents have.
The coordinator’s role in distribution
The coordinator decides which agent handles which task (see K1.2.1). Each agent’s tool set supports its designated tasks. When a task requires tools from multiple domains, the coordinator delegates to multiple agents — it doesn’t give one agent tools from another’s domain.
One-liner: Distribute tools by role (search agent gets search tools, analysis agent gets analysis tools) following least privilege — giving all tools to all agents degrades selection reliability and enables cross-specialization misuse.