Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the full behavioral burden. It usefully discloses the four analysis dimensions it reports on, implying a non-destructive read comparison, but it never states read-only status, whether inputs must be valid/compilable programs, what happens on parse errors, or the shape of the result.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.