Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden and does so well: it discloses a hard cap of 15 codes with the consequence that the data source silently drops the rest (20 codes → 6 returned), that each code reports its own 'ok', that fields differ by market (A-share has targetPrice, HK has none and uses *Forecast fields), that it is read-only, and that it requires a paid tier (¥99+).
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.