Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations supplied, the description carries the full burden and does substantial work: it declares read-only behavior ("writes, signs and executes nothing", "never runs a retest"), names the required environment settings, and specifies that the tenant comes from configuration and never from an argument. It also discloses failure semantics via the OK/REFUSED/UNAVAILABLE triad and the rule that missing settings, disabled surfaces, or errors resolve to UNAVAILABLE rather than fabricated data, plus a version dependency on the TrustGate API. It does not cover latency, rate limits, or what the returned impact view contains beyond status.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.