Skip to main content
AllMCPs
BrowseBestCategoriesStackCompareToolsGuidesBlog
Log in Submit MCP

Stay in the loop

Get new MCP servers and top picks in your inbox.

AllMCPs

The open directory for discovering and installing Model Context Protocol servers.

AllMCPs on GitHub (opens in a new tab)
Launched onTiny Startupstinystartups.com
Explore
  • Browse servers
  • Best MCP servers
  • Categories
  • MCP clients
  • Agent prompts
  • Stack Builder
  • Compare servers
  • Random discovery New
  • Submit a server
  • Pricing & Boost Boost
Learn
  • Guides hub
  • What is MCP?
  • Install guide
  • Build an MCP server
  • Deploy an MCP server
  • Security guide
  • Troubleshooting
  • MCP for SEO & AEO
  • Protocol versioning
  • Blog & updates
Tools
  • All developer tools
  • Config generator
  • Config validator
  • Config auditor
  • MCP playground
  • Token calculator
  • OpenAPI β†’ MCP
  • Badge generator
For agents
  • REST API docs
  • Trust & traffic Live
  • Remote MCP server SSE β†— (opens in a new tab)
  • llms.txt β†— (opens in a new tab)
  • Catalog JSON β†— (opens in a new tab)
Company
  • About
  • Advertise Sponsor
  • Contact
  • GitHub β†— (opens in a new tab)
  • Terms
  • Privacy
AllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZoneAllMCPs VerifiedAllMCPs VerifiedFeatured on Nick LaunchesFeatured on Nick LaunchesLaunch Llama NewsletterLaunch Llama NewsletterVerified DR - allmcps.comVerified DR - allmcps.comFeatured on SaaSGrowFeatured on SaaSGrowFeatured on Twelve ToolsFeatured on Twelve ToolsFeatured on Saaspa.geFeatured on Saaspa.geFeatured on Findly.toolsFeatured on Findly.toolsFeatured on Startup FameFeatured on Startup FameFeatured on LaunchKiwiFeatured on LaunchKiwiFeatured on ScrollLaunchFeatured on ScrollLaunchFeatured on DailyPingsFeatured on DailyPingsFazier badgeFazier badgeFeatured on NewTool.siteFeatured on NewTool.siteFeatured on saasfame.comFeatured on saasfame.comDR Checker - Domain RatingDR Checker - Domain RatingListed on Turbo0Listed on Turbo0Launched on LaunchBoard - Product Launch PlatformLaunched on LaunchBoard - Product Launch PlatformList on SimilarlabsList on Similarlabshttps://codetrendy.comhttps://codetrendy.comListed on DevTool.ioFeatured on BuildlistFeatured on BuildlistLaunched on Tiny StartupsFeatured on ShowMeBestAIFeatured on ShowMeBestAIFind us on LaunchZoneFind us on LaunchZone
Β© 2026 Jackalope Digital LLC. All rights reserved.
  1. Home
  2. πŸ’» Developer Tools
  3. Meteoswiss MCP
Meteoswiss MCP logo
Health: ActiveRecent health check succeeded.Last checked 9/7/2026, 9:23:39 PM

Meteoswiss MCP

User RatingsBe the first to rate and review this MCP server! Enrichment pendingWe haven’t run our AI enrichment pass on this listing yet, so the overview, use cases, and FAQ below may be sparse or missing. We work through the catalog over time β€” check back soon.
View RepositoryVisit Website

MeteoSwiss Open Data for weather, climate normals, warnings

Quick Install

Automated & IDE Setup

Copy the AI prompt to install this server into Claude Code, Cursor, or another agent β€” or use 1-click editor setup below.

Add to CursorAdd to VS Code
Not yet automatically verified

We haven't yet run this listing's install command through our automated sandbox check. This isn't a red flag β€” we're steadily working through the catalog.

Manual Client & Custom JSON ConfigExpand JSON β–Ύ

Client Config & Setup

Choose your client or environment
Target File:~/Library/Application Support/Claude/claude_desktop_config.json
claude_desktop_config.json
{
  "mcpServers": {
    "meteoswiss-mcp": {
      "command": "npx",
      "args": [
        "-y",
        "@modelcontextprotocol/inspector"
      ]
    }
  }
}

πŸ’‘ Paste the JSON block into your client's configuration file under mcpServers, then restart the application.

Install Directory Badge Claim listing AlternativesπŸ’» More in Developer Tools

Documentation Overview

🌦️ meteoswiss-mcp

CI PyPI Python License: MIT swiss-public-data-mcp

MCP server for Swiss weather and climate data from MeteoSwiss.

Connects AI models to the SwissMetNet measurement network (160+ stations, 10-minute interval), MeteoSwiss ICON-CH1/CH2-EPS forecasts and climate normals 1991–2020. Part of the swiss-public-data-mcp portfolio.

πŸ‡©πŸ‡ͺ Deutsche Version


Demo query (anchor example)

Demo: Claude asks about sports-day suitability β†’ meteo_school_check tool call β†’ structured weather traffic-light response
Code
How suitable is next Wednesday for the sports day at Leutschenbach school?

β†’ meteo_school_check(location="ZΓΌrich Oerlikon", activity="Sporttag") returns a 🟒/🟑/πŸ”΄ traffic light for each day of the coming week β€” straight from the MeteoSwiss ICON model.

Combined with swiss-environment-mcp:

Code
How were air quality and weather at Leutschenbach school yesterday?

β†’ meteo_current(station='REH') + env_nabel_current(station='ZUE') = a complete environmental picture. β†’ More use cases by audience β†’


Tools (6)

ToolDescriptionData source
meteo_stationsList SwissMetNet stations (filterable by canton)Embedded
meteo_currentCurrent 10-min observations for a stationBGDI STAC API
meteo_forecast1–16 day forecast for a place or coordinatesOpen-Meteo / MeteoSwiss ICON
meteo_school_check🟒/🟑/πŸ”΄ traffic light for outdoor school eventsOpen-Meteo / MeteoSwiss ICON
meteo_climate_normalsMonthly climate normals 1991–2020Embedded (KLO, SMA, BER, LUG, GVE)
meteo_warningsActive official weather warnings (storm, thunderstorm, heat, forest fire, …) β€” nationwide, by canton, or by PLZMeteoSwiss App-API + opendata.swiss

Tool annotations (MCP hints)

All tools carry explicit MCP annotations β€” relevant for the client approval UI and for the LLM's safety decisions.

ToolreadOnlyHintdestructiveHintidempotentHintopenWorldHint
meteo_stationsβœ…βœ—βœ…βœ— (curated list)
meteo_currentβœ…βœ—βœ— (live data)βœ… (upstream STAC)
meteo_forecastβœ…βœ—βœ— (live data)βœ… (upstream Open-Meteo)
meteo_school_checkβœ…βœ—βœ— (live data)βœ… (geocoding + forecast)
meteo_climate_normalsβœ…βœ—βœ…βœ— (embedded normals)
meteo_warningsβœ…βœ—βœ— (live data)βœ… (MeteoSwiss App-API)

Read rules: all 6 tools are readOnly + non-destructive β€” the server fundamentally cannot write or delete anything. idempotentHint=False marks tools that return different values depending on when they are called.

MCP protocol version

AspectValue
Tested spec versions2024-11-05, 2025-03-26, 2025-06-18 (via the mcp[cli] SDK)
MCP SDK versionsee pyproject.toml β†’ mcp[cli]>=2.0.0,<3 (the MCPServer API from mcp.server.mcpserver)
Update policyDependabot watches mcp[cli]; spec bumps are documented in the CHANGELOG with a "Tool Definition Changes" marker

β†’ Full roadmap & update strategy: docs/roadmap.md


Quick start

Claude Desktop

config.json
{
  "mcpServers": {
    "meteoswiss": {
      "command": "uvx",
      "args": ["meteoswiss-mcp"]
    }
  }
}

Claude Desktop (local development)

config.json
{
  "mcpServers": {
    "meteoswiss": {
      "command": "uv",
      "args": ["run", "--directory", "/path/to/meteoswiss-mcp", "meteoswiss-mcp"]
    }
  }
}

Cloud / Render.com (Streamable HTTP)

Configuration via ENV variables (the CLI flags --http / --port N still work as an override):

VariableDefaultMeaning
MCP_TRANSPORTstdiostdio or streamable-http
MCP_HOST127.0.0.1Bind address β€” never change locally
MCP_PORT8000Port
MCP_ALLOW_ANY_HOSTunsetMust be set to 1 to allow the server to bind to 0.0.0.0 (containers/cloud only)
MCP_LOG_LEVELINFODEBUG / INFO / WARNING / ERROR β€” structured JSON logs on stderr
MCP_ALLOWED_ORIGINSunsetComma-separated list of allowed origins for CORS. Empty = CORS disabled (same-origin only). Mcp-Session-Id is exposed automatically.
MCP_API_KEYunsetIf set: every request except /health requires X-API-Key: <key> or Authorization: Bearer <key>. Constant-time comparison.
MCP_STATELESS_HTTP01 enables the SDK's stateless mode β†’ each HTTP request opens a new session. Prerequisite for multi-replica deploys without sticky sessions (SCALE-002/003).
OTEL_EXPORTER_OTLP_ENDPOINTunsetIf set + pip install meteoswiss-mcp[otel]: OpenTelemetry spans per tool call + automatic httpx instrumentation are sent as OTLP-HTTP to the collector.
OTEL_SERVICE_NAMEmeteoswiss_mcpService name in the OTel resources
MCP_CACHE_ENABLED10 disables the TTL cache entirely (e.g. for end-to-end tests)
MCP_CACHE_TTL_STAC300TTL in seconds for STAC SMN observations (default 5 min)
MCP_CACHE_TTL_OPEN_METEO600TTL for ICON forecasts (default 10 min)
MCP_CACHE_TTL_GEOCODING3600TTL for geocoding lookups (default 1 h)
MCP_CACHE_TTL_OPENDATA3600TTL for the opendata.swiss catalogue (default 1 h)
MCP_CACHE_TTL_WARNINGS300TTL for warnings (MeteoSwiss App-API / structured override; default 5 min)
MCP_CLIMATE_NORMALS_PATHunsetPath to a JSON file with additional climate normals β€” see data/climate-normals.example.json
MCP_WARNINGS_API_URLunsetOverride for the default MeteoSwiss App-API source: URL of a structured MeteoSwiss warnings API (e.g. the future OGD warnings REST endpoint). The host must be on the egress allow-list. Schema-tolerant (GeoJSON features, a warnings array or items). Unset β†’ live App-API.
MCP_CLIMATE_NORMALS_URL_TEMPLATEunsetURL template for runtime lookup of climate normals (for stations without embedded or JSON values). Tokens: {station} (lowercase), {STATION} (uppercase), {param} (MeteoSwiss code tre200m0/rre150m0/sre000m0). Example: https://data.geo.admin.ch/.../{station}/{param}.txt. The host must be on the egress allow-list.
bash
# Local test (safe, loopback only)
MCP_TRANSPORT=streamable-http meteoswiss-mcp

# Container / Render
MCP_TRANSPORT=streamable-http MCP_HOST=0.0.0.0 MCP_ALLOW_ANY_HOST=1 meteoswiss-mcp

Docker / Render

The repo includes a production-ready multi-stage Dockerfile (non-root user, HEALTHCHECK) and a render.yaml blueprint:

bash
# Build + test locally
docker build -t meteoswiss-mcp .
docker run --rm -p 8000:8000 meteoswiss-mcp
curl http://127.0.0.1:8000/health   # β†’ {"status":"ok","service":"meteoswiss-mcp"}

On Render: "New β†’ Blueprint" β†’ select the repo. Defaults (plan starter, Frankfurt, single instance) are set in render.yaml.

Important: numInstances: 1 is set deliberately β€” sticky-session routing for multi-replica (audit SCALE-002/003) is not yet implemented.

Structured logging

All tool invocations, upstream failures and egress blocks are emitted as JSON events on stderr (stdio-transport safe). Example:

config.json
{"tool": "meteo_forecast", "days": 7, "has_coords": false, "event": "tool_invoked", "level": "info", "timestamp": "2026-05-20T07:00:00Z"}
{"tool": "meteo_forecast", "endpoint": "geocoding", "error_type": "HTTPStatusError", "event": "upstream_failed", "level": "warning", "timestamp": "..."}
{"url": "https://evil.example.com/", "method": "GET", "reason": "host not in allow-list", "event": "egress_blocked", "level": "warning", "timestamp": "..."}

HTTP-mode security

  • MCP_HOST deliberately defaults to 127.0.0.1 so that --http on a dev laptop is not accidentally exposed to the local subnet (audit finding SEC-016).
  • All outgoing HTTP calls (including redirect follows) are validated against an allow-list: data.geo.admin.ch, api.open-meteo.com, geocoding-api.open-meteo.com, opendata.swiss. Other hosts and IP literals (in particular 169.254.169.254, RFC1918) are rejected with EgressBlocked (SEC-004 / SEC-021).
  • CORS: disabled by default (same-origin only). Browser clients (e.g. claude.ai web) need MCP_ALLOWED_ORIGINS=<csv> β€” the Mcp-Session-Id header is then automatically in Access-Control-Expose-Headers (SDK-004).
  • API-key auth: disabled by default. In a production HTTP setup, always set MCP_API_KEY=<random> β€” requests without a valid X-API-Key or Authorization: Bearer … are rejected with 401 (SEC-009 / SEC-013). /health stays open for container health probes.

Example: production HTTP stack

server.ts
# 32 bytes of randomness as the auth key
export MCP_API_KEY=$(python -c "import secrets; print(secrets.token_urlsafe(32))")

MCP_TRANSPORT=streamable-http \
MCP_HOST=0.0.0.0 \
MCP_ALLOW_ANY_HOST=1 \
MCP_ALLOWED_ORIGINS=https://app.example.com \
MCP_API_KEY="$MCP_API_KEY" \
meteoswiss-mcp

Example queries

School planning

Read the full README β†’View source on GitHub β†’

Related MCP Servers

View all in Developer Tools View all alternatives
  • Cwa MCP Server logoCwa MCP Server

    MCP server for Taiwan CWA open data: weather forecast, earthquake, warnings, typhoon.

    πŸ’» Developer Tools0 views
    Compare vs Cwa MCP Server β†’
  • AccuWeather MCP logoAccuWeather MCP

    MCP server providing weather tools with data sourced from AccuWeather.

    πŸ’» Developer Tools1 views
    Compare vs AccuWeather MCP β†’
  • W
    Worldbank MCP

    World Bank Open Data MCP Server

    πŸ’» Developer Tools0 views
    Compare vs Worldbank MCP β†’
  • Foehn logoFoehn

    Access Swiss meteorological open data from MeteoSwiss, powered by foehn

    πŸ’» Developer Tools0 views
    Compare vs Foehn β†’

Reviews

No reviews yet β€” be the first to share how this listing worked for you.

Frequently Asked Questions about Meteoswiss MCP

Add the following block to your claude_desktop_config.json under mcpServers: "mcpServers": { "meteoswiss-mcp": { "command": "npx", "args": ["-y", "meteoswiss-mcp"] } }

AllMCPs Directory Badge

Full Badge Customizer

Showcase your server listing on GitHub or your project documentation. Embed this dynamic SVG badge to highlight official listing status and live engagement.

Badge Style:
Live Dynamic SVG PreviewMeteoswiss MCP AllMCPs Directory Badge
Markdown (GitHub README)
[![AllMCPs](https://allmcps.com/api/badge/meteoswiss-mcp?style=directory)](https://allmcps.com/mcp/meteoswiss-mcp)
HTML Embed
<a href="https://allmcps.com/mcp/meteoswiss-mcp"><img src="https://allmcps.com/api/badge/meteoswiss-mcp?style=directory" alt="Meteoswiss MCP on AllMCPs" /></a>

Technical Specs & Signals

CategoryπŸ’»Developer Tools
More technical detailsExpand β–Ύ
TransportSTDIO
RuntimeNode.js
Last updatedSep 7, 2026
Views0
Unique ViewsTotal visits recorded for this listing page on AllMCPs.
Installs0
Installs & Copy ActionsTotal times users copied install commands or configuration snippets for this server.
GitHub stars0
GitHub Star CountTotal stargazers on GitHub representing community popularity (0 stars).
35Quality signal: Fair Β· 35/100How this signal is calculated β–Ύ
Server availabilityNot measured

Not scored for repo-hosted servers β€” we can't reach the running server, only its GitHub page. Hosted MCP endpoints are health-checked live.

Verified ownership10/20
Documentation & tools15/30
Adoption & activity1/15
Community engagement0/10

A guidance signal from public completeness & health data β€” not a user rating. New listings start lower and rise as they add docs, get verified, and grow adoption. Signals we can't observe for a listing are skipped, not counted against it.

β˜… FeaturedMoxie Docs MCP logo

Moxie Docs MCP

MCP & Agent Skills for Automated Documentation, and codebase conventions + context

Explore Server β†’

Own this project?

This directory is pre-filled from public sources. Claim via GitHub README, site badge, or DNS TXT to unlock edit access and the Official badge β€” proof is checked automatically, then reviewed by our team.

Free dofollow backlink: add your website and place the AllMCPs badge on it β€” no claim needed. We detect it automatically and keep it verified as long as the badge stays live.

Claim & get free dofollow

Share & Embed

Add our SVG badge (dark/light directory styles) or embeddable widget to your site.

Explore more

More in πŸ’» Developer Tools β†’Best MCP servers for Developers β†’Alternatives to Meteoswiss MCP β†’Install in Claude DesktopInstall in CursorInstall in VS Code