
Weather MCP Server
Sample MCP server implementation for fetching weather forecasts
what is Weather MCP Server?
Weather MCP Server is a Model Context Protocol (MCP) server that provides weather data from the National Weather Service API, allowing users to fetch weather forecasts and alerts.
how to use Weather MCP Server?
To use the Weather MCP Server, clone the repository, install the dependencies, and run the server. You can then connect it to compatible clients like Claude Desktop for querying weather data.
key features of Weather MCP Server?
- Fetch weather forecasts by geographic coordinates.
- Retrieve weather alerts by US state.
- Provides clean, formatted weather data suitable for LLM consumption.
- Integration capabilities with Claude and other MCP-compatible clients.
use cases of Weather MCP Server?
- Getting real-time weather forecasts for specific locations.
- Monitoring active weather alerts in different US states.
- Integrating weather data into applications that require weather information.
FAQ from Weather MCP Server?
- What kind of weather data can I get?
You can get current weather forecasts and active weather alerts for locations in the United States.
- Is historical weather data available?
No, the server only provides current conditions and forecasts, not historical data.
- What are the prerequisites for running the server?
You need Node.js (LTS version recommended) and npm or yarn to install dependencies.
Weather MCP Server
A Model Context Protocol (MCP) server that provides weather data from the National Weather Service API.
Features
- Get weather forecasts by geographic coordinates
- Get weather alerts by US state
- Clean, formatted weather data for LLM consumption
- Integration with Claude and other MCP-compatible clients
Prerequisites
- Node.js (LTS version recommended)
- npm or yarn
Installation
- Clone the repository
git clone https://github.com/nakamurau1/weather-mcp.git
cd weather-mcp
- Install dependencies
npm install
- Build the server
npm run build
Usage
Running the server directly
npm start
Or directly:
./dist/index.js
Connecting to Claude Desktop
- Edit your Claude Desktop configuration file:
# MacOS
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
- Add the weather-mcp server configuration:
{
"mcpServers": {
"weather": {
"command": "node",
"args": ["/absolute/path/to/your/weather-mcp/dist/index.js"]
}
}
}
-
Restart Claude Desktop
-
Test the server with queries like:
- "What's the weather in Sacramento?"
- "Are there any active weather alerts in Texas?"
Available Tools
get_forecast
Gets weather forecast for a geographic location.
Parameters:
latitude
: Latitude of the location (number between -90 and 90)longitude
: Longitude of the location (number between -180 and 180)
get_alerts
Gets active weather alerts for a US state.
Parameters:
state
: Two-letter US state code (e.g., "CA", "NY", "TX")
Resource Templates
Weather alerts by state
URI Template: weather://{state}/alerts
Example: weather://CA/alerts
Limitations
- Weather data is limited to United States locations (NWS API)
- No historical weather data, only current conditions and forecasts
Development
- Run in development mode:
npm run dev
- Build the project:
npm run build
License
ISC