Weather MCP Server

A Model Context Protocol (MCP) server that provides weather information and alerts using the National Weather Service (NWS) API

Installation

Installing for Claude Desktop

Option 1: One-Command Installation

npx mcpbar@latest install akaramanapp/weather-mcp-server -c claude

This command will automatically install and configure the Weather MCP Server MCP server for your selected client.

Option 2: Manual Configuration

Run the command below to open your configuration file:

npx mcpbar@latest edit -c claude

After opening your configuration file, copy and paste this configuration:

View JSON configuration
{
  "mcpServers": {
    "Weather MCP Server": {
      "command": "npx",
      "args": [
        "-y",
        "weather"
      ],
      "env": {}
    }
  }
}

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

  1. Clone the repository:
git clone https://github.com/akaramanapp/weather-mcp-server.git
cd weather-mcp-server
  1. Install dependencies:
npm install
  1. 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:

  1. Make changes in the src/index.ts file
  2. 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
Share:
Details:
  • Stars


    0
  • Forks


    0
  • Last commit


    3 months ago
  • Repository age


    3 months
View Repository

Auto-fetched from GitHub .

MCP servers similar to Weather MCP Server:

 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit


 

 
 
  • Stars


  • Forks


  • Last commit