Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the annotations (readOnlyHint, idempotentHint), the description explains exactly what the response will contain under different circumstances (e.g., empty pending[] when connected, connect_url when credentials are missing). It adds valuable context about the tool's behavior without contradicting any annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.