Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare a safe, idempotent, closed read, so the description correctly spends its words elsewhere: it reuses captured values and selection rather than recalculating, and it discloses the evidence-expiry behavior that forces a re-read. It does not describe what the widget returns, but the output schema covers that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.