Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and openWorldHint, so the trailing 'Read-only' adds nothing beyond structured data. The one piece of genuine context is that returned codes are the exact values search_packages expects, which is useful interop information. No statement about whether the list is static or region-filtered, and no output schema exists.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.