Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare safety flags; the description goes well beyond them by disclosing the algorithm (Fisher-Yates with a cryptographic random source, implying unbiased, non-reproducible output), the payment model ($0.001 USDC on Base), the payment protocol (x402), and that charging happens only per successful call. This is exactly the kind of cost, auth, and determinism context 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.