Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations: declares the Microsoft sign-in prerequisite and blog.write scope, explains that the answer is persisted as a draft source read by fact-check, and distinguishes chat-mode from form-mode behavior. This explains why readOnlyHint=false and idempotentHint=false without contradicting them.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.