Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=false, so 'Read only' in the description is pure repetition with no added value. What does add value is disclosing that each result carries a price per class and that results are scoped to a single student and month. No mention of pagination, ordering, or what makes a class tab-eligible.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.