MCP Servers

模型上下文协议服务器、框架、SDK 和模板的综合目录。

B
Berlin Opendata MCP
作者 @tifa365

MCP Server for Berlin Open Data – 6 tools for CKAN catalog search, analysis, and exploration across 2500+ datasets

创建于 2/28/2026
更新于 about 5 hours ago
Repository documentation and setup instructions

Berlin Open Data MCP Server

MCP Server fuer den Zugriff auf Open Data des Landes Berlin. Bietet 6 Tools fuer CKAN-Katalogsuche, Analyse und Exploration ueber 2500+ Datensaetze.

Wie funktioniert das?

Dieser Server implementiert das Model Context Protocol (MCP) — ein offener Standard, ueber den KI-Assistenten auf externe Datenquellen zugreifen koennen.

Der Ablauf im Detail:

  1. Verbindung: Der KI-Client (z.B. Claude Desktop) startet den MCP-Server als Hintergrundprozess und kommuniziert ueber stdin/stdout (JSON-RPC).
  2. Tool-Discovery: Beim Start fragt der Client den Server nach verfuegbaren Tools. Der Server liefert fuer jedes Tool Name, Beschreibung und Parameter-Schema (definiert ueber Pydantic-Models). Diese Beschreibungen dienen dem KI-Modell als Entscheidungsgrundlage.
  3. Ausfuehrung: Stellt ein Nutzer eine Frage wie "Welche Kita-Daten gibt es in Berlin?", erkennt das Modell anhand der Tool-Beschreibungen, dass berlin_search_datasets mit query="Kita" die passende Aktion ist. Der Client sendet den Tool-Call an den Server, dieser fragt die CKAN API ab und liefert die Ergebnisse als Markdown zurueck.
  4. Antwort: Das KI-Modell fasst die zurueckgelieferten Daten fuer den Nutzer zusammen.

Die Qualitaet der Tool- und Parameter-Beschreibungen im Code ist dabei entscheidend — sie bestimmen, wie zuverlaessig das Modell das richtige Tool mit den richtigen Parametern waehlt.

Features

  • 6 MCP Tools fuer Datensatz-Suche, Details, Kategorien, Tags, Analyse und Katalog-Statistiken
  • 2 MCP Resources fuer direkten Zugriff auf Datensaetze und Kategorien
  • 2500+ Datensaetze ueber die CKAN API (datenregister.berlin.de)
  • 25 Kategorien: Arbeit, Bildung, Demographie, Gesundheit, Kultur, Umwelt, Verkehr, Verwaltung, Wirtschaft, Wohnen u.v.m.

Installation

uv sync

Verwendung

Stdio (lokal, z.B. Claude Desktop)

uv run berlin-opendata-mcp

SSE (remote)

MCP_TRANSPORT=sse MCP_PORT=8000 uv run berlin-opendata-mcp

Konfiguration

Claude Desktop

Editiere die Claude Desktop Config:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json
  • Linux: ~/.config/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "berlin-opendata": {
      "command": "uv",
      "args": ["run", "berlin-opendata-mcp"],
      "env": {}
    }
  }
}

Claude Code (CLI)

claude mcp add berlin-opendata -- uv run berlin-opendata-mcp

Cursor / Windsurf / VS Code

Fuege zu .cursor/mcp.json bzw. .vscode/settings.json hinzu:

{
  "mcpServers": {
    "berlin-opendata": {
      "command": "uv",
      "args": ["run", "berlin-opendata-mcp"]
    }
  }
}

Remote (SSE) – z.B. fuer ChatGPT, Open WebUI

MCP_TRANSPORT=sse MCP_PORT=8000 uv run berlin-opendata-mcp

Dann den SSE-Endpunkt http://localhost:8000/sse im Client eintragen.

Beispiel-Abfragen

Nach der Konfiguration kannst du den AI-Assistenten fragen:

  • "Welche Datensaetze gibt es zu Kitas in Berlin?"
  • "Zeig mir die Kategorien im Berliner Open-Data-Katalog"
  • "Wie viele Datensaetze hat Berlin insgesamt?"
  • "Finde Datensaetze zum Thema Einwohner in Berlin"
  • "Welche Datenformate sind im Berliner Katalog am haeufigsten?"

Tools

| Tool | Beschreibung | |------|-------------| | berlin_search_datasets | Volltextsuche ueber 2500+ Datensaetze (Solr-Syntax) | | berlin_get_dataset | Vollstaendige Metadaten + Download-URLs eines Datensatzes | | berlin_list_categories | 25 thematische Kategorien durchsuchen | | berlin_list_tags | Tag-basierte Suche | | berlin_analyze_datasets | Relevanz-, Aktualitaets- und Format-Analyse | | berlin_catalog_stats | Katalog-Uebersicht mit Statistiken |

Resources

| URI | Beschreibung | |-----|-------------| | berlin://dataset/{name} | Datensatz-Metadaten (JSON) | | berlin://category/{group_id} | Kategorie-Details mit Datensaetzen |

Kategorien

arbeit, bildung, demographie, erholung, geo, gesundheit, gleichstellung, jugend, justiz, kultur, oeffentlich, protokolle, sicherheit, sonstiges, sozial, tourismus, transport, umwelt, verbraucher, verentsorgung, verkehr, verwaltung, wahl, wirtschaft, wohnen

Hinweise

  • Kein DataStore: Berlins CKAN dient als Katalog mit Download-Links. Daten muessen ueber Ressourcen-URLs heruntergeladen werden.
  • Lizenzen: CC0, CC-BY, Datenlizenz Deutschland (Zero/Namensnennung), GeoNutzV u.a.
  • API: datenregister.berlin.de/api/3/action/ (oeffentlich, keine Authentifizierung)
  • Portal: daten.berlin.de

Entwicklung

uv run ruff check src/
uv run ruff format src/

Lizenz

MIT

快速设置
此服务器的安装指南

安装包 (如果需要)

uvx berlin-opendata-mcp

Cursor 配置 (mcp.json)

{ "mcpServers": { "tifa365-berlin-opendata-mcp": { "command": "uvx", "args": [ "berlin-opendata-mcp" ] } } }