Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the annotations (destructiveHint, openWorldHint, non-idempotent) by disclosing exactly what overwrite discards (CMS edits), the resulting outcomes (overwrite_queued vs overwrite_on_next_send based on approval/schedule state), and the side effects of keep (post becomes out_of_sync, review note records Mark kept the CMS version). This is genuine behavioral state-machine detail.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.