Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations include readOnlyHint=true, which covers safety. The description adds minimal context beyond that, such as the requirement for a course identifier, but does not disclose potential large result sizes, rate limits, or that it only returns basic user info. With annotations present, the description meets the baseline but does not add much.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.