Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the burden and does well: it discloses units (USDG raw, 1e6), sign convention (signed from the account's side), which position states are included, and the cost/realized breakdown, plus the presence of a `summary` field. What it omits is whether the call is read-only/cheap, whether it needs auth, and how large the response can get for accounts with many positions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.