Weather-MCP
🌤️ — Wettervorhersage in Israel
Lernprojekt zur Entwicklung von MCP (Model Context Protocol): Ein LLM-basierter Agent, der Wettervorhersagen für Städte in Israel und den USA abrufen und im Terminal-Chat in freier Sprache beantworten kann.
🎯 Projektziel
Einen speziellen MCP-Server aufbauen, der dem LLM „beibringt“, eine Aufgabe zu erledigen, die es allein nicht kann – nämlich eine Wettervorhersage von einer israelischen Website ohne API abzurufen.
Der Agent macht das auf zwei Wegen:
Israel-Server (
weather-Israel) – steuert einen echten Browser mit Playwright: Öffnet weather2day.co.il/forecast, sucht eine Stadt, wählt sie aus und extrahiert dann den Inhalt der Vorhersageseite und speist ihn in das LLM ein, damit es selbst antworten kann (RAG-Ansatz).USA-Server (
weather-USA) – ruft Vorhersagen und Warnungen über die offizielle NWS-API (National Weather Service) ab.
Der Host verbindet alle Server mit dem LLM (Gemini, über die OpenAI-kompatible API), sammelt automatisch alle Tools von ihnen und führt eine Chat-Schleife aus, in der das LLM entscheidet, welches Tool es verwenden möchte, und sie nacheinander ausführt, bis eine Antwort vorliegt.
Related MCP server: mcp-playwright-weather-israel
🏗️ Projektstruktur
project-template/
├── host.py # צ'אט בטרמינל שמחבר את ה-LLM לכל שרתי ה-MCP
├── client.py # MCP Client גנרי (מתחבר לשרת, מריץ Tools)
├── weather_USA.py # שרת MCP לארה"ב — דרך NWS API
├── weather_Israel.py # שרת MCP לישראל — דרך אטמוט דפדפן (Playwright)
├── pyproject.toml # תלויות הפרויקט
└── README.mdDie Tools des Israel-Servers
# | Tool | Funktion |
1 |
| Öffnet einen Chromium-Browser und navigiert zur Vorhersage-Website |
2 |
| Gibt einen Städtenamen in das Suchfeld ein |
3 |
| Wählt die erste Stadt aus der Vorschlagsliste aus |
4 |
| Extrahiert den Inhalt der Vorhersageseite (einschließlich iframes) und gibt ihn an das LLM zurück |
💡 Die ersten drei teilen sich denselben Browser über einen globalen Zustand (
_page), da sie alle im selben Serverprozess laufen. Der vierte durchläuft alle frames der Seite, da die Vorhersage selbst in einem<iframe>geladen wird, das der Haupt-bodynicht sieht.
⚙️ Installation und Ausführung
Voraussetzungen
Python ≥ 3.13
uv (Umgebungs- und Abhängigkeitsmanager)
Gemini-API-Schlüssel (kostenlosen Schlüssel erhalten)
Schritte
# 1. התקנת התלויות והקמת סביבת העבודה
uv sync
# 2. התקנת דפדפן Chromium עבור Playwright
uv run playwright install chromiumUmgebungsvariablen festlegen
Erstellen Sie eine .env-Datei im Projektordner:
GEMINI_API_KEY=your_api_key_here
GEMINI_MODEL=gemini-2.0-flashAusführung
uv run host.pyNach dem Start erscheint eine Query:-Zeile – geben Sie eine Frage ein (oder quit zum Beenden).
💬 Beispielfragen, die der Agent beantworten kann
Vorhersage in Israel (Playwright)
Es öffnet sich ein Browserfenster mit der Vorhersageseite, und das LLM antwortet auch im Chat.
„Wie ist die Vorhersage in Tel Aviv?“
„Wie viele Grad werden morgen in Jerusalem erwartet?“
„Wie ist das Wetter heute in Haifa?“
„Öffne mir die Vorhersage für Be'er Scheva“
Vorhersage und Warnungen in den USA (NWS API)
"What's the weather forecast for San Francisco?" (latitude/longitude)
"Are there any weather alerts in California?"
"Show me active weather alerts for NY"
🧩 So funktioniert es (Flussdiagramm)
משתמש → "מה התחזית בתל אביב?"
│
▼
Host ──► LLM (Gemini) בוחר Tools להפעיל
│
▼ (שרת ישראל, בזה אחר זה)
open → enter("תל אביב") → select → get_content
│
▼
תוכן התחזית חוזר ל-LLM (RAG)
│
▼
LLM כותב תשובה בשפה חופשית בצ'אט ✨📝 Hinweise
Das LLM entscheidet selbst, welche Tools es verwenden und in welcher Reihenfolge – wir haben keine feste Logik geschrieben.
Zwei Serverdateien = zwei getrennte Prozesse, daher muss jeder gemeinsame Zustand (wie der geöffnete Browser) in genau einem Server leben.
This server cannot be installed
Maintenance
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
- FlicenseAqualityCmaintenanceMCP server enabling LLMs to fetch Israeli weather forecasts by automating a browser with Playwright to scrape weather2day.co.il.4
- FlicenseAqualityCmaintenanceAn MCP server that uses Playwright to scrape Israeli weather forecasts from weather2day.co.il by automating a real browser, enabling an LLM to answer questions about current conditions and hourly forecasts for Israeli cities.5
- FlicenseNot gradedqualityCmaintenanceMCP server that lets users obtain current Israeli city weather forecasts. It uses Playwright to browse Weather2day, extract the forecast page, and feed the cleaned data back to the LLM for natural language responses.
- FlicenseAqualityCmaintenanceAn MCP server that provides real-time weather data for Israel by automating browser searches via Playwright. It allows LLMs to get current forecasts for Israeli cities through natural language queries.4
Related MCP Connectors
MCP server for AI dialogue using various LLM models via AceDataCloud
MCP server exposing the Backtest360 engine API as tools for AI agents.
Hosted MCP server to manage a restaurant menu from AI agents - 39 tools over the DuckHub API.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/Efrat-Fr/Weather-MCP'
If you have feedback or need assistance with the MCP directory API, please join our Discord server