Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare a non-readonly, open-world, non-idempotent, non-destructive operation, so the agent knows this mutates/creates. The description adds nothing operational beyond that: it never mentions asynchronous task behavior, polling, task IDs, or that the same input can produce different outputs (idempotentHint=false). For a generation tool with annotations covering only the safety profile, this leaves real behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.