Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond annotations by disclosing atomicity, server-side timestamping, the reduced return shape (no card text or editable memory state), and precise 409 semantics for REVIEW_EVENT_CONFLICT and REVIEW_ID_CARD_MISMATCH, including that no duplicate or write occurs. This is exactly the retry/conflict context the idempotentHint and destructiveHint flags cannot convey.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.