Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, open-world), but the description adds behavior they cannot express: a 0.001 USDC per-call cost, the x402 payment rails and accepted chains, and the guarantee that unsupported symbols are 'never billed'. Cost and billing semantics are exactly the kind of trait an agent needs before invoking 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.