Zovo Weather History

Past weather & daily logs

Should I use this

Quality & Safety

A
Description quality
100%
Schema completeness
100%
Naming quality
100%
Poisoning risk
100%
Permission match
100%
Protocol compliance
100%

Based on automated analysis of tool definitions and protocol compliance.

Context Cost

~1,861Tokens (tool definitions)
~9.4 KBTypical response size
Moderate attention impact (1.45% of 128k context)

This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.

Install

One-Click Install

Add this to your `claude_desktop_config.json` file:

{
  "mcpServers": {
    "weather-history": {
      "url": "https://weather-history.zovo.one/mcp"
    }
  }
}

Remote endpoints

https://weather-history.zovo.one/mcpstreamable-http

What it can do

Tool inventory

Tools (2)

🟢 Read-only🟡 Write🔴 Delete⚪ Unknown
🟢find_weather_stations(place, start_date, end_date)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "place": {
      "type": "string",
      "minLength": 2,
      "maxLength": 200,
      "description": "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."
    },
    "start_date": {
      "type": "string",
      "maxLength": 100,
      "description": "Calendar date YYYY-MM-DD, e.g. 2026-09-01."
    },
    "end_date": {
      "type": "string",
      "maxLength": 100,
      "description": "Calendar date YYYY-MM-DD, e.g. 2026-09-01."
    }
  },
  "required": [
    "place"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string",
      "const": "stations"
    },
    "place": {
      "type": "object",
      "properties": {
        "label": {
          "type": "string"
        },
        "matched_by": {
          "type": "string"
        },
        "lat": {
          "type": "number"
        },
        "lon": {
          "type": "number"
        }
      },
      "required": [
        "label",
        "matched_by",
        "lat",
        "lon"
      ],
      "additionalProperties": false
    },
    "start_date": {
      "type": "string"
    },
    "end_date": {
      "type": "string"
    },
    "stations": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "id": {
            "type": "string"
          },
          "name": {
            "type": "string"
          },
          "lat": {
            "type": [
              "number",
              "null"
            ]
          },
          "lon": {
            "type": [
              "number",
              "null"
            ]
          },
          "distance_mi": {
            "type": [
              "number",
              "null"
            ]
          },
          "coverage": {
            "type": "number"
          },
          "coverage_note": {
            "type": "string"
          },
          "reports": {
            "type": "array",
            "items": {
              "type": "string"
            }
          },
          "last_reported": {
            "type": "string"
          },
          "elevation_ft": {
            "type": [
              "number",
              "null"
            ]
          }
        },
        "required": [
          "id",
          "name",
          "distance_mi"
        ],
        "additionalProperties": false
      }
    },
    "source": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "retrieved_utc": {
          "type": "string"
        }
      },
      "required": [
        "name",
        "url",
        "retrieved_utc"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "kind",
    "place",
    "start_date",
    "end_date",
    "stations",
    "source"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}
🟢generate_weather_log(sites, start_date, end_date, rain_in, snow_in, ...)

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.

Input Schema

{
  "type": "object",
  "properties": {
    "sites": {
      "type": "array",
      "items": {
        "anyOf": [
          {
            "type": "string",
            "minLength": 2,
            "maxLength": 200,
            "description": "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."
          },
          {
            "type": "string",
            "minLength": 0,
            "maxLength": 0
          }
        ]
      },
      "description": "Up to five US places, ZIPs, addresses or station IDs after removing blanks and duplicates; e.g. [\"Denver, CO\",\"10024\"]."
    },
    "start_date": {
      "type": "string",
      "maxLength": 100,
      "description": "Calendar date YYYY-MM-DD, e.g. 2026-09-01."
    },
    "end_date": {
      "type": "string",
      "maxLength": 100,
      "description": "Calendar date YYYY-MM-DD, e.g. 2026-09-01."
    },
    "rain_in": {
      "default": 0.1,
      "description": "Rain-day minimum in inches, inclusive; e.g. 0.10.",
      "type": "number",
      "minimum": 0.01,
      "maximum": 10
    },
    "snow_in": {
      "default": 1,
      "description": "Snow-day minimum in inches, inclusive; e.g. 1.0.",
      "type": "number",
      "minimum": 0.1,
      "maximum": 60
    },
    "heat_f": {
      "default": 90,
      "description": "Heat-day minimum degrees F, inclusive; e.g. 90.",
      "type": "number",
      "minimum": 50,
      "maximum": 130
    },
    "freeze_f": {
      "default": 32,
      "description": "Freeze-day maximum degrees F, inclusive; e.g. 32.",
      "type": "number",
      "minimum": -40,
      "maximum": 50
    },
    "gust_mph": {
      "default": 40,
      "description": "Peak gust minimum mph, inclusive; e.g. 40. Average wind is not a substitute.",
      "type": "number",
      "minimum": 10,
      "maximum": 150
    },
    "weather_day_rule": {
      "default": [
        "rain",
        "snow"
      ],
      "description": "Weather day is any selected threshold, e.g. [\"rain\",\"snow\"].",
      "minItems": 1,
      "maxItems": 5,
      "type": "array",
      "items": {
        "type": "string",
        "enum": [
          "rain",
          "snow",
          "heat",
          "freeze",
          "wind"
        ]
      }
    }
  },
  "required": [
    "sites",
    "start_date",
    "end_date"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#"
}

Output Schema

{
  "type": "object",
  "properties": {
    "kind": {
      "type": "string",
      "const": "log"
    },
    "start_date": {
      "type": "string"
    },
    "end_date": {
      "type": "string"
    },
    "sites": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "site": {
            "type": "string"
          },
          "error": {
            "type": "string"
          },
          "station": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "name": {
                "type": "string"
              },
              "lat": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "lon": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "distance_mi": {
                "type": [
                  "number",
                  "null"
                ]
              },
              "coverage": {
                "type": "number"
              },
              "coverage_note": {
                "type": "string"
              },
              "reports": {
                "type": "array",
                "items": {
                  "type": "string"
                }
              },
              "last_reported": {
                "type": "string"
              },
              "elevation_ft": {
                "type": [
                  "number",
                  "null"
                ]
              }
            },
            "required": [
              "id",
              "name",
              "distance_mi"
            ],
            "additionalProperties": false
          },
          "summary": {
            "type": "object",
            "properties": {
              "statuses": {
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {
                  "type": "number"
                }
              },
              "total_precip_in": {
                "type": "string"
              },
              "precip_days_with_value": {
                "type": "number"
              },
              "total_snow_in": {
                "type": "string"
              },
              "snow_days_with_value": {
                "type": "number"
              },
              "days_missing": {
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {
                  "type": "number"
                }
              },
              "high": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "value": {
                        "type": "number"
                      },
                      "date": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "value",
                      "date"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "low": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "value": {
                        "type": "number"
                      },
                      "date": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "value",
                      "date"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "wettest": {
                "anyOf": [
                  {
                    "type": "object",
                    "properties": {
                      "value": {
                        "type": "number"
                      },
                      "date": {
                        "type": "string"
                      }
                    },
                    "required": [
                      "value",
                      "date"
                    ],
                    "additionalProperties": false
                  },
                  {
                    "type": "null"
                  }
                ]
              },
              "counts": {
                "type": "object",
                "propertyNames": {
                  "type": "string"
                },
                "additionalProperties": {
                  "type": "number"
                }
              }
            },
            "required": [
              "statuses",
              "total_precip_in",
              "precip_days_with_value",
              "total_snow_in",
              "snow_days_with_value",
              "days_missing",
              "high",
              "low",
              "wettest",
              "counts"
            ],
            "additionalProperties": false
          }
        },
        "required": [
          "site"
        ],
        "additionalProperties": false
      }
    },
    "preview": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "date": {
            "type": "string"
          },
          "max_f": {
            "type": [
              "number",
              "null"
            ]
          },
          "min_f": {
            "type": [
              "number",
              "null"
            ]
          },
          "precip_in": {
            "type": [
              "string",
              "number",
              "null"
            ]
          },
          "snow_in": {
            "type": [
              "string",
              "number",
              "null"
            ]
          },
          "status": {
            "type": "string"
          },
          "flags": {
            "type": "array",
            "items": {
              "type": "string"
            }
          }
        },
        "required": [
          "date",
          "max_f",
          "min_f",
          "precip_in",
          "snow_in",
          "status",
          "flags"
        ],
        "additionalProperties": false
      }
    },
    "downloads": {
      "type": "object",
      "properties": {
        "xlsx": {
          "type": "string"
        },
        "csv": {
          "type": "string"
        }
      },
      "required": [
        "xlsx",
        "csv"
      ],
      "additionalProperties": false
    },
    "duplicates_removed": {
      "type": "number"
    },
    "source": {
      "type": "object",
      "properties": {
        "name": {
          "type": "string"
        },
        "url": {
          "type": "string"
        },
        "retrieved_utc": {
          "type": "string"
        }
      },
      "required": [
        "name",
        "url",
        "retrieved_utc"
      ],
      "additionalProperties": false
    }
  },
  "required": [
    "kind",
    "start_date",
    "end_date",
    "sites",
    "preview",
    "downloads",
    "duplicates_removed",
    "source"
  ],
  "$schema": "http://json-schema.org/draft-07/schema#",
  "additionalProperties": false
}

Community

Rate this Server

Evidence

Recent observations

verifiedversion not recorded2 tools