Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Beyond annotations, the description discloses concrete behavioral details: it reads package code, reports specific threat categories with evidence, charges one credit per verdict, charges nothing for errors, and caps at 25 packages. This goes well beyond what readOnlyHint, openWorldHint, idempotentHint, and destructiveHint communicate.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.