Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden, but 'List' clearly conveys a non-mutating enumeration and the qualifier 'registered for this ForgeGuard process' defines the exact scope of the operation. It does not discuss output format or error cases, but for a zero-parameter read-only list tool the core behavior is sufficiently transparent.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.