Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnly, openWorld, idempotent, non-destructive), the description adds important behavioral context: unknown IDs return 'not_found_or_unpublished', geographic coverage (Coimbatore and Chennai), output semantics (pricePerSqft, vsCheapestPercent, vsLargestAreaPercent), and a user-facing requirement ('Always surface the disclaimer'). This significantly enriches the agent's understanding of the tool's behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.