Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool read-only, idempotent, and non-destructive, so the description's key value is its extra context: no API key required, the output is a catalog or recommended sequence, and listed tools are invoked via tools/call while tools/list only shows always-on essentials. This goes beyond the annotations without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.