Your first tool definition
When does the LLM call a tool?
The trace: how an agent decides
More tools, more realistic parameters
The tool name is already half the description
Required vs optional: what blocks and what leaves room
Enums, min/max, format: the schema validates for you
What the tool RETURNS is also a contract
Descriptions the LLM actually reads. the heart of the Track
Bad description vs good description
Mark read vs side-effect: the agent acts differently
When NOT to make a tool (and let the LLM solve it)
Error handling: the handler that doesn't break the agent
Error messages that help the agent recover
Idempotency: calling twice isn't the same as calling twice
Logging for tools: the trace that saves you in production
Chaining tools: when one isn't enough
How many tools is too many? The catalog tradeoff
Caching results: free when the model asks twice
Stateful MCPs: the cart that remembers
Authorization: the agent is NOT admin
The tool the agent ignores
Failure gallery: what you'll debug in production
Capstone: an inventory MCP the agent actually uses