Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations cover safety (idempotent, non-destructive, open-world), but the description adds genuinely non-structured behavior: it refuses and returns candidates rather than guessing when the place/language is ambiguous, and it updates an existing market for that location instead of creating a duplicate. Auth/permission requirements are unstated, and idempotency is only implied by 'updated'.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.