metabase-mcp
Metabase MCP-Server – Verbinden Sie KI-Assistenten mit Ihrer Metabase-Analyse
Ein leistungsstarker Model Context Protocol (MCP)-Server für Metabase, der es KI-Assistenten wie Claude, Cursor und anderen MCP-Clients ermöglicht, nahtlos mit Ihrer Metabase-Instanz zu interagieren. Fragen Sie Datenbanken ab, führen Sie SQL aus, verwalten Sie Dashboards und automatisieren Sie Analyse-Workflows mit natürlicher Sprache durch KI-gestützte Datenbankoperationen.
Ideal für: Datenanalysten, Entwickler und Teams, die KI-Assistenten in ihre Metabase Business-Intelligence-Plattform integrieren möchten, um SQL-Abfragen, Dashboard-Verwaltung und Datenexploration zu automatisieren.
Hauptfunktionen
Datenbankoperationen
Datenbanken auflisten: Durchsuchen Sie alle konfigurierten Metabase-Datenbanken
Tabellen entdecken: Erkunden Sie Tabellen mit Metadaten und Beschreibungen
Feldinspektion: Erhalten Sie detaillierte Feld-/Spalteninformationen mit intelligenter Paginierung
Abfragen & Analysen
SQL-Ausführung: Führen Sie native SQL-Abfragen mit Parameterunterstützung und Templating aus
MongoDB-Unterstützung: Führen Sie native MongoDB-Abfragen mit automatischer JSON-Konvertierung für Aggregations-Pipelines aus
Kartenverwaltung: Führen Sie Metabase-Fragen/Karten (SQL und MongoDB) aus, erstellen und verwalten Sie diese
Sammlungsorganisation: Erstellen und verwalten Sie Sammlungen für eine bessere Organisation
Abfragen in natürlicher Sprache: Lassen Sie KI-Assistenten Fragen in SQL- oder MongoDB-Abfragen übersetzen
Authentifizierung & Sicherheit
API-Schlüssel-Unterstützung: Sichere Authentifizierung über Metabase-API-Schlüssel (empfohlen)
Sitzungsbasierte Authentifizierung: Alternative E-Mail/Passwort-Authentifizierung
Umgebungsvariablen: Sichere Verwaltung von Anmeldedaten über
.env-Dateien
KI-Assistenten-Integration
Claude Desktop: Native Integration mit Anthropic's Claude AI
Cursor IDE: Nahtlose Integration für KI-gestützte Entwicklung
Jeder MCP-Client: Kompatibel mit allen Model Context Protocol-Clients
Verbesserte Leistung & Zuverlässigkeit
Kontextbezogenes Logging: Echtzeit-Logging mit Debug-, Info-, Warn- und Fehlerstufen, die für KI-Clients sichtbar sind
Korrekte Fehlerbehandlung: FastMCP
ToolError-Ausnahmen für bessere Fehlermeldungen und DebuggingMiddleware-Stack: Integrierte Fehlerbehandlungs- und Logging-Middleware für Zuverlässigkeit in der Produktion
Best Practices: Befolgt die neuesten FastMCP-Muster mit Duplikatsvermeidung und sauberer Konfiguration
Modernes Python: Verwendet Python 3.12+ Typ-Hinweise (
|-Syntax) für bessere Typsicherheit
Schnellstart
Voraussetzungen
Python 3.12+
Metabase-Instanz mit API-Zugriff
uvxoderuvPaketmanager
Installation
Option 1: Verwendung von uvx (Am einfachsten – keine Installation erforderlich)
# Run directly without installing (like npx for Python)
uvx metabase-mcp
# With environment variables
METABASE_URL=https://your-instance.com METABASE_API_KEY=your-key uvx metabase-mcpOption 2: Installation von PyPI
# Install globally
uv tool install metabase-mcp
# Or with pip
pip install metabase-mcp
# Then run
metabase-mcpOption 3: Entwicklungseinrichtung (Aus dem Quellcode)
# Clone the repository
git clone https://github.com/cheukyin175/metabase-mcp.git
cd metabase-mcp
# Install dependencies
uv sync
# Run the server
uv run python server.pyKonfiguration
Erstellen Sie eine .env-Datei mit Ihren Metabase-Anmeldedaten:
cp .env.example .envKonfigurationsoptionen
Option 1: API-Schlüssel-Authentifizierung (Empfohlen)
METABASE_URL=https://your-metabase-instance.com
METABASE_API_KEY=your-api-key-hereOption 2: E-Mail/Passwort-Authentifizierung
METABASE_URL=https://your-metabase-instance.com
METABASE_USER_EMAIL=your-email@example.com
METABASE_PASSWORD=your-passwordOptional: Metabase API HTTP-Timeout
METABASE_HTTP_TIMEOUT=30.0 # Default: 30.0 secondsOptional: Benutzerdefinierter Host/Port für SSE/HTTP
HOST=localhost # Default: 0.0.0.0
PORT=9000 # Default: 8000Verwendung
Server starten
Schnellstart (Keine Einrichtung erforderlich)
# Run directly with uvx
uvx metabase-mcp
# With custom Metabase instance
METABASE_URL=https://your-instance.com METABASE_API_KEY=your-key uvx metabase-mcpAus dem Quellcode (Entwicklung)
# STDIO transport (default)
uv run python server.py
# SSE transport (uses HOST=0.0.0.0, PORT=8000 by default)
uv run python server.py --sse
# HTTP transport (uses HOST=0.0.0.0, PORT=8000 by default)
uv run python server.py --http
# Custom host and port via environment variables
HOST=localhost PORT=9000 uv run python server.py --sse
HOST=192.168.1.100 PORT=8080 uv run python server.py --httpCursor-Integration
Sie können Cursor manuell konfigurieren, indem Sie Ihre Cursor-Einstellungen bearbeiten.
Für SSE-Transport: Sie müssen den Server starten, bevor Sie Cursor verwenden:
uv run python server.py --sseClaude Desktop-Integration
Option 1: Verwendung von uvx (Empfohlen)
Fügen Sie dies zu ~/Library/Application Support/Claude/claude_desktop_config.json hinzu:
{
"mcpServers": {
"metabase-mcp": {
"command": "uvx",
"args": ["metabase-mcp"],
"env": {
"METABASE_URL": "https://your-metabase-instance.com",
"METABASE_API_KEY": "your-api-key-here"
}
}
}
}Option 2: Verwendung einer lokalen Installation
Wenn Sie das Repository geklont haben:
{
"mcpServers": {
"metabase-mcp": {
"command": "uv",
"args": [
"run",
"--directory",
"/absolute/path/to/metabase-mcp",
"python",
"server.py"
],
"env": {
"METABASE_URL": "https://your-metabase-instance.com",
"METABASE_API_KEY": "your-api-key-here"
}
}
}
}Option 3: Verwendung der FastMCP CLI
fastmcp install server.py -n "Metabase MCP"Verfügbare Tools
Datenbankoperationen
Tool | Beschreibung |
| Alle konfigurierten Datenbanken in Metabase auflisten |
| Alle Tabellen in einer bestimmten Datenbank mit Metadaten abrufen |
| Feld-/Spalteninformationen für eine Tabelle abrufen |
Abfrageoperationen
Tool | Beschreibung |
| Native SQL-Abfragen mit Parameterunterstützung ausführen |
| Native MongoDB-Abfragen mit automatischer JSON-Konvertierung für Aggregations-Pipelines ausführen |
| Gespeicherte Metabase-Fragen/Karten ausführen |
Kartenverwaltung
Tool | Beschreibung |
| Alle gespeicherten Fragen/Karten auflisten |
| Neue Fragen/Karten mit SQL-Abfragen erstellen |
| Neue MongoDB-Fragen/Karten mit nativer Abfrageunterstützung erstellen |
Sammlungsverwaltung
Tool | Beschreibung |
| Alle Sammlungen durchsuchen |
| Neue Sammlungen zur Organisation erstellen |
Transportmethoden
Der Server unterstützt mehrere Transportmethoden:
STDIO (Standard): Für IDE-Integration (Cursor, Claude Desktop)
SSE: Server-Sent Events für Webanwendungen
HTTP: Standard-HTTP für API-Zugriff
uv run python server.py # STDIO (default)
uv run python server.py --sse # SSE (HOST=0.0.0.0, PORT=8000)
uv run python server.py --http # HTTP (HOST=0.0.0.0, PORT=8000)
HOST=localhost PORT=9000 uv run python server.py --sse # Custom host/portEntwicklung
Entwicklungsumgebung einrichten
# Install with dev dependencies
uv sync --group dev
# Or with pip
pip install -r requirements-dev.txtCode-Qualität
# Run linting
uv run ruff check .
# Format code
uv run ruff format .
# Type checking
uv run mypy server.pyAnwendungsbeispiele
Abfragebeispiele
# List all databases
databases = await list_databases()
# Execute a SQL query
result = await execute_query(
database_id=1,
query="SELECT * FROM users LIMIT 10"
)
# Create and run a card
card = await create_card(
name="Active Users Report",
database_id=1,
query="SELECT COUNT(*) FROM users WHERE active = true",
collection_id=2
)Projektstruktur
metabase-mcp/
├── server.py # Main MCP server implementation
├── pyproject.toml # Project configuration and dependencies
└── .env.example # Environment variables templateMitwirken
Beiträge sind willkommen! Bitte fühlen Sie sich frei, einen Pull Request einzureichen.
Lizenz
MIT-Lizenz – siehe LICENSE-Datei für Details
Ressourcen
Schlüsselwörter & Themen
metabase mcp model-context-protocol claude cursor ai-assistant fastmcp sql database analytics business-intelligence bi data-analysis anthropic llm python automation api data-science query-builder natural-language-sql
Star-Verlauf
Wenn Sie dieses Projekt nützlich finden, ziehen Sie bitte in Betracht, ihm einen Stern zu geben! Es hilft anderen, dieses Tool zu entdecken.
Anwendungsfälle
Datenbankabfragen in natürlicher Sprache: Bitten Sie Claude, Ihre Metabase-Datenbanken in einfachem Englisch abzufragen
Automatisierte Berichterstellung: Nutzen Sie KI, um Metabase-Karten und -Sammlungen zu erstellen und zu verwalten
Datenexploration: Lassen Sie sich von KI-Assistenten helfen, Erkenntnisse aus Ihren Daten zu gewinnen
SQL-Abfrageunterstützung: Erhalten Sie Hilfe beim Schreiben und Optimieren von SQL-Abfragen durch KI
Dashboard-Verwaltung: Automatisieren Sie die Erstellung und Organisation von Metabase-Dashboards
Datenanalyse-Workflows: Integrieren Sie KI-gestützte Analysen in Ihren Entwicklungsworkflow
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Latest Blog Posts
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/voducdan/matebase-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server