Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already signal idempotent and destructive behavior, and the description adds concrete context: re-sending an existing list does not duplicate, results include created/updated counts, and null or omitted name/email values clear fields. The only blemish is an internal contradiction between 'Omit to keep the name already stored' and 'leaving one out clears it,' which slightly undermines transparency.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.