Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, and non-destructive, so the safety profile is fully covered. The description adds nothing beyond that — no note on ordering, whether all projects or a page is returned, or how it relates to project_get's single-project lookup. With an output schema present, return-shape disclosure is not required, but the description contributes zero behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.