Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent annotations, it discloses non-obvious domain semantics: missing means no figure and never a zero, superseded source codes are reported but never mapped onto a current place, and drafts appear as not served without counts. These are exactly the behaviours an agent could otherwise misreport.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.