Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly/idempotent/non-destructive/openWorld, so the bar is lower, and the description still adds real behavior: live Coinbase pricing rather than a rate card, a $0.03 per-call x402 charge on Base, a prepaid x-credit-token header for unlimited calls, and no free tier or API key. That billing/auth disclosure is exactly the kind of context 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.