Skip to main content
Glama
Schimmilab

wetter-mcp-server

by Schimmilab

wetter-mcp-server

MCP-Server für Wetterprognosen über Open-Meteo — kein API-Key nötig.

Tools

  • get_current_weather(location?) — aktuelles Wetter

  • get_hourly_forecast(location?, hours=24) — stündlich (1–48 h)

  • get_daily_forecast(location?, days=7) — täglich (1–16 Tage)

Ohne location gilt der Standard-Ort (Steinenbronn). location kann ein beliebiger Ortsname sein (z.B. "Bozen", "Stockholm") und wird per Geocoding aufgelöst. Temperaturen in °C, Niederschlag in mm, Wind in km/h, Zeiten in Ortszeit.

Related MCP server: MCP Weather Server

Standard-Ort ändern

Optional über Umgebungsvariablen DEFAULT_LAT, DEFAULT_LON, DEFAULT_ORT — z.B. bei der Registrierung mit claude mcp add … -e DEFAULT_LAT=…. Die .env-Datei wird nicht automatisch geladen; .env.example listet nur die Variablennamen. Ohne diese Variablen nutzt der Server Steinenbronn (Ortsmitte, in server.py hinterlegt) — der Server läuft also ohne jede Konfiguration.

Entwicklung

uv sync
uv run pytest

Start

uv run wetter-mcp

Maintainer

Schimmi — https://schimmilab.de Issues und Pull Requests willkommen.

Available Tools

3 tools
get_current_weatherB

Aktuelles Wetter: Temperatur, gefühlte Temperatur, Luftfeuchte, Wind, Bewölkung, aktueller Niederschlag. Ohne location = Zuhause (Steinenbronn).

ParametersJSON Schema
NameRequiredDescriptionDefault
locationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

B3.4/5.0
Behavior2/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description must carry the full burden. It lists returned fields but does not disclose data source, freshness, update frequency, or any limitations. Lacks depth for a tool with zero annotations.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two short sentences in German, no wasted words. Information is front-loaded and efficient. Perfectly concise for the content.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With only one optional parameter and an output schema, the description covers the essential aspects. It lists returned fields, which is sufficient. Sibling differentiation could be stronger, but overall complete for a simple tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, so description must compensate. It adds meaning about default behavior ('Ohne location = Zuhause (Steinenbronn)'), but does not specify valid location formats or provide examples. Adequate but not rich.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states what data is returned (temperature, humidity, etc.) and the resource (current weather). The verb is implied but clear. It differentiates from siblings by being about current conditions, though not explicitly.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides guidance on default location when none given, but lacks explicit when-to-use or when-not-to-use compared to sibling tools. Implied usage is present but not fully articulated.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_daily_forecastA

Tagesvorhersage: Min/Max-Temperatur, Regensumme + Wahrscheinlichkeit, Sonnenstunden, Wetterlage. days 1–16 (Standard 7). Ohne location = Zuhause.

Für Reisewetter je Roadtrip-Station die location auf den jeweiligen Ort setzen.

ParametersJSON Schema
NameRequiredDescriptionDefault
daysNo
locationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations provided, the description carries the full burden. It discloses the output fields and parameter range (days 1-16) and default location behavior. However, it does not mention data source, update frequency, error conditions, or other behavioral traits.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: two sentences contain all key information without extraneous words. It efficiently conveys purpose, output details, parameter range, default behavior, and a specific use case.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's simplicity (2 optional params, typical forecast) and the presence of an output schema (reducing need to describe returns), the description covers essential aspects: output metrics, parameter defaults, and a usage scenario. Minor omission: no mention of concurrent location handling or error cases.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

The input schema has 0% description coverage for parameters. The description adds meaning by specifying the allowed range for 'days' (1-16, default 7) and clarifying that 'location' defaults to 'home' and is used for travel weather. This provides context beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it provides a daily forecast with specific metrics (min/max temperature, rain sum plus probability, sunshine hours, weather condition). It distinguishes itself from siblings (get_current_weather, get_hourly_forecast) by focusing on daily aggregates over a range of days.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description gives a clear use case ('For travel weather, set location for each road trip stop') and explains default behavior (no location = home). However, it does not explicitly state when not to use this tool compared to siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

get_hourly_forecastA

Stündliche Vorhersage: Temperatur, Regen (mm + Wahrscheinlichkeit), Wind, Wetterlage. hours 1–48 (Standard 24). Ohne location = Zuhause.

Für 'kann ich die Fenster nachts offen lassen?' die Nachtstunden auf Niederschlag und Minimaltemperatur prüfen.

ParametersJSON Schema
NameRequiredDescriptionDefault
hoursNo
locationNo

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A4.2/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations exist, so the description carries full burden. It discloses the hours range (1-48, default 24) and default location behavior (null becomes home). However, it does not mention any restrictions, error handling, or that it's a read operation, leaving gaps in understanding.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is extremely concise: two sentences front-load the core purpose and parameters, with an additional line for a practical example. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a simple tool with an output schema, the description covers the essential aspects: returned fields, hour range, and default location. It is complete enough for an agent to use correctly, though missing output structure details (array vs object) are mitigated by the output schema.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

With 0% schema description coverage, the description compensates by explaining the hours parameter's range and default, and the location parameter's default behavior (null = home). It adds value beyond the schema but could be more precise about location format.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description clearly states it provides an hourly forecast with specific fields (temperature, rain in mm and probability, wind, weather condition). It explicitly differentiates from sibling tools by specifying 'stündlich' (hourly) and gives a concrete use case example for checking night conditions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description implies when to use this tool (hourly needs) versus siblings by contrasting with daily and current. It provides a clear example (checking windows at night) but lacks explicit exclusions or direct comparison to siblings.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updatesv0.1.0
    • First observedget_current_weather
    • First observedget_daily_forecast
    • First observedget_hourly_forecast

TDQS

A4/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: current conditions, daily forecast, and hourly forecast. There's no overlap or ambiguity between them.

Naming Consistency5/5

All tools follow the same get_*_forecast pattern (with get_current_weather as the one slight variation, but still consistent verb_noun structure). Naming is clear and predictable.

Tool Count5/5

Three tools is an appropriate scope for a weather server, covering current, daily, and hourly data without unnecessary overlap.

Completeness4/5

The set covers the most common weather queries (current, daily, hourly). Missing advanced features like alerts or historical data, but the core is well-covered for typical use.

Maintenance

ActivitySlowing
ResponsivenessUnresponsive

Related MCP Connectors

Related MCP Servers