Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare destructive/irreversible and idempotent, but the description goes well beyond them: it explains that grayscale permanently discards color, that grayscale-to-rgb does not restore it, that indexed sources are refused, that live filters block conversion, and that the no-op check precedes the refusal. This is unusually rich behavioral disclosure for a destructive mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.