Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare the tool as read-only, idempotent, and non-destructive, so the description is not required to repeat that. It adds the specific behavior of following the next-chain from a hat block, which is useful context, but it omits details like error handling, return format for missing chains, or whether it returns blocks or IDs. This is acceptable given the annotations cover safety, but the description adds limited extra behavioral depth.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.