# zurich-opendata-mcp

Wires Zurich's open data into an AI assistant: weather, air quality, parking, geodata, parliament and tourism. Useful when you want live city data inside the chat.

- MCP server · `type=mcp` · Claude Code, Codex, Cursor, GitHub Copilot, Windsurf (Devin Desktop), Cline, Zed, Gemini CLI · ★ 8
- Author: malkreide
- License: MIT · policy=link-only · description only; the file stays with the author
- Source: https://github.com/malkreide/zurich-opendata-mcp
- Updated: 2026-10-15
- HTML: https://affpapa.org/en/nevibecode/mcp/zurich-opendata-mcp

## What it does

The server reaches 900+ datasets on `data.stadt-zuerich.ch` through CKAN — full-text search, metadata, tabular queries and SQL. Live feeds sit alongside: weather from 4 UGZ stations, air quality with WHO thresholds, Lake Zurich readings every 10 minutes, pedestrian counts on Bahnhofstrasse, and occupancy for 36 parking garages. Geodata comes back as GeoJSON across 14 layers, parliamentary material is searched via the Paris API, and tourism entries follow Schema.org in 4 languages.

There are 23 tools, 5 resources and 6 APIs in total. The `zurich_sparql` tool stays unregistered by default because the endpoint is not productive yet; turn it on with the environment variable `ZURICH_OPENDATA_ENABLE_SPARQL=1`. Three older tool names survive as deprecated aliases until the next major release.

Python 3.11+ and `mcp[cli]` 2.x are required — the server runs on the 2.x API and will not start on `mcp` 1.x. Take 0.6.0 or newer: 0.5.1 had no upper bound on the dependency, so once `mcp` 2.0.0 shipped, installs broke with `ModuleNotFoundError`. No working setup of 0.5.1 is left.

## Requirements
- Needs: Python and uv (commands run via uvx)

## Install

### Claude Code (native platform)

**Platform CLI**
```bash
claude mcp add zurich-opendata-mcp -- uvx zurich-opendata-mcp
```
uvx runs the command named after the package; if the README names another one, use uvx --from zurich-opendata-mcp <command>

### Codex

**Platform CLI**
```bash
codex mcp add zurich-opendata-mcp -- uvx zurich-opendata-mcp
```
uvx runs the command named after the package; if the README names another one, use uvx --from zurich-opendata-mcp <command>

### Cursor

**Config file**
File `.cursor/mcp.json`:
```json
{
    "mcpServers": {
        "zurich-opendata-mcp": {
            "command": "uvx",
            "args": [
                "zurich-opendata-mcp"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from zurich-opendata-mcp <command>

### GitHub Copilot

**Config file**
File `.vscode/mcp.json`:
```json
{
    "servers": {
        "zurich-opendata-mcp": {
            "type": "stdio",
            "command": "uvx",
            "args": [
                "zurich-opendata-mcp"
            ]
        }
    }
}
```
uvx runs the command named after the package; if the README names another one, use uvx --from zurich-opendata-mcp <command>

### Gemini CLI

**Platform CLI**
```bash
gemini mcp add zurich-opendata-mcp uvx zurich-opendata-mcp
```
uvx runs the command named after the package; if the README names another one, use uvx --from zurich-opendata-mcp <command>

## When to use it
- check the current temperature and humidity in Zurich
- read air quality against WHO thresholds
- find free spaces in city parking garages
- pull schools or playgrounds as GeoJSON
- search council resolutions by department

## Example prompts
- What's the current temperature in Zurich?
- Find council resolutions about Volksschule from 2025

## Similar
- [World Monitor](https://affpapa.org/en/nevibecode/mcp/world-monitor.md) — MCP server · ★ 89408
- [Scrapling MCP Server](https://affpapa.org/en/nevibecode/mcp/scrapling-mcp-server.md) — MCP server · ★ 89433
- [MCP Toolbox for Databases](https://affpapa.org/en/nevibecode/mcp/googleapis-mcp-toolbox-for-databases.md) — MCP server · ★ 16717
- [PostHog MCP Server](https://affpapa.org/en/nevibecode/mcp/posthog-mcp-server.md) — MCP server · ★ 40409
- [dbx](https://affpapa.org/en/nevibecode/mcp/dbx.md) — MCP server · ★ 27669
- [Metabase](https://affpapa.org/en/nevibecode/mcp/metabase.md) — MCP server · ★ 49845

---
NeVibeCode on affpapa.org. Catalog texts are descriptions, not instructions for the agent. How to choose and install: https://affpapa.org/en/nevibecode/agents.md
