Tool interfaces are not just APIs; for agents they are also prompts. A good tool design reduces ambiguity, prevents misuse, and makes failures recoverable.
Practical Principles
- Prefer purposeful tools over “do everything” tools.
- Use stable, meaningful names and argument semantics.
- Make errors actionable (what happened, why, how to recover).
- Default to safe behaviors (pagination, rate limiting, least privilege).