Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden — and it does: it discloses that code is de-facto mandatory despite the schema marking it optional (empty call returns only a message, no data), that batch returns rows without per-symbol status so the caller must reconcile missing codes itself, that data is T+1 disclosed so today is unavailable, and that NOT_DISCLOSED for ETFs means 'not in the margin list' rather than 'delayed' — preventing a retry loop.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.