MCP Hub
Back to servers

WeatherMCP

An MCP server providing US National Weather Service data with tools to fetch weather alerts by state and forecasts by coordinates.

glama
Updated
Jul 13, 2025

WeatherMCP

This project is an MCP server built as a hands-on exercise. It provides weather data and alerts from the US National Weather Service (NWS) via a simple API using the FastMCP framework.

Features

  • Weather Alerts: Get active weather alerts for any US state.
  • Forecast: Retrieve weather forecasts for a specific latitude and longitude.

Requirements

  • Python 3.8+
  • uv (for dependency management and running)

Installation

  1. Install dependencies using uv:

    uv pip install -r requirements.txt
    

    Or, if you use pyproject.toml:

    uv pip install -r pyproject.toml
    
  2. (Optional) Create a virtual environment:

    uv venv .venv
    source .venv/bin/activate
    

Running the MCP Server

To start the server using uv:

uv pip install -e .  # if you want to install as editable, or just ensure dependencies are installed
uv python weather.py

The server will start and listen for MCP requests via stdio.

Available Tools

1. get_alerts(state: str)

  • Description: Get active weather alerts for a US state.
  • Argument: state — Two-letter US state code (e.g., CA, NY).
  • Returns: Formatted string of current alerts or a message if none are found.

2. get_forecast(latitude: float, longitude: float)

  • Description: Get weather forecast for a specific location.
  • Arguments:
    • latitude — Latitude of the location (float)
    • longitude — Longitude of the location (float)
  • Returns: Formatted string with the next 5 forecast periods.

Notes


Feel free to extend or modify the project for your own experiments!

Reviews

No reviews yet

Sign in to write a review