Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, openWorld), yet the description still adds real context: it searches documentation rather than inventory, covers all supported packages even in an empty project, and caps results at five paths with excerpts. Return value detail is partly carried by the output schema, so 4 rather than 5.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.