Weather MCP Tool

by jalaj-pandey

Integrations

  • Used for storing API credentials securely in a .env file for the OpenWeatherMap API integration

  • Required as the runtime environment (version 3.10+) for executing the MCP server

Weather MCP Tool (India-Focused)

An MCP (Model Context Protocol) server using the OpenWeatherMap API to provide:

  • Real-time weather conditions
  • 5-day weather forecasts
  • Air quality data
  • Location search

🚀 Setup

  1. Python 3.10+ is required.
  2. Install dependencies:
    pip install -r requirements.txt
  3. Get an API key from OpenWeatherMap.
  4. Create a .env file in the root folder:
    OPENWEATHER_API_KEY=your_api_key_here

🛠 Available Tools

get_current_weather(location: str)

Returns current weather for a given location.

get_weather_forecast(location: str, days: int = 5)

Returns a weather forecast (up to 5 days) for the location.

get_air_quality(location: str)

Returns air quality metrics and AQI level.

search_location(query: str)

Returns up to 5 location matches based on the query.


🧪 Example Output (India)

Current Weather (Delhi)

{ "location": { "name": "Delhi", "country": "IN", "lat": 28.6139, "lon": 77.2090 }, "temperature": { "current": 32.4, "feels_like": 35.1, "min": 30.0, "max": 36.2 }, "weather_condition": { "main": "Haze", "description": "smoky haze", "icon": "50d" }, "wind": { "speed": 4.1, "deg": 135 }, "clouds": 20, "humidity": 58, "pressure": 1005, "visibility": 5000, "sunrise": "2025-03-16T06:20:00", "sunset": "2025-03-16T18:40:00", "timestamp": "2025-03-16T14:30:00" }

Weather Forecast (Mumbai)

{ "location": { "name": "Mumbai", "country": "IN", "lat": 19.0760, "lon": 72.8777 }, "forecast": [ { "datetime": "2025-03-16T12:00:00", "temperature": { "temp": 33.2, "feels_like": 37.8, "min": 31.5, "max": 34.0 }, "weather_condition": { "main": "Clouds", "description": "scattered clouds", "icon": "03d" }, "wind": { "speed": 3.9, "deg": 200 }, "clouds": 40, "humidity": 70, "pressure": 1008, "visibility": 10000, "pop": 0.1 } ], "days": 5 }

Air Quality (Bangalore)

{ "location": { "name": "Bengaluru", "country": "IN", "lat": 12.9716, "lon": 77.5946 }, "air_quality_index": 2, "air_quality_level": "Fair", "components": { "co": 102.4, "no": 0.0, "no2": 12.6, "o3": 30.5, "so2": 3.8, "pm2_5": 45.1, "pm10": 60.2, "nh3": 1.5 }, "timestamp": "2025-03-16T14:30:00" }
{ "results": [ { "name": "Kolkata", "state": "West Bengal", "country": "IN", "lat": 22.5726, "lon": 88.3639 }, { "name": "Kolkata", "state": "", "country": "IN", "lat": 22.5675, "lon": 88.3700 } ] }

🧰 Error Handling

All tools return clear error messages:

{ "error": "Location 'XYZ' not found" }

📌 Notes

  • Ensure .env file is configured correctly.
  • API keys may take time to activate.
  • OpenWeatherMap free tier: 60 API calls per minute.

🧑‍💻 Run the Server

mcp dev main.py

Once running, you can use this server with MCP-compatible clients like Claude Desktop or other automation tools.


-
security - not tested
F
license - not found
-
quality - not tested

remote-capable server

The server can be hosted and run remotely because it primarily relies on remote services or has no dependency on the local environment.

An India-focused MCP server that provides real-time weather conditions, forecasts, air quality data, and location search capabilities using the OpenWeatherMap API.

  1. 🚀 Setup
    1. 🛠 Available Tools
      1. get_current_weather(location: str)
      2. get_weather_forecast(location: str, days: int = 5)
      3. get_air_quality(location: str)
      4. search_location(query: str)
    2. 🧪 Example Output (India)
      1. Current Weather (Delhi)
      2. Weather Forecast (Mumbai)
      3. Air Quality (Bangalore)
      4. Location Search
    3. 🧰 Error Handling
      1. 📌 Notes
        1. 🧑‍💻 Run the Server

          Related MCP Servers

          • -
            security
            F
            license
            -
            quality
            Provides current weather and air quality data for any city using WeatherAPI, easily integrating with MCP clients like n8n and Claude Desktop App.
            Last updated -
            214
            JavaScript
          • A
            security
            A
            license
            A
            quality
            An MCP server that provides real-time weather information including temperature, humidity, wind speed, and sunrise/sunset times through the OpenWeatherMap API.
            Last updated -
            1
            Python
            MIT License
            • Linux
            • Apple
          • -
            security
            F
            license
            -
            quality
            An MCP server implementation that allows users to fetch and display weather information for specified cities, including temperature, humidity, wind speed, and weather descriptions.
            Last updated -
            Python
            • Linux
            • Apple
          • -
            security
            A
            license
            -
            quality
            An MCP server that connects to OpenWeatherMap's API to provide current weather data and multi-day forecasts for locations worldwide in different measurement units.
            Last updated -
            51
            TypeScript
            MIT License

          View all related MCP servers

          ID: 9ivebgtws6