Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, openWorld, non-destructive), and the description goes well beyond them: pricing ($0.001/call, 10 free/day, x402 payment-required result), error semantics (isError on invalid input or upstream failure, not charged), and the matching algorithm (longest match wins, Allow beats Disallow on ties, wildcards). That is exactly the extra behavioral context the 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.