Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, idempotentHint=true, destructiveHint=false, so the safety profile is covered. The description adds the legacy-compatibility context, but its enumeration of returned fields (rating, availability, stay price, link) largely duplicates what the output schema already provides, and it discloses nothing about auth needs, rate limits, or result-freshness behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.