Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive behavior, so safety is covered. The description adds genuinely useful behavioral context: this is a polling tool, safe to re-invoke after a scan request, and creating a new scan just to check status is wasteful. It omits auth/permission needs, but that is minor given the annotation coverage and the presence of an 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.