Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes far beyond the readOnly/idempotent annotations: it names the return payload (language code in two standards, name, confidence, 3 alternatives), defines the `reliable` threshold (>=20 letters, confidence >=0.6), documents the 422 no_text error and that it is not charged, and discloses pricing, the free daily quota, latency, and that input text is never logged. This is unusually complete behavioral disclosure for a read-only tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.