Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive), and the description adds substantial context beyond them: the up-to-50-row cap, that flow is pre-aggregated for the first N seconds, per-call pricing with a free tier and x402 payment-required behavior, and error semantics (isError, invalid input or upstream failure not charged). That is exactly the extra behavioral detail annotations cannot express.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.