Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It discloses the return shape and possible reason values ('taken'|'invalid'|'reserved'|'profanity'), which is meaningful behavioral context. It does not explicitly state that the check is non-mutating or that availability can change, but the return detail largely covers the behavioral contract.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.