Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. 'Fill' implies a mutating operation, but the description does not disclose whether existing blocks are replaced, whether the operation is reversible, how it interacts with the current project, or any limits on size. These behavioral traits are uncovered.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.