Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint, and destructiveHint, so the description carries a lower burden. It adds valuable behavioral context by stating that every item has an equal chance and that the chosen item is returned, clarifying that results vary across calls despite the read-only and idempotent annotations.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.