Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/non-destructive annotations, the description adds genuinely useful behavioral facts: the sort order, that attempt_id is nullable, that prepared_content is deliberately excluded from queue summaries, that the call is free, and that the 'act' scope is required. These are exactly the details an agent cannot infer from the schema or annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.