Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive/openWorld, so the bar is lower, yet the description adds real behavioral context beyond them: pricing ($0.001/call, 10 free/day, x402 payment-required result), error semantics (isError with message, not charged for invalid input/upstream failure), and data-quality flags (deprecated, no release in 2+ years). It does not describe response shape, but the output schema covers that.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.