mcp-weather-server

ShishirPathak/mcp-weather-server

3.1

If you are the rightful owner of mcp-weather-server and would like to certify it and/or have it hosted online, please leave a comment on the right or send an email to henry@mcphub.com.

The MCP Weather Server is a specialized server designed to provide weather data using the Model Context Protocol (MCP).

🌐 MCP Weather Agent Server using Open-Meteo API

This project implements a Model Context Protocol (MCP) server using Python to connect language models (LLMs) with real-time weather data, air quality, and marine conditions through the Open-Meteo API suite.

Built following the LinkedIn Learning course on MCP, this project demonstrates how to expose API-based tools that LLMs can invoke to fetch live weather intelligence.


✨ Features

  • 🔧 Tools Exposed to LLMs via MCP:

    • get_current_weather: Real-time weather conditions by latitude and longitude
    • get_forecast: Daily temperature, precipitation, and weather codes
    • search_locations: Geocoding tool to search coordinates from place names
    • get_air_quality: Pollution and atmospheric quality metrics
    • get_marine_weather: Sea and swell data for coastal/oceanic regions
  • ⚙️ Built with the mcp Python SDK using FastMCP

  • 📡 Uses httpx for asynchronous API calls

  • 🧠 Structured for LLM agent interaction through Claude Desktop or compatible MCP clients


🚀 Getting Started

🔧 Requirements

  • Python 3.10+
  • uv - fast dependency manager (recommended)
  • Claude Desktop (for agent testing)

🛠️ Setup Instructions

# 1. Clone this repository
git clone https://github.com/ShishirPathak/mcp-weather-server.git
cd mcp-weather-server

# 2. Initialize project with uv (or use pip if preferred)
uv venv
source .venv/bin/activate
uv pip install "mcp[cli]" httpx

# 3. Run the MCP server
mcp dev server.py