Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full load and does it well: it discloses the ownership/auth prerequisite, that keys never expire, that secrets are never returned, and precise semantics for last_used_at (minute granularity, null plus never_used=true). What it omits is operational behavior an agent would care about — result ordering and whether the list is paginated or capped.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.