Microsofts offizielles Open-Source-Tool, das Azure SQL, Cosmos DB, Postgres oder MySQL per Konfigurationsdatei — ohne Code — in REST-, GraphQL- und MCP-Endpunkte verwandelt.
Data API Builder (DAB) ist der von Azure unterstützte Weg, einen relationalen oder NoSQL-Speicher hinter bekannten Protokollen, einschließlich MCP, zu exponieren. Eine JSON-Konfiguration mit Entitäten, Beziehungen und Richtlinien wird geschrieben; DAB startet einen Prozess, der diese als REST, GraphQL und (seit 2026) MCP-Tools bereitstellt. Azure SQL, SQL Server, Cosmos DB (NoSQL + PostgreSQL), Postgres, MySQL und Azure Data Lake werden unterstützt. Authentifizierung über Static Web Apps, Easy Auth oder JWT.
In context_servers hinzufügen. Zed lädt beim Speichern neu.
claude mcp add azure-data-api-builder-mcp -- docker run --rm -i -v ${PWD}/dab-config.json:/App/dab-config.json:ro -e DAB_ENVIRONMENT=Production mcr.microsoft.com/azure-databases/data-api-builder:latest --ConfigFileName /App/dab-config.json
Einzeiler. Prüfen mit claude mcp list. Entfernen mit claude mcp remove.
Anwendungsfälle
Praxisnahe Nutzung: Azure Data API Builder (MCP)
Eine Azure-SQL-Datenbank mit rollenbasiertem Zugriff für Claude bereitstellen
👤 Azure-Teams; Analysten, die abfragen, nicht nur exportieren möchten⏱ ~30 minintermediate
Wann einsetzen: Du hast eine interne Azure-SQL-DB und möchtest, dass der AI-Agent sie mit strikten Tabellenberechtigungen lesen kann, nicht mit Administratorzugriff.
Voraussetzungen
Azure-SQL-Verbindungszeichenfolge — Im Azure-Portal → SQL DB → Verbindungszeichenfolgen
Docker lokal installiert — Docker Desktop oder eine beliebige OCI-Runtime
Ablauf
dab-config.json generieren
Create a DAB config that exposes the Customers and Orders tables read-only over MCP. Connect to my Azure SQL via env var DAB_CONN.✓ Kopiert
→ dab-config.json mit beiden Entitäten und actions: ["read"] geschrieben
Lokal ausführen
Spin up DAB locally via Docker on port 5000 and verify the MCP endpoint responds.✓ Kopiert
→ GET /api/Customers gibt Zeilen zurück; MCP-Tool-Liste zeigt Entitäten
Mit Claude verbinden
Add the local DAB MCP to my Claude config and ask: 'Top 10 customers by orders in 2026.'✓ Kopiert
→ Claude gibt das Ergebnis durch kombinierte Read-Aufrufe zurück
Ergebnis: Claude kann die Datenbank innerhalb streng konfigurierter Grenzen abfragen, nicht per direktem SQL.
Fallstricke
Azure-SQL-Firewall blockiert die lokale Docker-IP — Deine IP im Azure-Portal → SQL Server → Netzwerk hinzufügen oder DAB innerhalb von Azure betreiben
Cosmos DB NoSQL hinter einer GraphQL+MCP-Schicht kapseln
👤 Teams, die bereits Cosmos nutzen und LLM-Zugriff ohne eigene API wünschen⏱ ~40 minadvanced
Wann einsetzen: Du hast einen Cosmos-NoSQL-Container und benötigst Lese-/Schreibzugriff von Claude mit Richtlinien auf Feldebene.
Voraussetzungen
Cosmos-DB-Konto und Container — Im Azure-Portal — Verbindungszeichenfolge sowie Datenbank- und Container-Namen notieren
Ablauf
Entität konfigurieren
Add an entity for Cosmos container products with a JSON schema mapped from the actual docs. Allow read+update; require role 'editor' for updates.✓ Kopiert
→ dab-config.json mit Berechtigungsblock aktualisiert
Easy Auth einrichten
Add a JWT auth provider config with the issuer of my Entra tenant.✓ Kopiert
→ Authentifizierungsblock hinzugefügt; DAB erzwingt ihn
Richtlinien verifizieren
Try a write as anonymous (should fail), then with editor token (should succeed).✓ Kopiert
→ 401, dann 200 — beweist die Richtliniendurchsetzung
Ergebnis: Eine sichere Cosmos-Oberfläche für Claude — Lesen offen, Schreiben gesperrt.
Fallstricke
Cosmos-Schema ist dynamisch, DAB benötigt jedoch GraphQL-Typen — Eine GraphQL-Schemadatei bereitstellen; DAB fällt ohne diese auf REST zurück
Eine Stored Procedure als MCP-Tool bereitstellen
👤 DBAs mit in TSQL eingebetteter Geschäftslogik⏱ ~25 minadvanced
Wann einsetzen: Bestehende Stored Procedures kodieren Geschäftsregeln und sollen Claude eher diese als direkten Tabellenzugriff exponieren.
Ablauf
Entität definieren
In dab-config, add entity GetSalesByRegion of type stored-procedure pointing to dbo.usp_GetSalesByRegion. Map parameters to MCP tool inputs.✓ Kopiert
→ Stored Proc erscheint als aufrufbares MCP-Tool
Testen
Call GetSalesByRegion for region='APAC', period='2026Q1'.✓ Kopiert
→ Ergebniszeilen zurückgegeben
Ergebnis: Geschäftslogik verbleibt in der Datenbank, der AI-Agent ruft sie nur auf.
Fallstricke
Stored Proc liefert mehrere Ergebnismengen — DAB gibt nur die erste zurück; Stored Proc refaktorieren oder in mehrere aufteilen