Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it discloses 'static', 'cached', and 'small JSON', which imply a read-only, cheap operation. However, it does not explicitly state side effects or permission requirements, and the meaning of 'criticality hints' is left undefined.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.