meteoswiss-mcp
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| MCP_HOST | No | Bind address | 127.0.0.1 |
| MCP_PORT | No | Port for HTTP transport | 8000 |
| MCP_API_KEY | No | API key for authentication (requests need X-API-Key or Authorization: Bearer header) | |
| MCP_LOG_LEVEL | No | Log level: DEBUG, INFO, WARNING, ERROR | INFO |
| MCP_TRANSPORT | No | Transport mode: stdio or streamable-http | stdio |
| MCP_CACHE_ENABLED | No | Set to 0 to disable caching | 1 |
| OTEL_SERVICE_NAME | No | OpenTelemetry service name | meteoswiss_mcp |
| MCP_ALLOW_ANY_HOST | No | Set to 1 to allow binding to 0.0.0.0 (required for container/cloud) | |
| MCP_CACHE_TTL_STAC | No | TTL in seconds for STAC SMN observations cache | 300 |
| MCP_STATELESS_HTTP | No | Set to 1 to enable stateless mode (each request opens new session) | 0 |
| MCP_ALLOWED_ORIGINS | No | Comma-separated list of allowed CORS origins (empty = CORS disabled) | |
| MCP_WARNINGS_API_URL | No | URL of structured MeteoSwiss warnings API | |
| MCP_CACHE_TTL_OPENDATA | No | TTL in seconds for opendata.swiss catalog cache | 3600 |
| MCP_CACHE_TTL_WARNINGS | No | TTL in seconds for warnings API cache | 300 |
| MCP_CACHE_TTL_GEOCODING | No | TTL in seconds for geocoding lookups cache | 3600 |
| MCP_CACHE_TTL_OPEN_METEO | No | TTL in seconds for ICON forecasts cache | 600 |
| MCP_CLIMATE_NORMALS_PATH | No | Path to JSON file with additional climate normals | |
| OTEL_EXPORTER_OTLP_ENDPOINT | No | OpenTelemetry OTLP HTTP endpoint | |
| MCP_CLIMATE_NORMALS_URL_TEMPLATE | No | URL template for runtime lookup of climate normals |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| meteo_stationsA | Schul-Tipp: Station REH (Zürich/Affoltern) ist die nächste SMN-Station zum Schulhaus Leutschenbach. Args: params (StationsInput): - canton: Kantonskürzel (z.B. 'ZH') – leer = alle - response_format: 'markdown' oder 'json' Returns: str: Stationsliste mit Kürzel, Name, Kanton, Koordinaten und Höhe. |
| meteo_currentA | Args: params (CurrentInput): - station: SMN-Kürzel, z.B. 'KLO', 'SMA', 'REH', 'BER' - response_format: 'markdown' oder 'json' Returns: str: Aktuelle Messwerte mit Zeitstempel, oder Fallback mit Direktlinks. |
| meteo_forecastA | Args: params (ForecastInput): - location: Ortsname (geokodiert) ODER lat/lon direkt - days: Prognosetage (1–16, Standard: 7) - hourly: True für Stundenwerte - response_format: 'markdown' oder 'json' Returns: str: Tages- (und optional Stunden-)Prognose mit Wettercode und Planung. |
| meteo_school_checkA | Args: params (SchoolCheckInput): - location: Ort (geokodiert), z.B. 'Zürich Oerlikon' - date: Optional – spezifischer Tag (YYYY-MM-DD) - activity: Art der Aktivität ('Sporttag', 'Schulreise', etc.) Returns: str: Ampel-Bewertung für die nächsten 7 Tage (oder Einzeltag). |
| meteo_climate_normalsA | Args: params (ClimateNormalsInput): - station: SMN-Kürzel (z.B. 'KLO', 'SMA', 'BER') - response_format: 'markdown' oder 'json' Returns: str: Monatliche Klimanormwerte-Tabelle 1991–2020. |
| meteo_warningsA | Args: params (WarningsInput): - canton: Kantonskürzel zum Filtern (z.B. 'ZH') - plz: 4-stellige PLZ für ortsgenaue Warnungen (z.B. '8001') - language: 'de' | 'fr' | 'it' | 'en' (Sprache der Warntexte) - response_format: 'markdown' oder 'json' Returns: str: Aktive Warnungen + Warnkarte/MeteoAlarm-Links. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
| get_stations_resource | Vollständige eingebettete SMN-Stationsliste als JSON-Ressource. |
| get_school_thresholds_resource | Schwellenwerte für die Schuleignungs-Ampel (meteo_school_check). |
| get_wmo_codes_resource | WMO-Wettercodes mit deutschen Beschreibungen. |
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/malkreide/meteoswiss-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server