Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint, destructiveHint), the description adds critical behavioral details: it is a 'passive multi-probe' that resolves and fetches the domain, requires no API key, is rate-limited, and explains the result logic (any failing essential yields not_ready, etc.). This exceeds the information provided by annotations alone.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.