Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Adds substantial context beyond the annotations: partial-update semantics (unsent settings keep current values), the irreversible consequence of retention='none' (existing outputs deleted), the fact that inputs are never stored, and the auth requirement. Annotations flag destructive/idempotent but the description says exactly what is destroyed and why.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.