Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the read-only, idempotent, non-destructive profile, so the description does not need to restate them. It adds useful behavior beyond annotations by disclosing that the tool returns limitations and capability gaps ('which categories can never be priced', 'honest answer about what we cannot do'). No contradiction with annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.