Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent annotations, the description discloses the blocking wait behavior, the polling loop, that it never starts or reruns analysis, and the human-in-the-loop needs_input workflow. These are important operational traits an agent could not infer from the annotations alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.