Skip to main content
Glama
Benziela
by Benziela

Weather MCP Server

A Model Context Protocol (MCP) server that provides real-time weather data and alerts from the National Weather Service (NWS) API.

Features

  • 🌀️ Weather Forecasts: Get detailed weather forecasts for any US location using latitude/longitude coordinates

  • 🚨 Weather Alerts: Retrieve active weather alerts for any US state

  • πŸ”Œ MCP Compatible: Integrates seamlessly with Claude Desktop and other MCP clients

Related MCP server: Weather MCP Server

Tools

get_forecast

Get a detailed weather forecast for a specific location.

Parameters:

  • latitude (float): Latitude of the location

  • longitude (float): Longitude of the location

Returns: Formatted forecast for the next 5 periods including temperature, wind conditions, and detailed descriptions.

Example:

get_forecast(40.7128, -74.0060)  # New York City

get_alerts

Get active weather alerts for a US state.

Parameters:

  • state (string): Two-letter US state code (e.g., "CA", "NY", "TX")

Returns: List of active weather alerts with event type, area, severity, description, and instructions.

Example:

get_alerts("CA")  # California alerts

Installation

Prerequisites

  • Python 3.12 or higher

  • uv package manager

Setup

  1. Clone the repository:

git clone https://github.com/Benziela/weather-mcp.git
cd weather-mcp
  1. Install dependencies:

uv sync

Usage

With Claude Desktop

Add this configuration to your Claude Desktop config file:

macOS: ~/Library/Application Support/Claude/claude_desktop_config.json Windows: %APPDATA%\Claude\claude_desktop_config.json

{
  "mcpServers": {
    "weather": {
      "command": "uv",
      "args": [
        "--directory",
        "C:\\Users\\jonathbenjamin_a\\Learn\\weather-mcp",
        "run",
        "weather"
      ]
    }
  }
}

Standalone

Run the server directly:

uv run weather

Development

The project structure:

weather-mcp/
β”œβ”€β”€ weather.py          # Main MCP server implementation
β”œβ”€β”€ main.py            # Entry point
β”œβ”€β”€ pyproject.toml     # Project configuration
β”œβ”€β”€ uv.lock           # Dependency lock file
└── README.md         # This file

API Data Source

This server uses the National Weather Service API, which provides:

  • Free access with no API key required

  • High-quality weather data for US locations

  • Real-time weather alerts and warnings

  • Detailed forecast periods

Dependencies

  • httpx - Async HTTP client for API requests

  • mcp - Model Context Protocol SDK with CLI support

License

MIT

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

Author

Benziela

Related MCP Connectors

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Provides weather information and alerts from the National Weather Service, including active weather alerts for US states and location-based forecasts using latitude/longitude coordinates.
    2
    MIT
  • F
    license
    B
    quality
    D
    maintenance
    Provides real-time weather forecasts and alerts for US locations using the National Weather Service API. Supports querying forecasts by coordinates and retrieving active weather alerts by state.
    2
    -
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides weather information using the US National Weather Service API, including active weather alerts for US states and location-specific forecasts based on latitude and longitude coordinates.
    55 npm
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides access to National Weather Service data, enabling users to retrieve real-time weather forecasts for specific coordinates and active weather alerts by US state.
    BSD 3-Clause