Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The 'Read-only:' prefix restates readOnlyHint and destructiveHint=false that the annotations already declare, so it earns no credit. The only extra content, that each item is shown 'by title (and client, where given)', duplicates what the output schema already documents. With annotations and an output schema both present, the description adds almost no 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.