Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes far beyond annotations, which only declare read-only/idempotent/open-world. The description discloses that the tool is a paid call ($0.003), the exact return payload (valid/invalid, normalised form, id type, check level, failure reason), that unsourced countries return 'unknown' for free, the api_key vs x402 payment paths, and the recommended follow-up binding tools. That is substantial behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.