Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, openWorldHint, and idempotentHint. The description adds that the tool 'fetches release history and version adoption data from npm registry and libraries.io', confirming external data fetching and non-destructive behavior. It doesn't mention rate limits or async behavior, but the schema covers the async parameter.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.