Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive), so the description earns credit for adding context the annotations do not: that billing terms differ per payment method (Pix/USDC = 30 days non-renewing, card = monthly auto-renew) and that `account` comes back as `null` when no credential is supplied. That conditional-output behavior is exactly the kind of thing an agent cannot infer from structured fields.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.