weather-mcp-server
by elmopps
README.md
# Weather MCP Server
An MCP (Model Context Protocol) server that gives Claude real-time weather
data from the US National Weather Service API — no API key needed.
## What it does
- `get_alerts` — fetches active weather alerts for any US state
- `get_forecast` — fetches a 5-period forecast for any lat/long location
## Requirements
- Python 3.12+
- uv
## Setup
Clone the repo and install dependencies:
git clone https://github.com/YOUR_USERNAME/weather-mcp-server
cd weather-mcp-server
uv venv --python 3.12
source .venv/bin/activate
uv add "mcp[cli]" httpx
## Connect to Claude Desktop
Add to ~/Library/Application Support/Claude/claude_desktop_config.json:
{
"mcpServers": {
"weather": {
"command": "uv",
"args": ["--directory", "/path/to/weather-mcp-server", "run", "weather.py"]
}
}
}
Restart Claude Desktop. Look for the hammer icon in the chat input.
## Built with
- MCP Python SDK (https://github.com/modelcontextprotocol/python-sdk)
- National Weather Service API (https://api.weather.gov)TDQS
B3.4/5.0
Scored across 2 tools
Disambiguation5/5
The two tools have clearly distinct purposes: one for weather alerts by state, another for forecast by coordinates. No overlap in functionality.
Naming Consistency5/5
Both tools follow a consistent verb_noun pattern (get_alerts, get_forecast), making the naming predictable and easy to understand.
Tool Count3/5
With only two tools, the server feels minimal for a weather domain. While it covers two core functions, 2 tools is on the lower end of reasonable scope.
Completeness3/5
The server provides alerts and forecast but lacks current conditions, radar, or marine data, leaving notable gaps for a typical weather information service.
Maintenance
ActivityInactive
ResponsivenessNo issues