What problem does it solve?
Tools are the primary interface between agents and the world. Unlike traditional APIs designed for developers who understand underlying systems, tool APIs must be designed for language models that infer intent from descriptions and generate calls from natural language requests. Poor tool design creates failure modes that no amount of prompt engineering can fix. Effective tool design follows specific principles that account for how agents perceive and use tools.
Core Features & Use Cases
- Consolidation-first design: build comprehensive tools that cover full workflows rather than overly narrow wrappers.
- Clear tool descriptions: define what the tool does, when to use it, expected inputs, and outputs with concrete examples.
- Error handling and recoverability: design actionable errors to guide recovery.
- Tool naming and organization: namespace tools to manage scale and reduce ambiguity.
- Practical examples: illustrative uses like designing a schedule_event tool that handles availability and booking in a single call.
Quick Start
Draft a new tool description that follows the principles above, including a clear name, inputs, outputs, defaults, and error handling.