Serves as the runtime environment for the MCP server, enabling it to handle asynchronous API requests to the National Weather Service.
Manages the server's dependencies and provides installation capabilities, allowing the weather service to be installed as a global CLI tool.
Provides type safety and improved developer experience for the server implementation, ensuring reliable handling of weather data.
Implements data validation for weather information retrieved from the National Weather Service API, ensuring the integrity of alert and forecast data.
Weather MCP Server
A Model Context Protocol (MCP) server that provides weather information services using the National Weather Service (NWS) API. This server implements a set of tools that can be used by AI models to fetch weather alerts and forecasts for locations in the United States.
Features
Weather Alerts: Get active weather alerts for any US state using a two-letter state code
Weather Forecast: Get detailed weather forecasts for any location in the US using latitude and longitude coordinates
MCP Integration: Implements the Model Context Protocol for seamless integration with AI models
TypeScript: Written in TypeScript for type safety and better developer experience
Related MCP server: MCP Weather Server
Installation
Usage
This server is designed to be used as a CLI tool and can be installed globally:
The server runs on stdio and provides two main tools:
1. Get Weather Alerts
Retrieves active weather alerts for a specified US state.
Example parameters:
2. Get Weather Forecast
Retrieves weather forecast for a specific location using coordinates.
Example parameters:
Technical Details
Built using the
@modelcontextprotocol/sdkfor MCP implementationUses the National Weather Service (NWS) API for weather data
Implements data validation using Zod
Written in TypeScript with Node.js
Uses ES modules (type: "module" in package.json)
Dependencies
@modelcontextprotocol/sdk: ^1.12.1zod: ^3.25.41typescript: ^5.8.3 (dev dependency)@types/node: ^22.15.26 (dev dependency)
Development
Clone the repository
Install dependencies:
npm installBuild the project:
npm run build
API Integration
The server uses the National Weather Service (NWS) API with the following endpoints:
Alerts:
https://api.weather.gov/alertsPoints:
https://api.weather.gov/points/{lat},{lon}Forecast: Uses the forecast URL provided by the points endpoint
Error Handling
The server includes robust error handling for:
API request failures
Invalid coordinates
Missing or malformed data
Network issues