Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare the safety profile (readOnly=false, destructive=false, non-idempotent, openWorld), and the description adds a genuinely useful trait beyond them: the change's status is set to Solved as a side effect. It stops short of noting what happens if a solution already exists (non-idempotent overwrite risk) or any permission requirements.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.