Skip to main content
Glama
akdrione

Weather MCP Server

by akdrione

Wetter-MCP-Server

Ein Model Context Protocol (MCP)-Server für Wetterdaten mit OpenAPI-Unterstützung. Dieser Server stellt Wetterinformationen von der OpenWeatherMap-API bereit und kann von LLM-Agenten über MCP genutzt werden.

Funktionen

  • MCP-stdio-Transport für die Integration von LLM-Agenten

  • HTTP-REST-API mit OpenAPI 3.0-Spezifikation

  • 4 Wetter-Tools:

    1. Aktuelles Wetter nach Stadt abrufen

    2. Aktuelles Wetter nach Koordinaten abrufen

    3. Wettervorhersage abrufen (5 Tage, 3-Stunden-Intervalle)

    4. Zusammenfassung des Temperaturbereichs abrufen

  • Unterstützung für Mock-Daten zum Testen ohne API-Schlüssel

  • TypeScript-Implementierung mit vollständiger Typsicherheit

Related MCP server: mcp-openweather

Installation

cd weather-mcp-server
npm install
npm run build

Verwendung

1. MCP-Server (stdio-Transport)

Starten Sie den MCP-Server für LLM-Agenten:

npm start

Oder im Entwicklungsmodus:

npm run dev

2. HTTP-Server mit OpenAPI

Starten Sie den HTTP-Server mit REST-API:

npm run dev:http

Der Server startet unter http://localhost:3000 mit:

  • /health - Health-Check-Endpunkt

  • /openapi - OpenAPI-Spezifikation

  • /api/v1/weather/current/{city} - Aktuelles Wetter nach Stadt

  • /api/v1/weather/current/coordinates - Aktuelles Wetter nach Koordinaten

  • /api/v1/weather/forecast/{city} - Wettervorhersage

3. Konfiguration

Legen Sie Ihren OpenWeatherMap-API-Schlüssel fest (optional – falls nicht angegeben, werden Mock-Daten verwendet):

export OPENWEATHER_API_KEY=your_api_key_here

Oder erstellen Sie eine .env-Datei:

OPENWEATHER_API_KEY=your_api_key_here

MCP-Tools

Der Server stellt die folgenden MCP-Tools bereit:

Tool-Name

Beschreibung

Parameter

weather_get_current_by_city

Aktuelles Wetter nach Stadt abrufen

city: string

weather_get_current_by_coords

Aktuelles Wetter nach Koordinaten abrufen

latitude: number, longitude: number

weather_get_forecast

Wettervorhersage abrufen

city: string, days?: number (1-10, Standard: 5)

weather_get_temperature_range

Zusammenfassung des Temperaturbereichs abrufen

city: string

API-Endpunkte

HTTP-REST-API

Alle Endpunkte geben JSON mit der folgenden Struktur zurück:

{
  "success": true,
  "data": { ... }
}

1. Aktuelles Wetter nach Stadt

GET /api/v1/weather/current/{city}

Beispiel:

curl http://localhost:3000/api/v1/weather/current/London

2. Aktuelles Wetter nach Koordinaten

GET /api/v1/weather/current/coordinates?lat={latitude}&lon={longitude}

Beispiel:

curl "http://localhost:3000/api/v1/weather/current/coordinates?lat=51.5074&lon=-0.1276"

3. Wettervorhersage

GET /api/v1/weather/forecast/{city}?days={days}

Beispiel:

curl "http://localhost:3000/api/v1/weather/forecast/New%20York?days=3"

Testen

Führen Sie die Test-Suite aus:

npm test

Starten Sie den MCP-Inspektor zum Debuggen:

npm run inspect

Projektstruktur

weather-mcp-server/
├── src/
│   ├── index.ts              # MCP stdio server
│   ├── http-server.ts        # HTTP server with OpenAPI
│   ├── types/
│   │   └── weather.ts        # TypeScript types and Zod schemas
│   ├── utils/
│   │   └── weather-client.ts # OpenWeatherMap API client
│   └── tools/
│       └── weather-tools.ts  # MCP tool definitions
├── dist/                     # Compiled JavaScript
├── test/
│   └── test.js              # Test suite
├── package.json
├── tsconfig.json
└── README.md

Abhängigkeiten

  • @modelcontextprotocol/sdk - MCP-SDK für TypeScript

  • express - HTTP-Server-Framework

  • axios - HTTP-Client für API-Aufrufe

  • zod - Schema-Validierung

  • typescript - TypeScript-Compiler

Lizenz

MIT

Related MCP Connectors

Related MCP Servers

  • F
    license
    B
    quality
    D
    maintenance
    Enables AI agents to retrieve real-time weather conditions and forecasts via OpenWeatherMap API. Supports interactive weather queries and travel planning through MCP tools, resources, and prompts.
    2
    -
  • A
    license
    Not graded
    quality
    C
    maintenance
    Wraps the OpenWeatherMap API to provide weather data through MCP, enabling AI agents to query current conditions, forecasts, and other weather information via natural language.
    5 npm
    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.
    5 npm
    MIT
  • F
    license
    B
    quality
    D
    maintenance
    Provides real-time weather information for cities worldwide using the OpenWeatherMap API, accessible through natural language queries via the MCP protocol.
    1
    -