Skip to main content
Glama
bsparks

mcp-weatherapi

by bsparks

WeatherAPI MCP Server

An MCP server that provides weather data tools using the WeatherAPI.com service.

Features

This MCP server provides the following tools:

  • get_current_weather: Get current weather conditions for any location

  • get_forecast: Get weather forecast (1-10 days) with hourly breakdowns

  • search_location: Search for locations by name

  • get_astronomy: Get sunrise, sunset, moon phases, and other astronomy data

  • get_air_quality: Get air quality index and pollutant levels

Related MCP server: Weather MCP Server

Setup

  1. Get a free API key from WeatherAPI.com

  2. Set the API key as an environment variable:

    # Windows PowerShell
    $env:WEATHERAPI_KEY = "your_api_key_here"
    
    # Or add to your profile for persistence
    # Edit $PROFILE and add:
    # $env:WEATHERAPI_KEY = "your_api_key_here"
  3. Install using uvx:

    uvx mcp-weatherapi

Usage with MCP Clients

Add this to your MCP configuration:

{
  "mcpServers": {
    "weatherapi": {
      "command": "uvx",
      "args": [
        "--from", "git+https://github.com/bsparks/mcp-weatherapi.git",
        "mcp-weatherapi"
      ],
      "env": {
        "WEATHERAPI_KEY": "your_api_key_here"
      }
    }
  }
}

Development

  1. Clone the repository

  2. Install dependencies:

    pip install -e .
  3. Set your API key:

    $env:WEATHERAPI_KEY = "your_api_key_here"
  4. Run the server:

    python weather_server.py

Available Tools

get_current_weather(location: str)

Get current weather conditions including temperature, wind, humidity, air quality, etc.

Example: get_current_weather("London")

get_forecast(location: str, days: int = 3)

Get weather forecast for 1-10 days with daily summaries and hourly data.

Example: get_forecast("New York", 5)

search_location(query: str)

Search for locations by name (minimum 3 characters).

Example: search_location("Paris")

get_astronomy(location: str, date: Optional[str] = None)

Get astronomy information including sunrise, sunset, moonrise, moonset, and moon phases.

Example: get_astronomy("Tokyo", "2025-11-07")

get_air_quality(location: str)

Get air quality index and pollutant levels.

Example: get_air_quality("Beijing")

API Documentation

For more information about the WeatherAPI.com service, visit: https://www.weatherapi.com/docs/

License

MIT

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    D
    maintenance
    Enables AI assistants to fetch real-time weather data, forecasts up to 10 days, and compare weather conditions between cities using WeatherAPI.com with support for both Celsius and Fahrenheit units.
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Provides weather data from WeatherAPI.com through MCP, enabling AI agents to query current conditions and forecasts via natural language.
    2 npm
    MIT