Berlin Open Data MCP Server

Berlin Open Data MCP Server

Enables interaction with Berlin's open data catalog through tools for full-text search, metadata retrieval, and dataset analysis. It provides access to over 2,500 datasets across categories like transport, health, and education using the Model Context Protocol.

Category
Visit Server

README

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

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured