Getting it into your agent
One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.
npx skills add vaisala-xweather/xweather-agent-skills --skill weather-apigit clone --depth 1 https://github.com/vaisala-xweather/xweather-agent-skillsWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/vaisala-xweather/xweather-agent-skills/weather-api)<a href="https://agentmods.dev/skills/vaisala-xweather/xweather-agent-skills/weather-api"><img src="https://agentmods.dev/badge/skills/vaisala-xweather/xweather-agent-skills/weather-api/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/vaisala-xweather/xweather-agent-skills/weather-api"><img src="https://agentmods.dev/badge/skills/vaisala-xweather/xweather-agent-skills/weather-api.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00159 | $0.06428 |
| Opus 5.5 | $0.00064 | $0.02571 |
| Sonnet 5.5 | $0.00032 | $0.01286 |
| Haiku 4.5 | $0.00016 | $0.00643 |
Grade A, and why
weather-api scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 16d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
curl -s https://www.xweather.com/docs/api/weather-api/endpoints How it starts
The opening of the file, as written. The whole thing — 402 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Xweather Weather API URL builder
Turn a description of wanted weather data into a correct data.api.xweather.com URL — and, when
credentials are available, execute it and return the data alongside the URL.
Request anatomy
https://data.api.xweather.com/{endpoint}/{action}/{:id}?{params}&client_id=…&client_secret=…
| Segment | Example | Notes |
|---|---|---|
| endpoint | observations, conditions/summary |
What data. 59 of them — see references/endpoints.md. |
| action | closest, within, search, route, contains, affects |
How to look it up. Omitted entirely for :id and :all. |
:id |
seattle,wa, 98109, 44.97,-93.26, KMSP |
The place or record identifier. Goes in p= instead when an action occupies the path slot. |
| params | filter=, query=, fields=, limit=, from=/to=, format= |
Shape the result. |
| credentials | client_id + client_secret |
Query params on every request; no header form exists. |
api.aerisapi.com is the legacy host and still works — always emit data.api.xweather.com.
Workflow
- Extract from the prompt: what data, which place(s), what time, and what shape of answer (one record, N nearest, everything in an area, along a route, is-this-point-inside-a-polygon).
- Pick the endpoint. Use the intent map below; confirm against
references/endpoints.md. - Pick the action from the decision table below. Verify the endpoint actually supports it —
endpoints.mdlists supported actions per endpoint, and an unsupported one returnsnot_implemented. - Add parameters.
filterandquerytokens are endpoint-specific; only use tokens listed for that endpoint inendpoints.md. Readreferences/filters.mdwhen choosing between similar tokens (standardvsallfor alerts,dayvsdaynightvsmdnt2mdntfor forecasts) — grep for the## /endpointheading rather than reading the whole file. - Sanity-check against a documented example.
references/examples.mdhas the API's own example requests for every endpoint;references/recipes.mdhas 34 real-world queries by use case. If the request resembles one, copy its structure instead of inventing parameters. - Emit the URL with its access cost (see Access cost — always report it), then decide whether to run it (see Executing the request).
What ships with it
7 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 16d ago Changed 3dfb2a206d77
- 18d ago Changed f57cbd0e0a3d
- 29d ago Changed · +7 lines e5d33a0ae359
- 1mo ago Changed 5658893c5fb8
- 1mo ago Changed 6f2c68bed3b5
- 2mo ago Changed f68c77a80c21
- 2mo ago First seen · 395 lines · 159 tokens per session scan A 4276ffe531bf
weather-api is a skill published in the GitHub repository vaisala-xweather/xweather-agent-skills (6 stars, last pushed 16d ago), licensed MIT. It adds 159 tokens to every session and 6,428 once invoked, about $0.0006 per session on Opus 5.5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.
weather-api compared with skills from other repositories
| Mod | Type | Stars | Last push | Licence | Scan | Tokens | Works with |
|---|---|---|---|---|---|---|---|
| weather-apivaisala-xweather/xweather-agent-skills | Skill | 6 | 16d ago | MIT | A | 159 | Claude Code |
| mem0-oss-to-platformmem0ai/mem0 | Skill | 69k | 5d ago | Apache-2.0 | A | 217 | Claude Code, Codex |
| azure-mgmt-botservice-dotnetmicrosoft/skills | Skill | 3.2k | yesterday | MIT | A | 78 | Claude Code |
| fastapi-router-pymicrosoft/skills | Skill | 3.2k | yesterday | MIT | A | 46 | Claude Code |
| dev-runtimelangwatch/langwatch | Skill | 5.0k | today | Apache-2.0 | A | 172 | Claude Code |
| api-designericrisco/rsc-harness | Skill | 579 | yesterday | MIT | A | 105 | Claude Code, Codex |
| migrate-segw-to-raparc-mcp/arc-1 | Skill | 257 | 2d ago | MIT | A | 106 | Claude Code |