Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations, the description discloses important operational behavior: the data comes from an undocumented CoinMarketCap-loaded JSON that can change without notice, and each successful call costs $0.002 in USDC via x402 while failed calls are not charged. This cost and reliability context is exactly the kind of behavioral information an agent needs before invoking the tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.