Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover the safety profile (readOnly, idempotent, non-destructive, openWorld), but the description adds substantial context beyond them: it discloses that a live transfer simulation is run from a real holder, that the result is a hard canSell verdict with reasons, and — critically — the payment model ($0.08 per call over x402 on Base, prepaid x-credit-token header for unlimited calls, no free tier, no API key). That pricing/auth detail is exactly the kind of operational fact an agent needs and cannot get from annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.