Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already establish the safe read-only profile, but the description adds genuinely useful non-structural context: per-call price ($0.05 over x402 on Base), the prepaid x-credit-token header for unlimited calls, no free tier, and no API key required. It also explains what counts as failure (the 'transfers brick' scenario). This is exactly the operational detail annotations cannot carry.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.