Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations (readOnlyHint=false, destructiveHint=false) by disclosing billing ('paid from your balance'), the return payload, the agent's opening behavior, and three distinct termination conditions: manual stop, one minute of an empty room, or credit exhaustion. That cost and lifecycle detail is exactly the context an agent cannot get from structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.