Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive, closed-world, so safety is covered. The description adds content-level context (sourced basis, as-of dates implying data freshness), but says nothing about behavior such as unknown-name handling or rate limits, and much of it restates return payload that the output schema already defines.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.