Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only cover the read-only/idempotent/open-world profile; the description goes further by disclosing the upstream source (OSV.dev and its aggregations), the pricing model ($0.002/call, 10 free/day, x402 payment-required result), and error semantics (isError, invalid input or upstream failure not charged). That is exactly the operational 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.