Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations only declare readOnly=false, idempotent=true, destructive=false; the description goes well beyond by explaining that active:false is a soft retire, that KPI targets reject the active flag, and that buyer questions are immutable in place. These are real behavioral constraints an agent would otherwise hit as errors.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.