Summary
Tool use is the interface between the agent and the world. A tool is a function the agent can call with structured arguments. Well-designed tools make an agent effective; badly-designed tools make it stall. Tool design is under-taught and over-consequential.
Objectives
- 01Design a tool with a well-scoped interface.
- 02State the two most common tool-design failure modes.
- 03Explain why granular tools beat kitchen-sink tools.
The Lesson
The interface
Name, description, parameters (with types, descriptions, examples), returns. The description is instructions to the model — write it as if the model has never seen your API. Include examples of when to use and not use the tool.
Failure modes
Too many tools: model gets lost picking. Too broad tools: model can't figure out arguments. Prefer 5-10 well-scoped tools over 50 general ones. Prefer 'search_customers_by_email' over 'run_sql_query.'
Key Ideas
- A tool's description is a prompt.
- Narrow, well-named tools beat broad, general ones.