Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It honestly reveals that it will not fabricate a spread or arbitrage and returns a blocker object for non-equivalent pairs. It does not mention auth, rate limits, or error handling, but the specified edge-case behavior is substantial and non-obvious, which surpasses most descriptions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.