Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already mark the tool as read-only, idempotent, open-world, and non-destructive, but the description adds valuable behavioral context: it fetches the page, never modifies it, analyzes inline style CSS, only counts external stylesheets without fetching them, and rejects certain target types. This goes beyond what annotations provide and clarifies the tool's actual runtime behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.