Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full behavioral burden, but it does disclose the single most important trait: the tool raises/returns a failure rather than a boolean, which is non-obvious for an assertion helper. It is silent on timing (is it instantaneous?), retry behavior, timeout, and the actual error shape.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.