Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the readOnly/openWorld annotations: it discloses the data source (Shodan pre-collected passive scan), the key semantic that absence means 'not seen' rather than 'closed', the fact that no traffic is sent, and the exact per-call price with billing rules for failures. Read-only annotation is consistent with the passive design; no contradiction.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.