Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare destructiveHint=true, idempotentHint=true and readOnlyHint=false, so the safety profile is known. The description adds genuine context by explaining that the undo is precomputed at apply time and that a repeat call removes nothing while reporting the same result — useful detail, but it doesn't cover permission requirements or failure modes for unknown/already-consumed ids. With annotations carrying most of the load, a 3 is right.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.