The mcp-swiss server gives AI assistants direct access to 76 Swiss open data tools across 21 categories โ no API keys or registration required.
๐ Transport โ Search stations, get journey connections, view live departures/arrivals, find nearby stations.
๐ค๏ธ Weather & Hydrology โ Current/historical weather from ~160 MeteoSwiss stations; river/lake levels and temperatures from 400+ BAFU hydrological stations.
๐บ๏ธ Geodata (swisstopo) โ Geocode/reverse-geocode addresses, search place names, get rooftop solar potential, identify geographic layers, look up municipalities.
๐ข Companies (ZEFIX) โ Search 700K+ companies by name, canton, legal form, or address; get full details by ID.
๐ Holidays โ Public and school holidays by year and canton; check if today is a holiday.
๐๏ธ Parliament (OpenParlData.ch) โ Search federal/cantonal affairs (bills, motions, interpellations), list members, view votes, session schedules, speeches, declared interests, and committee meetings.
๐๏ธ Avalanche & โ๏ธ Snow (SLF) โ Current danger bulletins with warning regions; snow depth/new snow data and measurements from 307 stations.
๐จ Air Quality (NABEL) โ List monitoring stations, get air quality data and Swiss legal limits (LRV).
๐ฎ Swiss Post โ Look up postcodes by locality or canton, generate parcel tracking URLs.
โก Energy (ElCom) โ Get and compare electricity tariffs by municipality (2011โ2026).
๐ Statistics (BFS) โ Population data by canton/municipality; search BFS datasets on opendata.swiss.
๐ฆ SNB Exchange Rates โ Current and historical monthly CHF exchange rates for all available currencies.
โป๏ธ Recycling (OpenERZ) โ Waste collection dates and calendars for Zurich city by ZIP code.
๐ฐ Swiss News (SRF) โ Latest headlines by category (Switzerland/international/economy) or keyword search.
๐ณ๏ธ Voting โ Swiss popular vote results (Basel-Stadt, since 2021) with per-district breakdowns.
๐ Dams (SFOE/swisstopo) โ Search federal dam registry by name or canton; get full technical details.
๐ฅพ Hiking (swisstopo) โ Current trail closures and detours, searchable by GPS coordinates.
๐ Real Estate (BFS) โ Swiss Residential Property Price Index, Rent Index, and related datasets.
๐ Traffic (ASTRA) โ Traffic volumes at counting stations by location, canton, or GPS coordinates.
๐ Earthquakes (SED/ETH Zรผrich) โ Recent seismic events, full event details, and location-based searches with configurable radius and time range.
Install via npx mcp-swiss, Docker, or one-click bundles for Claude Desktop, Cursor, VS Code, and other MCP clients.
mcp-swiss
Swiss open data for AI โ zero config, zero API keys
๐ npm
๐ CI
๐ License
๐ MCP
๐ Downloads
๐ Stars
๐ Node
๐ .mcpb
๐ Claude Desktop
Install ยท Tools ยท Demo ยท Data Sources
mcp-swiss is a Model Context Protocol server that gives any AI assistant direct access to Swiss open data โ trains, weather, rivers, maps, and companies.
76 tools. No API keys. No registration. No server to run. Just npx mcp-swiss.
๐ Transport โ SBB, PostBus, trams, live departures, journey planning
๐ค๏ธ Weather โ MeteoSwiss live conditions + historical data
๐ Hydrology โ BAFU river & lake levels (great for Aare swimming!)
๐บ๏ธ Geodata โ swisstopo geocoding, solar potential, geographic layers
๐ข Companies โ ZEFIX federal registry, all 700K+ Swiss companies
๐ Holidays โ Swiss public & school holidays by canton
๐๏ธ Parliament โ Bills, votes, members, speeches, cantonal affairs (OpenParlData.ch)
๐๏ธ Avalanche โ SLF danger bulletins and warning regions
๐จ Air Quality โ NABEL stations, Swiss legal limits (LRV)
๐ฎ Swiss Post โ Postcode lookup and parcel tracking
โก Energy โ Electricity tariffs by municipality (ElCom)
๐ Statistics โ Population, demographics, BFS datasets
๐ฆ SNB Rates โ Swiss National Bank CHF exchange rates, historical data
โป๏ธ Recycling โ Zurich city waste collection calendar (OpenERZ)
๐ฐ Swiss News โ SRF news headlines and keyword search
๐ณ๏ธ Voting โ Swiss popular vote results (Basel-Stadt open data)
๐ Dams โ Swiss federal dam registry (SFOE/swisstopo)
๐ฅพ Hiking โ Swiss trail closures and hiking alerts (swisstopo)
๐ Real Estate โ Swiss property prices, rent index, housing data (BFS)
๐ Traffic โ ASTRA counting stations, daily volumes
๐ Earthquakes โ Swiss Seismological Service (SED/ETH Zรผrich), FDSN APIInstallation
Quick Start
npx mcp-swissThat's it. No API keys, no .env files, no accounts. Pick your client below and paste the config.
One-Click Install (.mcpb)
.mcpb bundles work with Claude Desktop and any MCP Bundle-compatible app.
๐ Install in Claude Desktop
Open the downloaded file โ your app handles the rest. No config editing, no terminal, no API keys.
Claude Desktop
Edit your config file:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"swiss": {
"command": "npx",
"args": ["-y", "mcp-swiss"]
}
}
}Restart Claude Desktop after saving.
Claude Code (CLI)
claude mcp add swiss -- npx -y mcp-swissThat's it โ Claude Code will use it in your next session.
Cursor
Requires Cursor 0.45.6+
Option A: Project config โ create .cursor/mcp.json in your project root:
{
"mcpServers": {
"swiss": {
"command": "npx",
"args": ["-y", "mcp-swiss"]
}
}
}Option B: Global config โ create ~/.cursor/mcp.json:
{
"mcpServers": {
"swiss": {
"command": "npx",
"args": ["-y", "mcp-swiss"]
}
}
}Option C: Via Cursor Settings UI
Open Cursor Settings
Go to Features โ MCP Servers
Click + Add new global MCP server
Paste the JSON config above
VS Code (GitHub Copilot)
One-click Install
CLI Install
# VS Code
code --add-mcp '{"name":"swiss","command":"npx","args":["-y","mcp-swiss"]}'
# VS Code Insiders
code-insiders --add-mcp '{"name":"swiss","command":"npx","args":["-y","mcp-swiss"]}'Manual Config
Add to your VS Code User Settings (JSON) โ press Ctrl+Shift+P โ Preferences: Open User Settings (JSON):
{
"mcp": {
"servers": {
"swiss": {
"command": "npx",
"args": ["-y", "mcp-swiss"]
}
}
}
}Or add to .vscode/mcp.json in your workspace (shareable with your team):
{
"servers": {
"swiss": {
"command": "npx",
"args": ["-y", "mcp-swiss"]
}
}
}Windsurf
Add to ~/.codeium/windsurf/model_config.json:
{
"mcpServers": {
"swiss": {
"command": "npx",
"args": ["-y", "mcp-swiss"]
}
}
}Cline (VS Code)
Open VS Code settings.json and add:
{
"cline.mcpServers": {
"swiss": {
"command": "npx",
"args": ["-y", "mcp-swiss"]
}
}
}Any MCP Client
mcp-swiss uses stdio transport and requires no environment variables. The universal config:
{
"command": "npx",
"args": ["-y", "mcp-swiss"]
}This works with any MCP-compatible client โ just plug it in.
Docker
docker pull vikramgorla/mcp-swissUse with any MCP client that supports Docker-based servers. The container uses stdio transport:
# Run directly (stdio)
docker run -i vikramgorla/mcp-swiss
# Use with Claude DesktopFor Claude Desktop, update your config to use Docker:
{
"mcpServers": {
"swiss": {
"command": "docker",
"args": ["run", "-i", "--rm", "vikramgorla/mcp-swiss"]
}
}
}Also available on GitHub Container Registry:
docker pull ghcr.io/vikramgorla/mcp-swissRelated MCP server: swiss-rail-mcp
Module Filtering
By default, mcp-swiss loads all 21 modules (76 tools). For better token efficiency, load only the modules you need:
Select specific modules
{
"mcpServers": {
"swiss": {
"command": "npx",
"args": ["-y", "mcp-swiss", "--modules", "transport,weather"]
}
}
}Use presets
{
"mcpServers": {
"swiss": {
"command": "npx",
"args": ["-y", "mcp-swiss", "--preset", "commuter"]
}
}
}Preset | Modules | Tools | Token Savings |
| transport, weather, holidays | 14 | 81% |
| weather, avalanche, hiking, earthquakes, dams, snow | 19 | 75% |
| companies, geodata, post, energy, statistics, snb | 24 | 67% |
| parliament, voting, holidays, news | 17 | 77% |
| transport | 5 | 93% |
| all 21 modules (default) | 76 | โ |
Combine preset + modules: --preset commuter --modules parliament
List available: npx mcp-swiss --list-modules or npx mcp-swiss --list-presets
Demo Prompts
Once connected, try asking your AI:
Prompt | What it uses |
"Next 5 trains from Zรผrich HB to Geneva" |
|
"Is the Aare in Bern warm enough to swim?" |
|
"Weather in Lugano vs Zรผrich today" |
|
"Find blockchain companies registered in Zug" |
|
"Solar potential of Bundesplatz 3, Bern" |
|
"Live departures from Bern HB" |
|
"What rivers are near Thun?" |
|
"Plan my Saturday: train to Interlaken, check weather" | Multiple tools chained |
"Is next Monday a holiday in Zรผrich?" |
|
"What did the Swiss parliament vote on recently?" |
|
"What's the avalanche danger level in the Bernese Alps?" |
|
"What's the postcode for Zermatt?" |
|
"Track my Swiss Post parcel 99.12.345678.12345678" |
|
"How much does electricity cost in Zรผrich vs Basel?" |
|
"What's the population of canton Zug?" |
|
Tools
76 tools across 21 modules. Full specifications:
docs/tool-specs.mdยท Machine-readable:docs/tools.schema.json
๐ Transport (5 tools)
Tool | Description |
| Find stations/stops by name or location |
| Journey planner between any two points |
| Live departures from a station |
| Live arrivals at a station |
| Stations near coordinates |
๐ค๏ธ Weather & Hydrology (6 tools)
Tool | Description |
| Current conditions at a MeteoSwiss station |
| All ~160 MeteoSwiss stations with metadata |
| Historical weather data (up to 32 days) |
| River/lake level + temperature (BAFU) |
| All 400+ hydrological monitoring stations |
| Historical hydrology data |
๐บ๏ธ Geodata / swisstopo (6 tools)
Tool | Description |
| Swiss address โ coordinates |
| Coordinates โ Swiss address |
| Swiss place names, mountains, lakes, features |
| Rooftop solar irradiation at a location |
| All geographic data layers at a point |
| Municipality info by name |
๐ข Companies / ZEFIX (5 tools)
Tool | Description |
| Search by name, canton, legal form |
| Full company details by ZEFIX |
| Companies registered at an address |
| All 26 Swiss cantons |
| AG, GmbH, and all Swiss legal forms |
๐ Holidays (3 tools)
Tool | Description |
| Swiss public holidays by year, optionally filtered by canton |
| School holiday periods by year and canton |
| Quick check if today is a public holiday |
๐๏ธ Parliament (9 tools) โ OpenParlData.ch
Tool | Description |
| Search federal political affairs (bills, motions, questions) |
| List parliament members by canton, party, or activity |
| Voting results for a specific affair |
| Upcoming/recent parliament sessions |
| Debate speeches for an affair |
| Declared interests and mandates of a member |
| Search across 26 cantonal parliaments |
| Official documents for an affair |
| Committee/commission meeting schedule |
๐๏ธ Avalanche (2 tools)
Tool | Description |
| Current avalanche bulletin with danger levels and PDF links |
| All 22 Swiss avalanche warning regions |
๐จ Air Quality (2 tools)
Tool | Description |
| All 14 NABEL monitoring stations |
| Station info, Swiss legal limits (LRV), and BAFU data links |
๐ฎ Swiss Post (4 tools)
Tool | Description |
| PLZ โ locality, canton, coordinates |
| City name โ matching postcodes |
| All postcodes in a canton |
| Generate Swiss Post tracking URL for a parcel |
โก Energy Prices (3 tools)
Tool | Description |
| Electricity tariff by municipality with component breakdown |
| Compare electricity prices across municipalities |
| Find municipality ID for tariff lookup |
๐ Statistics / BFS (3 tools)
Tool | Description |
| Population by canton or municipality from BFS STATPOP |
| Search BFS datasets on opendata.swiss |
| Fetch detailed dataset information |
๐ฆ SNB Exchange Rates (3 tools)
Tool | Description |
| List all currencies available from the Swiss National Bank (SNB) |
| Get the current CHF exchange rate for any currency |
| Get historical monthly CHF exchange rates with date filtering |
โป๏ธ Recycling / Waste Collection (3 tools)
Tool | Description |
| Next waste collection dates by Zurich ZIP code and waste type |
| List all supported waste types with descriptions |
| Full waste collection calendar for a ZIP code (upcoming dates) |
๐ฐ Swiss News (2 tools)
Tool | Description |
| Latest Swiss headlines from SRF by category (Switzerland/international/economy) |
| Search SRF news by keyword across all categories |
๐ณ๏ธ Voting (3 tools)
Tool | Description |
| Swiss popular vote results from Basel-Stadt open data |
| Search popular votes by keyword (German/French/Italian) |
| Detailed per-district breakdown of a specific vote |
๐ Dams & Reservoirs (3 tools)
Tool | Description |
| Search Swiss federal dams by name or keyword |
| List all federal dams in a canton |
| Detailed info on a specific dam (height, volume, purpose) |
๐ฅพ Hiking / Trail Closures (2 tools)
Tool | Description |
| Swiss trail closures and hiking alerts from swisstopo |
| Trail closures near given coordinates |
๐ Real Estate (3 tools)
Tool | Description |
| Swiss property price index (BFS Immo-Monitoring) |
| Search BFS real estate datasets on opendata.swiss |
| Swiss rent index and housing cost data from BFS |
๐ Traffic / ASTRA (3 tools)
Tool | Description |
| Traffic counting station data (ASTRA) โ daily volumes and heavy traffic share |
| List ASTRA traffic counting stations filtered by canton |
| Find traffic counting stations near given coordinates |
๐ Earthquakes / SED (3 tools)
Tool | Description |
| Recent seismic events in/around Switzerland from the Swiss Seismological Service (SED) at ETH Zรผrich |
| Full details for a specific seismic event by SED event ID |
| Earthquakes near given coordinates with configurable radius, time range, and limit |
โ๏ธ Snow Conditions / SLF (3 tools)
Tool | Description |
| Current snow depth and new snow (24h) across Switzerland from SLF IMIS stations, filterable by canton/altitude |
| All 307 SLF snow measurement stations (IMIS automatic + manual study plots) |
| Detailed snow and weather measurements for a specific SLF station |
Data Sources
All official Swiss open data โ no API keys required:
Source | Data | Docs |
SBB, PostBus, trams | ||
MeteoSwiss weather + BAFU hydrology | ||
swisstopo federal geodata | ||
Federal company registry | ||
Swiss public & school holidays | ||
Swiss Parliament data โ federal & cantonal (CC BY 4.0) | ||
SLF/WSL avalanche bulletins | ||
geo.admin.ch โ BAFU/NABEL | Swiss air quality monitoring stations | |
geo.admin.ch โ swisstopo | Swiss postcodes (Amtliches Ortschaftenverzeichnis) | |
ElCom electricity tariffs by municipality | ||
BFS population statistics (STATPOP) + datasets | ||
Swiss National Bank CHF exchange rates | ||
Zurich waste collection calendar (OpenERZ) | ||
SRF Swiss news headlines | ||
Basel-Stadt popular vote results | ||
geo.admin.ch โ SFOE | Swiss federal dam registry | |
geo.admin.ch โ swisstopo | Swiss trail closures and hiking alerts | |
BFS property prices + rent index | ||
geo.admin.ch โ ASTRA | Traffic counting stations + daily volumes | |
Swiss Seismological Service earthquakes (SED/ETH) | ||
SLF snow depth + measurements (IMIS + study plots, CC BY 4.0) |
Development
# Clone
git clone https://github.com/vikramgorla/mcp-swiss.git
cd mcp-swiss
# Install deps
npm install
# Build
npm run build
# Run in dev mode
npm run dev
# Test with MCP Inspector
npx @modelcontextprotocol/inspector node dist/index.jsTesting
npm testContributing
We welcome contributions! mcp-swiss follows a strict PR-based workflow to keep the codebase clean and CI always green.
Quick links
CONTRIBUTING.mdโ full contributor guide:Development setup (clone, install, build, test)
Branch model (develop / main / feature branches)
Hard workflow rules (no direct pushes, always PRs, regular merge only)
Adding a new module (step-by-step with code templates)
Integration checklist (all files to update)
Code standards (TypeScript, no
any, 50K response limit, zero API keys)
RELEASING.mdโ release process for maintainers:Step-by-step release workflow
Pre-release checklist
Version strategy (minor for features, patch for fixes)
Post-release verification
CI/CD workflow reference (
ci.yml,release.yml,beta.yml,mcp-registry.yml)
Requirements
Node.js 20+
No API keys or accounts needed
License
MIT โ see LICENSE
Maintenance
Latest Blog Posts
- 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/vikramgorla/mcp-swiss'
If you have feedback or need assistance with the MCP directory API, please join our Discord server
