Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
The description adds behavioral context beyond the annotations by stating execution is synchronous, task support is forbidden, and the returned JSON is internal application state. It also specifies response-handling rules (never display raw JSON, mention IDs selectively). These are useful traits not captured by the readOnly/idempotent/not-destructive hints. However, it does not disclose error behavior or the nature of template data beyond being internal state.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.