Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations provide no behavioral signals, so the description carries the burden. It adds useful context: programs cut shots off by weight or time, and a machine can mix both types. However, it does not disclose behavior around duplicate program numbers, overwriting, or other registration side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.