Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it discloses the non-obvious behavioral trait: writes are queued in memory and only this call makes them durable. It does not cover idempotency, blocking behavior, failure modes, or permission requirements, but the durability semantics are the key missing piece and they are present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.