Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already convey read-only, idempotent, non-destructive behavior. The description adds valuable context beyond those annotations: include_geometry=true triggers large payloads, empty results mean no active activity, and features carry kind/name/intensity/timing properties. This enriches the agent's mental model of what the tool will do and return.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.