Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already cover the safety profile (readOnly, idempotent, openWorld), so the bar is lower. The description still adds meaningful context beyond them: the cost model ('Free', 'pay for check_figure') and the explicit non-outcome ('Returns NO verdict'), which prevents the agent from misusing the result as a judgment.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.