Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the return shape (validation status, cleaned data, warnings) and that the input must be a JSON string, but says nothing about failure behavior, whether the profile is mutated, 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.