Skip to main content
Glama

🌦️ Weather MCP RAG Assistant

Ein KI-gestützter Wetterassistent, der mit Model Context Protocol (MCP), Retrieval-Augmented Generation (RAG), LangChain, ChromaDB, Groq LLM und OpenWeather API erstellt wurde.

Das Projekt stellt ein benutzerdefiniertes MCP-Tool bereit, das Echtzeit-Wetterdaten abruft und sie mit einer RAG-Pipeline kombiniert, um kontextbezogene, natürlichsprachliche Wettereinblicke zu generieren.

🚀 Hauptfunktionen

  • Benutzerdefinierter MCP-Server mit FastMCP

  • Echtzeit-Wetterabruf mit OpenWeather API

  • Retrieval-Augmented Generation (RAG)-Pipeline für kontextbezogene Antworten

  • ChromaDB-Vektorspeicher zum Speichern und Abrufen von Wetterkontext

  • Sentence-Transformer-Embeddings mit all-MiniLM-L6-v2

  • Integration von Groq-gehosteten LLMs über LangChain

  • MCP-Tool-Integration mit VS Code / GitHub Copilot

  • Unterstützt dynamische Wetterabfragen für verschiedene Städte

  • Sichere API-Schlüsselverwaltung mithilfe von Umgebungsvariablen

Related MCP server: Weather MCP Server

🧠 So funktioniert es

User Query
    ↓
GitHub Copilot / MCP Client
    ↓
Weather MCP Server
    ↓
get_weather(location)
    ↓
OpenWeather API
    ↓
Weather Data Processing
    ↓
ChromaDB Vector Store
    ↓
RAG Retrieval
    ↓
Groq LLM
    ↓
Context-Aware Weather Response

🛠️ Technologie-Stack

Sprache: Python

KI / GenAI: LLMs, RAG, Prompt Engineering, Sentence Transformers

Frameworks: LangChain, FastMCP

Vektordatenbank: ChromaDB

LLM-Anbieter: Groq

Externe API: OpenWeather API

Protokoll: Model Context Protocol (MCP)

Entwicklungsumgebung: VS Code, Git, GitHub

📂 Projektstruktur

Weather-MCP-RAG-Assistant/
│
├── rag/
│   ├── embedding.py
│   ├── llm.py
│   ├── retriever.py
│   └── vector_store.py
│
├── services/
│   └── weather_service.py
│
├── utils/
│   └── parser.py
│
├── config.py
├── server.py
├── requirements.txt
├── env.example
├── .gitignore
└── README.md

⚙️ Einrichtung

1. Repository klonen

git clone https://github.com/rudraniai/Weather-MCP-RAG-Assistant.git
cd Weather-MCP-RAG-Assistant

2. Virtuelle Umgebung erstellen

python -m venv .venv

Aktivieren Sie sie unter Windows:

.venv\Scripts\activate

3. Abhängigkeiten installieren

pip install -r requirements.txt

4. Umgebungsvariablen konfigurieren

Kopieren Sie die Beispiel-Umgebungsdatei:

copy env.example .env

Fügen Sie Ihre Anmeldedaten zu .env hinzu:

OPENWEATHER_API_KEY=your_openweather_api_key
GROQ_API_KEY=your_groq_api_key
GROQ_MODEL=your_groq_model
EMBEDDING_MODEL=sentence-transformers/all-MiniLM-L6-v2
CHROMA_DB_DIR=./chroma_db

API-Anmeldedaten werden mithilfe von .gitignore außerhalb der Versionskontrolle gehalten.

5. MCP-Server ausführen

python server.py

🔌 MCP-Konfiguration

Konfigurieren Sie den lokalen MCP-Server in VS Code mit:

{
  "servers": {
    "weather-mcp": {
      "type": "stdio",
      "command": "python",
      "args": [
        "PATH_TO_PROJECT/server.py"
      ]
    }
  },
  "inputs": []
}

Ersetzen Sie PATH_TO_PROJECT durch den lokalen Pfad zu server.py.

Nach der Konfiguration:

  1. Öffnen Sie die VS Code-Befehlspalette.

  2. Wählen Sie MCP: List Servers.

  3. Wählen Sie weather-mcp.

  4. Starten Sie den MCP-Server.

  5. Öffnen Sie den GitHub Copilot-Chat und erlauben Sie das MCP-Tool, wenn Sie dazu aufgefordert werden.

🎥 Projektdemo

Die folgende Demo zeigt, wie das benutzerdefinierte weather-mcp-MCP-Tool über GitHub Copilot aufgerufen wird, um kontextbezogene Wetterinformationen abzurufen und zu generieren.

Weather MCP Demo

💬 Beispielverwendung

Fragen Sie Copilot:

Use the weather-mcp MCP tool to get the weather in Pune.

Weitere Beispiele:

Use the weather-mcp MCP tool to get the weather in Mumbai.

Use the weather-mcp MCP tool to get the weather in Nagpur.

Beispielinformationen, die vom Assistenten zurückgegeben werden, umfassen:

  • Aktuelle Temperatur

  • Gefühlte Temperatur

  • Luftfeuchtigkeit

  • Windgeschwindigkeit und -richtung

  • Wolkendecke

  • Wetterzusammenfassung

  • Luftqualitätsinformationen, sofern verfügbar

🔐 Sicherheit

Sensible Anmeldedaten wie API-Schlüssel werden in einer lokalen .env-Datei gespeichert.

Die folgenden Dateien/Verzeichnisse sind von Git ausgeschlossen:

.env
chroma_db/
__pycache__/
.vscode/

Übertragen Sie niemals echte API-Schlüssel in das Repository.

📌 Was ich gelernt habe

Durch dieses Projekt habe ich praktische Erfahrung gesammelt mit:

  • Erstellen und Bereitstellen von Tools über Model Context Protocol (MCP)

  • Integration externer APIs in LLM-basierte Anwendungen

  • Implementierung einer RAG-Pipeline

  • Arbeiten mit Embeddings und Vektordatenbanken

  • Verwendung von ChromaDB für den kontextbezogenen Abruf

  • Verbinden von LangChain mit einem gehosteten LLM

  • Integration eines benutzerdefinierten MCP-Servers mit GitHub Copilot

  • Sicheres Verwalten von Umgebungsvariablen und API-Anmeldedaten

🔮 Zukünftige Verbesserungen

  • Mehrtägige Wettervorhersage hinzufügen

  • Wetterwarnungen und Empfehlungen hinzufügen

  • Abruf und kontextuelles Gedächtnis verbessern

  • Zusätzliche Wetter- und Umweltdatenquellen hinzufügen

  • Eigenständige Webschnittstelle mit Streamlit oder FastAPI erstellen

  • Anwendung mit Docker containerisieren

👩💻 Autorin

Rudrani Gulhane

B.Tech Informatikingenieurwesen — Künstliche Intelligenz & Maschinelles Lernen

Interessiert an KI/ML, generativer KI, RAG, LLMs, KI-Agenten und MCP-basierten Anwendungen.

📄 Lizenz

Dieses Projekt ist für Bildungs-, Portfolio- und Experimentierzwecke gedacht.

F
license - not found
Not graded
quality - not tested
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    B
    quality
    D
    maintenance
    Enables AI agents to fetch real-time weather data for any location using the OpenWeatherMap API. Demonstrates how to build a simple MCP server that exposes weather information as a tool for LLMs.
    1
    GPL 3.0
  • F
    license
    Not graded
    quality
    D
    maintenance
    Provides real-time weather updates and city geocoding by integrating the Nominatim and Open-Meteo APIs. It enables users to retrieve current weather conditions for any location through natural language queries in MCP-compatible clients.
    15
  • A
    license
    Not graded
    quality
    D
    maintenance
    Provides weather data from OpenWeatherMap API through MCP tools and a REST API with OpenAPI support. Enables LLM agents to retrieve current weather, forecasts, and temperature ranges by city or coordinates.
    21
    MIT

View all related MCP servers

Related MCP Connectors

  • OpenWeather MCP — wraps the OpenWeatherMap API (openweathermap.org)

  • Open-Meteo MCP — weather forecast + historical reanalysis + sister APIs

  • WeatherAPI.com MCP — wraps WeatherAPI.com (api.weatherapi.com)

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/rudraniai/Weather-MCP-RAG-Assistant'

If you have feedback or need assistance with the MCP directory API, please join our Discord server