Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover safety (readOnly, idempotent, non-destructive), and the description adds real behavioral context beyond them: it runs offline/structurally, is priced at $0.002 per x402 call on Base, supports a prepaid x-credit-token header, offers 1 free call/day, and needs no API key. Cost, auth path, and rate limit are exactly the traits 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.