mcpField
W
Weather MCP Server

Weather MCP Server

Local
github.com/jtwirlyMedia & Design1Updated 82w ago

About Weather MCP Server

Weather MCP Server provides National Weather Service forecasts and alerts through Claude for Desktop. It is for people checking US locations, with separate tools for location forecasts and state alerts.

Key features

  1. 01Get forecasts by latitude and longitude
  2. 02Get alerts by state code

Use cases

  1. 01Check a forecast for a US location
  2. 02Review active alerts for a state

MCP support

This MCP server exposes forecast and alert tools to MCP clients, using the National Weather Service API.

Configuration

Local server config is the same for every client. Copy it into your client’s MCP config file.

No install method listed yet

We haven’t collected a package or remote endpoint for this server. Follow the instructions in the project README.

Repository

Tools

No tool list yet

Local servers expose tools only once running on your machine, and the maintainer has not provided a tool list.

Details

From the project README

Weather MCP Server

A Model Context Protocol (MCP) server that provides weather information through Claude for Desktop. This server integrates with the National Weather Service API to provide weather forecasts and alerts for US locations. Created as part of the MIT MCP Hackathon (April 2025).

Features

  • get_forecast: Get detailed weather forecasts for any US location using latitude and longitude
  • get_alerts: Retrieve active weather alerts for any US state using state code

Requirements

  • Python 3.10 or higher
  • uv package manager
  • Claude for Desktop
  • MCP SDK 1.2.0 or higher

Installation

  1. Ensure you have uv installed:
curl -LsSf https://astral.sh/uv/install.sh | sh
  1. Set up the Python environment:
# Create and activate virtual environment
uv venv
source .venv/bin/activate

# Install dependencies
uv add "mcp[cli]" httpx

Configuration

  1. Create or edit your Claude for Desktop configuration at ~/Library/Application Support/Claude/claude_desktop_config.json:
{
  "mcpServers": {
    "weather": {
      "command": "/path/to/uv",
      "args": [
        "--directory",
        "/absolute/path/to/weather",
        "run",
        "weather.py"
      ]
    }
  }
}
  1. Replace /path/to/uv with your uv executable path (find it using which uv)
  2. Replace /absolute/path/to/weather with the absolute path to this project directory

Usage

  1. Start Claude for Desktop
  2. Look for the hammer 🔨 icon to confirm the server is connected
  3. Example queries:
    • "What's the weather in Sacramento?"
    • "What are the active weather alerts in Texas?"

Troubleshooting

  • Check Claude's logs at ~/Library/Logs/Claude/mcp*.log
  • Ensure all paths in the configuration are absolute
  • Verify the server runs independently using uv run weather.py
  • Check port 8001 is not in use by another process

API Reference

The server uses the National Weather Service API:

  • Base URL: https://api.weather.gov
  • Endpoints used:
    • /alerts/active/area/{state} - Get alerts by state
    • /points/{lat},{lon} - Get forecast grid data
    • /forecast - Get detailed forecast

About the MIT MCP Hackathon

This project was created as part of a tutorial during the MIT MCP Hackathon (April 2025), which aimed to introduce developers to the Model Context Protocol and help projects/startups launch their own MCP servers. The hackathon was part of the NANDA (Networked Agents and Decentralized AI) hub initiative at MIT.

License

This project follows the original tutorial from Model Context Protocol

Screenshots

Screen Shot 2025-04-06 at 10 17 10 PM Screen Shot 2025-04-06 at 10 17 26 PM Screen Shot 2025-04-06 at 10 17 48 PM

Comments

Markdown supported

New to MCP?

From what the protocol is to installing your first server, these answers cover most first questions.

An open protocol that defines how AI applications connect to external tools and data in a uniform way. Clients talk to the model; MCP servers provide tools, resources and prompt templates. They exchange standard messages, so one server can be reused by many clients.