Weather MCP Server logo

Weather MCP Server

by nakamurau1

The Weather MCP Server provides weather data from the National Weather Service API, formatted for consumption by Large Language Models. It allows users to retrieve weather forecasts and alerts.

View on GitHub

Last updated: N/A

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

  1. Clone the repository
git clone https://github.com/nakamurau1/weather-mcp.git
cd weather-mcp
  1. Install dependencies
npm install
  1. Build the server
npm run build

Usage

Running the server directly

npm start

Or directly:

./dist/index.js

Connecting to Claude Desktop

  1. Edit your Claude Desktop configuration file:
# MacOS
code ~/Library/Application\ Support/Claude/claude_desktop_config.json
  1. Add the weather-mcp server configuration:
{
  "mcpServers": {
    "weather": {
      "command": "node",
      "args": ["/absolute/path/to/your/weather-mcp/dist/index.js"]
    }
  }
}
  1. Restart Claude Desktop

  2. 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