Zovo Weather History
Server Details
Past weather & daily logs
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 2 tools
The two tools have distinct actions: one discovers candidate stations, the other produces downloadable logs from station observations. However, both open with nearly identical trigger language ('Use this when the user wants weather history, historical weather data...'), which could cause an agent to misselect the generation tool before station discovery has occurred.
Both names follow a clean verb_noun snake_case pattern (find_weather_stations, generate_weather_log) with clear resource nouns. No style mixing or vague verbs.
The narrow weather-history-log domain supports a small surface, but two tools is thin — the workflow is essentially a single capability split into a lookup step and a generation step. A third tool (e.g., file status/retrieval) would round out the set.
The discovery-then-generation pair covers the core lifecycle: locate stations with date coverage, then emit Excel/CSV logs with rain-day thresholds. Minor gap: no tool to check or re-fetch generated files despite the stated ~1 hour expiry, which an agent cannot work around once a link is lost.
Available Tools
2 toolsfind_weather_stationsFind weather stationsARead-onlyIdempotentInspect
Use this when the user wants weather history, historical weather data, or past weather by zip code and needs reporting stations near a US city, ZIP or address. Returns date-specific coverage and distance for up to ten qualifying stations plus three with insufficient records. Dates default to the thirty days ending five days before today UTC; up to 366 days. Do not use for forecasts, current conditions or places outside the US.
| Name | Required | Description | Default |
|---|---|---|---|
| place | Yes | US city and state, ZIP or street address, 2 to 200 characters; e.g. Denver, CO. For logs a US station ID such as USW00094728 also works. | |
| end_date | No | Calendar date YYYY-MM-DD, e.g. 2026-09-01. | |
| start_date | No | Calendar date YYYY-MM-DD, e.g. 2026-09-01. |
Output Schema
| Name | Required | Description |
|---|---|---|
| kind | Yes | |
| place | Yes | |
| source | Yes | |
| end_date | Yes | |
| stations | Yes | |
| start_date | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Goes well beyond the readOnly/idempotent/openWorld annotations by disclosing return shape (up to ten qualifying stations plus three with insufficient records, with date-specific coverage and distance) and default date behavior (30 days ending 5 days before today UTC, max 366 days). This is exactly the operational context an agent needs before calling.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three tight sentences with the use case and scope front-loaded, followed by return behavior and exclusions. No filler or redundancy.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With annotations covering safety and an output schema covering returns, the description supplies the remaining essentials: trigger conditions, geography limits, and default date window. Nothing needed for correct invocation is missing.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3, but the description adds meaning the schema lacks: the implicit date range default and the 366-day ceiling. It does not restate the place format, correctly leaving that to the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource — finds reporting weather stations near a US city/ZIP/address — and scopes it to historical weather use. It is clearly separable from the sibling generate_weather_log, which implies producing a log rather than locating stations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Explicitly frames the triggering intent (weather history, historical data, past weather by ZIP) and gives hard exclusions: no forecasts, no current conditions, no non-US places. It does not name the sibling generate_weather_log as the alternative for log creation, so it falls short of a full 5.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
generate_weather_logGenerate weather logARead-onlyIdempotentInspect
Use this when the user wants weather history, historical weather data, historical weather by date and location, or a daily weather data download. Reads station observations and generates Excel and CSV weather logs with rain days for construction delay and thresholds. US only; up to five sites and 366 days, from 1900 through today UTC. Files expire in about an hour. Do not use for forecasts, current conditions or certified weather reports.
| Name | Required | Description | Default |
|---|---|---|---|
| sites | Yes | Up to five US places, ZIPs, addresses or station IDs after removing blanks and duplicates; e.g. ["Denver, CO","10024"]. | |
| heat_f | No | Heat-day minimum degrees F, inclusive; e.g. 90. | |
| rain_in | No | Rain-day minimum in inches, inclusive; e.g. 0.10. | |
| snow_in | No | Snow-day minimum in inches, inclusive; e.g. 1.0. | |
| end_date | Yes | Calendar date YYYY-MM-DD, e.g. 2026-09-01. | |
| freeze_f | No | Freeze-day maximum degrees F, inclusive; e.g. 32. | |
| gust_mph | No | Peak gust minimum mph, inclusive; e.g. 40. Average wind is not a substitute. | |
| start_date | Yes | Calendar date YYYY-MM-DD, e.g. 2026-09-01. | |
| weather_day_rule | No | Weather day is any selected threshold, e.g. ["rain","snow"]. |
Output Schema
| Name | Required | Description |
|---|---|---|
| kind | Yes | |
| sites | Yes | |
| source | Yes | |
| preview | Yes | |
| end_date | Yes | |
| downloads | Yes | |
| start_date | Yes | |
| duplicates_removed | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations already declare readOnly/idempotent/non-destructive, and the description adds substantial extra context: US-only coverage, max five sites and 366 days, date window from 1900 to today UTC, and output file expiry of about an hour. These are operational constraints an agent cannot derive from annotations or schema.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loaded with the use case, then constraints, then exclusions in three dense sentences with no filler. Each clause (US-only, 5 sites, 366 days, file expiry, exclusions) carries actionable information.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With an output schema present and annotations covering safety semantics, the description supplies everything else an agent needs: scope limits, geographic restriction, date bounds, artifact lifetime, and disqualifying use cases. No gaps remain for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the baseline is 3; the description still adds the 366-day span limit, the five-site cap, and the framing of thresholds as rain/heat/snow/freeze/wind day rules for construction delays. That goes slightly beyond what the per-parameter schema text already states.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a concrete verb and resource: reads station observations and generates Excel/CSV weather logs with rain-day counts. The opening 'when the user wants weather history' plus the explicit exclusion of forecasts/current conditions/certified reports makes the function unambiguous relative to a sibling like find_weather_stations.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Provides both triggers ('weather history, historical weather data, historical weather by date and location, or a daily weather data download') and explicit when-nots ('Do not use for forecasts, current conditions or certified weather reports'). Nothing is left to inference about routing.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
2 tool updates
- First observed
find_weather_stations - First observed
generate_weather_log
Related MCP Connectors
Historical climate data, temperatures, precipitation, and normals
Historical weather and climate: 100+ years of station data, normals, extremes, and trends.
Weather history, nowcasts, forecasts, and soil data for saved locations or any US or Canada point.
Weather data, forecast API, climate data, historical weather, alerts, agricultural & travel weather.
Related MCP Servers
- AlicenseAqualityDmaintenanceReal-time weather, forecasts, astronomy, marine data for 200+ countries116 npm1MIT
- AlicenseAqualityCmaintenanceGives MCP clients access to 35 years of bias-corrected daily weather records for five Gilgit-Baltistan stations, with tools for daily values, long-term trends, cross-station comparison and rainfall thresholds. It also produces a live 1-16 day flash-flood screening outlook scored against each valley's own history, while flagging data break caveats that could mislead trend analysis.6MIT
- AlicenseNot gradedqualityFmaintenanceWeather files (EPW/DDY) for building energy simulation, on-demand. Four tools: search the 17,000-station catalog, analyze any EPW (design conditions, HDD/CDD, DesignDay IDF emit), render 5 chart types (diurnal, wind rose, temp carpet, monthly box plot, comparison), and generate TMY/AMY/CMIP6-morphed scenarios with UHI, extreme events, and wildfire smoke overlays. 3 of 4 tools work without API key.MIT
- AlicenseAqualityCmaintenanceProvides weather forecasts and climate history via Open-Meteo, including daily and hourly outlooks, typical past weather for future trip dates, location disambiguation, and ranked recommendations for pleasant outdoor days.5MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.