Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already flag destructiveHint=true, idempotentHint=true, and readOnlyHint=false, but the description adds non-obvious billing semantics that no annotation conveys: queued cancels are free while cancelling a running scrape still charges for leads already delivered. It also translates the destructive flag into an actionable instruction (get user confirmation), which is exactly the value the description should add.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.