Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnlyHint and idempotentHint, but the description adds substantial non-obvious behavior: the shot's own bean is resolved using pulled_at rather than the active profile, it is echoed as bean_context, and the engine ignores free-text notes while relying only on metrics and sensory_tags. The warning about in-range tasteless shots returning 'balanced' is especially valuable.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.