Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true and destructiveHint=false, and the description adds meaningful behavioral context beyond that: it returns alternate candidates, nearby places, relationships, and handles exact homonyms by returning candidate IDs instead of making a guess. This gives the agent a concrete model of what the tool will do without relying solely on the output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.