What is Weather MCP Server?
Weather MCP Server is a Model Context Protocol (MCP) server that provides weather information and alerts for US locations using the National Weather Service (NWS) API. It is designed for use by AI agents to access real-time weather data.
How to use Weather MCP Server?
To use the Weather MCP Server, clone the repository, install the dependencies, and build the application. AI agents can then utilize the provided MCP tools to get weather alerts and forecasts.
Key features of Weather MCP Server?
- Provides weather alerts for any US state.
- Offers detailed weather forecasts using geographical coordinates.
- Real-time data sourced from the National Weather Service.
- Supports temperature, wind conditions, and short forecast descriptions.
Use cases of Weather MCP Server?
- AI agents retrieving weather alerts for specific states.
- Applications providing localized weather forecasts based on user location.
- Integration into smart home systems for weather updates.
FAQ from Weather MCP Server?
- What locations does the Weather MCP Server support?
It supports weather information for all US locations as it uses the National Weather Service API.
- What are the prerequisites for running the server?
You need Node.js (v16 or higher) and a package manager like npm or yarn.
- Is there a rate limit for API requests?
Yes, API requests are rate-limited and require a User-Agent header.
Weather MCP Server
A Model Context Protocol (MCP) server that provides weather information and alerts for US locations using the National Weather Service (NWS) API. This server is designed to be used by AI agents through the Model Context Protocol.
Features
- Tool for getting weather alerts for any US state
- Tool for getting detailed weather forecasts for any US location using coordinates
- Supports temperature, wind conditions, and short forecast descriptions
- Real-time data from the National Weather Service
Prerequisites
- Node.js (v16 or higher)
- npm or yarn package manager
Installation
- Clone the repository:
git clone https://github.com/akaramanapp/weather-mcp-server.git
cd weather-mcp-server
- Install dependencies:
npm install
- Build the application:
npm run build
MCP Tools
The server provides two MCP tools that can be used by AI agents:
get-alerts
Get weather alerts for a specific US state.
Parameters:
state
: Two-letter state code (e.g., CA, NY)
Example response:
{
"content": [
{
"type": "text",
"text": "Active alerts for CA: ..."
}
]
}
get-forecast
Get weather forecast for a specific location using coordinates.
Parameters:
latitude
: Latitude of the location (-90 to 90)longitude
: Longitude of the location (-180 to 180)
Example response:
{
"content": [
{
"type": "text",
"text": "Morning: Temperature: 72°F, Wind: 5mph NW, Partly cloudy..."
}
]
}
Project Structure
weather/
├── src/
│ └── index.ts # Main server code with MCP tool implementations
├── build/ # Compiled JavaScript files
├── package.json # Project dependencies and scripts
└── tsconfig.json # TypeScript configuration
Technical Details
- Built with TypeScript
- Implements Model Context Protocol (MCP) server
- Uses @modelcontextprotocol/sdk for MCP server implementation
- Interfaces with the National Weather Service (NWS) API
- ES2022 target with Node16 module resolution
Development
To modify or extend the server:
- Make changes in the
src/index.ts
file - Rebuild the application:
npm run build
Dependencies
- @modelcontextprotocol/sdk: MCP server implementation framework
- zod: Runtime type checking and validation for tool parameters
- TypeScript: Development dependency for type safety
License
ISC
Notes
- This server only works for US locations as it uses the National Weather Service API
- API requests are rate-limited and require a User-Agent header
- All coordinates should be in decimal degrees format
- This is not a standalone CLI application, but rather a server that provides tools for AI agents through the Model Context Protocol