Skip to main content
Glama
OpenWeatherMap MCP Server

OpenWeatherMap MCP Server

by robertn702

OpenWeatherMap MCP Server

A Model Context Protocol (MCP) server that provides comprehensive weather data and forecasts through the OpenWeatherMap API. This server enables AI assistants to access real-time weather information, forecasts, air quality data, and location services.

Features

Weather Tools

  • Current Weather - Get current conditions for any location

  • Weather Forecast - 5-day weather forecast with 3-hour intervals

  • Hourly Forecast - Detailed hourly forecasts for up to 48 hours

  • Daily Forecast - Daily weather forecasts for up to 8 days with temperature ranges and astronomical data

  • Minutely Forecast - Minute-by-minute precipitation forecasts for the next hour

  • Weather Alerts - Active weather warnings and alerts with severity classification

Air Quality & Location

  • Current Air Pollution - Real-time air quality index and pollutant measurements

  • Location Info - Reverse geocoding to get location details from coordinates

  • OneCall Weather - Comprehensive weather data combining multiple forecasts

  • Air Pollution - Historical and forecast air quality data

  • Geocoding - Convert location names to coordinates

Related MCP server: Weather MCP

Installation

Prerequisites

Setup

  1. Clone the repository:

git clone https://github.com/robertn702/mcp-openweathermap.git
cd mcp-openweathermap
  1. Install dependencies:

bun install
  1. Set up your environment variables:

cp .env.example .env
# Edit .env and add your OpenWeatherMap API key

Environment variables:

  • OPENWEATHER_API_KEY - Your OpenWeatherMap API key (required for stdio transport only)

  • PORT - Server port for HTTP transport (default: 3000)

  • MCP_TRANSPORT - Transport type: stdio or httpStream (default: stdio)

  • MCP_ENDPOINT - HTTP endpoint path (default: /stream)

Usage

Running the Server

Stdio Transport (default):

bun run src/main.ts

HTTP Stream Transport:

MCP_TRANSPORT=httpStream PORT=3000 bun run src/main.ts

Claude Desktop Configuration

Add this configuration to your Claude Desktop MCP settings:

{
  "mcpServers": {
    "openweathermap": {
      "command": "npx",
      "args": ["mcp-openweathermap"],
      "env": {
        "OPENWEATHER_API_KEY": "your-api-key-here"
      }
    }
  }
}

API Tools

Weather Information

  • get-current-weather - Current weather conditions

  • get-weather-forecast - 5-day forecast

  • get-hourly-forecast - Hourly forecasts (up to 48 hours)

  • get-daily-forecast - Daily forecasts (up to 8 days)

  • get-minutely-forecast - Minute-by-minute precipitation

Alerts & Air Quality

  • get-weather-alerts - Weather warnings and alerts

  • get-current-air-pollution - Current air quality data

  • get-air-pollution - Air quality forecasts and history

Location Services

  • get-location-info - Reverse geocoding from coordinates

  • geocode-location - Convert addresses to coordinates

  • get-onecall-weather - Comprehensive weather data

Development

Running in Development

bun run src/main.ts

Testing with MCP Inspector

bun run src/main.ts

Then connect the MCP Inspector to test the tools interactively.

Build

bun run build

Authentication

Stdio Transport: Requires OPENWEATHER_API_KEY environment variable.

HTTP Transport: The OpenWeatherMap API key is passed as a bearer token in the HTTP request headers. No environment variable needed.

Contributing

  1. Fork the repository

  2. Create a feature branch

  3. Make your changes

  4. Add tests if applicable

  5. Submit a pull request

License

This project is licensed under the MIT License - see the LICENSE file for details.

Support

Available Tools

11 tools
geocode-locationC

Convert location name to coordinates or vice versa

Inputs: query (required), limit.

get-air-pollutionC

Get air quality index and pollution data

Inputs: latitude (required), longitude (required).

get-current-air-pollutionC

Get current air quality data

Inputs: location (required).

get-current-weatherC

Get current weather conditions for a location

Inputs: location (required), units.

get-daily-forecastC

Get daily weather forecast for up to 8 days

Inputs: location (required), days, include_today, units.

get-hourly-forecastB

Get hourly weather forecast for up to 48 hours

Inputs: location (required), hours, units.

get-location-infoB

Get location information from coordinates (reverse geocoding)

Inputs: latitude (required), longitude (required).

get-minutely-forecastC

Get minute-by-minute precipitation forecast for next hour

Inputs: location (required), limit.

get-onecall-weatherC

Get comprehensive weather data (current + 7-day forecast)

Inputs: latitude (required), longitude (required), exclude, units.

get-weather-alertsC

Get active weather alerts and warnings

Inputs: location (required).

get-weather-forecastC

Get weather forecast for up to 5 days

Inputs: location (required), days, units.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.4/5.0

    Scored across 11 tools

    Disambiguation4/5

    Most tools are clearly distinct, covering specific weather and location data types like current weather, forecasts, air pollution, and geocoding. However, there is some overlap between 'get-daily-forecast', 'get-weather-forecast', and 'get-onecall-weather', which could cause confusion as they all provide forecast data with different scopes or formats.

    Naming Consistency5/5

    All tool names follow a consistent 'get-' or 'geocode-' prefix pattern with descriptive kebab-case nouns, such as 'get-current-weather' and 'geocode-location'. This uniformity makes the tools predictable and easy to understand at a glance.

    Tool Count5/5

    With 11 tools, the server is well-scoped for an OpenWeatherMap integration, covering a comprehensive range of weather and location services. Each tool serves a distinct purpose, from basic weather queries to specialized forecasts and alerts, without feeling bloated or sparse.

    Completeness5/5

    The tool set provides complete coverage for weather and location data, including current conditions, various forecast types (minutely, hourly, daily), air pollution, alerts, and geocoding. There are no obvious gaps, enabling agents to handle a wide range of weather-related queries effectively.

    Maintenance

    ActivityInactive
    ResponsivenessNo recent community issues

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      A Model Context Protocol (MCP) server that enables AI assistants and LLMs to access real-time weather data and forecasts by connecting to the OpenWeatherMap API.
      -
    • F
      license
      Not graded
      quality
      D
      maintenance
      A Model Context Protocol server that enables natural language weather queries for global cities, integrating with OpenWeather API to provide real-time weather information in an easy-to-read format.
      1
      -
    • F
      license
      B
      quality
      D
      maintenance
      A Model Context Protocol server that provides real-time weather data to AI clients through Server-Sent Events, enabling them to fetch current weather conditions, multi-day forecasts, and location-based weather information.
      5
      -
    • A
      license
      Not graded
      quality
      D
      maintenance
      A Model Context Protocol server that provides weather information using the Open-Meteo API, allowing users to get current weather for specific cities and retrieve weather data for date ranges.
      Apache 2.0