Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, non-destructive, open-world), so the bar is lower, and the description still adds real behavior: media fields (videoId, pdfUrl) are conditionally returned based on free-preview status or enrollment plus a valid AI key, and locked lessons yield teasers only. It does not say what happens on an unpublished/unknown courseId or whether missing enrollment errors or degrades.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.