Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond the readOnly/idempotent annotations, the description discloses the decision vocabulary, the full set of returned fields, that it never contacts the endpoint, that reachability is not safety, and that no API key is needed. These are real behavioral facts an agent needs before calling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.