Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint, idempotentHint and destructiveHint=false, so the safety profile is covered. The description adds genuine behavioral content beyond that: it confirms only currently-open offers are returned and enumerates the payload fields (reward, eligibility, claim/submission routes, protocol, acceptance command), partially compensating for the absent output schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.