Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark this as read-only and idempotent, and the description adds valuable behavioral context: it returns passages with URLs, and crucially, it clarifies that an empty result is not necessarily a failure and that a note field distinguishes the cases. This goes beyond the schema and annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.