Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and it usefully discloses the tool's behavior by enumerating the returned state: status values, tallies, participation, selected recipes, and pending_feedback. It also gives the status enum, which helps an agent interpret results. It stops short of explicitly saying the call has no side effects, but 'where the cycle stands' strongly signals a read-only query.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.