Skip to main content
Glama

dbt-mcp

Official
by dbt-labs

dbt MCP Server

Dieser MCP-Server (Model Context Protocol) bietet Tools zur Interaktion mit dbt. Lesen Sie diesen Blog, um mehr zu erfahren.

Architektur

Architekturdiagramm des dbt MCP-Servers

Aufstellen

  1. Klonen Sie das Repository:
git clone https://github.com/dbt-labs/dbt-mcp.git cd dbt-mcp
  1. UV installieren
  2. Installationsaufgabe
  3. task install ausführen
  4. Konfigurieren Sie Umgebungsvariablen:
cp .env.example .env

Bearbeiten Sie dann .env mit Ihren spezifischen Umgebungsvariablen (siehe den Abschnitt Configuration der README.md ).

Konfiguration

Der MCP-Server verwendet die folgende Konfiguration:

Werkzeuggruppen

NameStandardBeschreibung
DISABLE_DBT_CLIfalseSetzen Sie dies auf „ true , um die MCP-Tools dbt Core und dbt Cloud CLI zu deaktivieren
DISABLE_SEMANTIC_LAYERfalseSetzen Sie dies auf true , um dbt Semantic Layer MCP-Objekte zu deaktivieren
DISABLE_DISCOVERYfalseSetzen Sie dies auf true , um dbt Discovery API MCP-Objekte zu deaktivieren
DISABLE_REMOTEtrueSetzen Sie dies auf false , um Remote-MCP-Objekte zu aktivieren

Konfiguration für Discovery und Semantic Layer

NameStandardBeschreibung
DBT_HOSTcloud.getdbt.comDer Hostname Ihrer dbt Cloud-Instanz. Dieser sieht aus wie eine hier gefundene Access URL . Wenn Sie Multi-Cell verwenden, fügen Sie hier bitte das ACCOUNT_PREFIX nicht ein.
MULTICELL_ACCOUNT_PREFIX-Wenn Sie Multi-Cell verwenden, setzen Sie dies auf Ihr ACCOUNT_PREFIX . Wenn Sie Multi-Cell nicht verwenden, setzen Sie diese Umgebungsvariable nicht. Weitere Informationen finden Sie hier.
DBT_TOKEN-Ihr persönlicher Zugriffstoken oder Servicetoken. Hinweis: Bei Verwendung der Semantischen Schicht ist ein Servicetoken erforderlich.
DBT_PROD_ENV_ID-Ihre dbt Cloud-Produktionsumgebungs-ID

Konfiguration für Remote Tools

NameBeschreibung
DBT_DEV_ENV_IDIhre dbt Cloud-Entwicklungsumgebungs-ID
DBT_USER_IDIhre dbt Cloud-Benutzer-ID

Konfiguration für dbt CLI

NameBeschreibung
DBT_PROJECT_DIRDer Pfad zum lokalen Repository Ihres dbt-Projekts. Dieser sollte etwa wie folgt aussehen /Users/firstnamelastname/reponame
DBT_PATHDer Pfad zu Ihrer dbt Core- oder dbt Cloud CLI-Ausführdatei. Sie finden Ihre dbt-Ausführdatei, indem Sie which dbt ausführen.

Verwendung mit MCP-Clients

Nach Abschluss der Installation können Sie Ihren Server mit einem MCP-Client verwenden.

Diese Konfiguration wird der Konfigurationsdatei des jeweiligen Clients hinzugefügt. Ersetzen Sie unbedingt die Abschnitte innerhalb von <> :

{ "mcpServers": { "dbt-mcp": { "command": "<path-to-mcp-executable>", "args": [ "run", "<path-to-this-directory>/src/dbt_mcp/main.py" ] } } }

<path-to-mcp-executable> hängt von Ihrem Betriebssystem ab:

  • Linux & Mac: <path-to-this-directory>/.venv/bin/mcp
  • PC: <path-to-this-directory>/.venv/Scripts/mcp

Claude Desktop

Befolgen Sie diese Anweisungen, um die Datei claude_desktop_config.json zu erstellen und eine Verbindung herzustellen.

Auf dem Mac finden Sie die Claude Desktop-Protokolle unter ~/Library/Logs/Claude .

Cursor

  1. Öffnen Sie das Cursor-Menü und wählen Sie Einstellungen → Cursor-Einstellungen → MCP
  2. Klicken Sie auf „Neuen globalen MCP-Server hinzufügen“.
  3. Fügen Sie die Konfiguration von oben zur bereitgestellten mcp.json Datei hinzu
  4. Überprüfen Sie, ob Ihre Verbindung im MCP-Tab aktiv ist.

Cursor MCP-Dokumente hier als Referenz

VS Code

  1. Öffnen Sie das Menü „Einstellungen“ (Befehl + Komma) und wählen Sie oben auf der Seite die richtige Registerkarte für Ihren Anwendungsfall aus.
    • Workspace - konfiguriert den Server im Kontext Ihres Arbeitsbereichs
    • User - konfiguriert den Server im Kontext Ihres Benutzers
    • Hinweis für WSL-Nutzer : Wenn Sie VS Code mit WSL verwenden, müssen Sie WSL-spezifische Einstellungen konfigurieren. Führen Sie den Befehl „ Einstellungen: Remote-Einstellungen öffnen“ über die Befehlspalette (F1) aus oder wählen Sie die Registerkarte „Remote“ im Einstellungseditor. Lokale Benutzereinstellungen werden in WSL wiederverwendet, können aber durch WSL-spezifische Einstellungen überschrieben werden. Die Konfiguration von MCP-Servern in den lokalen Benutzereinstellungen funktioniert in einer WSL-Umgebung nicht ordnungsgemäß.
  2. Wählen Sie Funktionen → Chat
  3. Stellen Sie sicher, dass „Mcp“ Enabled ist

mcp-vscode-Einstellungen

  1. Klicken Sie unter „Mcp > Discovery“ auf „In settings.json bearbeiten“.
  2. Fügen Sie Ihre Serverkonfiguration ( dbt ) als einen der Server zur bereitgestellten Datei settings.json hinzu:
{ "mcp": { "inputs": [], "servers": { "dbt": { "command": "<path-to-mcp-executable>", "args": ["run", "<path-to-this-directory>/src/dbt_mcp/main.py"] } } } }

<path-to-mcp-executable> hängt von Ihrem Betriebssystem ab:

  • Linux & Mac: <path-to-this-directory>/.venv/bin/mcp
  • PC: <path-to-this-directory>/.venv/Scripts/mcp
  1. Sie können Ihre MCP-Server folgendermaßen starten, stoppen und konfigurieren:
  • Ausführen des Befehls MCP: List Servers aus der Befehlspalette (Strg + Befehl + P) und Auswählen des Servers
  • Verwenden der Schlüsselwörter inline in der Datei settings.json

Inline-Management

VS Code MCP-Dokumente hier als Referenz

Werkzeuge

dbt-CLI

  • build - Führt Modelle, Tests, Snapshots und Seeds in Abhängigkeitsreihenfolge aus
  • compile - Generiert ausführbares SQL aus Modellen, Tests und Analysen, ohne diese auszuführen
  • docs - Generiert Dokumentation für das dbt-Projekt
  • ls (Liste) – Listet Ressourcen im dbt-Projekt auf, z. B. Modelle und Tests
  • parse - Analysiert und validiert die Dateien des Projekts auf syntaktische Korrektheit
  • run - Führt Modelle aus, um sie in der Datenbank zu materialisieren
  • test – Führt Tests aus, um die Daten- und Modellintegrität zu validieren
  • show - Führt eine Abfrage für das Data Warehouse aus

Wenn Sie Ihrem Client erlauben, dbt-Befehle über dieses MCP-Tool zu verwenden, können Ihre Datenmodelle, Quellen und Warehouse-Objekte geändert werden. Fahren Sie nur fort, wenn Sie dem Client vertrauen und die möglichen Auswirkungen verstehen.

Semantische Ebene

  • list_metrics - Ruft alle definierten Metriken ab
  • get_dimensions - Ruft die mit den angegebenen Metriken verknüpften Dimensionen ab
  • get_entities - Ruft Entitäten ab, die mit angegebenen Metriken verknüpft sind
  • query_metrics – Abfragemetriken mit optionaler Gruppierung, Sortierung, Filterung und Begrenzung

Entdeckung

  • get_mart_models - Ruft alle Mart-Modelle ab
  • get_all_models - Ruft alle Modelle ab
  • get_model_details – Ruft Details für ein bestimmtes Modell ab
  • get_model_parents - Ruft übergeordnete Knoten eines bestimmten Modells ab
  • get_model_children - Ruft die untergeordneten Modi eines bestimmten Modells ab

Beitragen

Lesen Sie CONTRIBUTING.md , um Anweisungen zur Teilnahme zu erhalten!

Related MCP Servers

View all related MCP servers

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/dbt-labs/dbt-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server