Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations (readOnly, idempotent, non-destructive), the description discloses behavioral traits: bounded static checks, no JavaScript execution, no access control bypass, and cache reuse behavior via the fresh parameter. This adds meaningful context regarding what the tool does and doesn't do.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.