Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly, idempotent, non-destructive and open-world, so the description's added value is the stability warning ('Preview API... may change without a version bump') and the required scope 'products:read' — both real behavioral context an agent needs before building on it. It does not describe failure modes, but the substantive extras clear the bar beyond annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.