Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does disclose the return content in detail (inputs with units, ranges, defaults; outputs; assumptions and tables), which implies a read-only metadata lookup. It stops short of explicitly stating no side effects occur or that it performs no computation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.