Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover readOnly/idempotent/openWorld/non-destructive, and the description adds real behavioral context: missing models are not synthesized ('absent models stay unavailable'), directions are FROM, units are fixed, and source/freshness metadata is returned. It stops short of describing the per-model return structure, which would be valuable with no output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.