Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden of disclosing behavior. It does explain the two distinct modes (cycle basis vs DAG check), which is beyond the name's implication. However, it does not specify the return format (e.g., boolean vs cycle list), input graph string format, or how directedness is determined, leaving important behavioral gaps.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.