Zum Hauptinhalt springen

Microsoft Fabric MCP-Server

Mit den Microsoft-Fabric-MCP-Servern kann ein Assistent in CLYE AI auf Workspaces und Items sowie optional auf SQL-/Lakehouse-Endpunkte in Microsoft Fabric zugreifen. Für fremde oder mandantenfremde Nutzer sollen dabei deren eigenen Microsoft-Rechte gelten — nicht die eines Admin-Shared-Tokens.

Deshalb richtest du Fabric-MCP mit OAuth und „Jeder Nutzer meldet sich selbst an“ ein (perUserAuth: true). Der Endnutzer muss danach hauptsächlich nur noch einmal (bzw. bei Ablauf erneut) bei Microsoft anmelden.

Verwandte Grundlagen: Externe MCP-Server und das OAuth-Muster bei MS 365 MCP-Server.

Rollen

RolleAufgabe
Tenant-/Fabric-AdminEntra-App-Berechtigungen, Admin-Consent, Nutzer in Fabric freischalten
CLYE-Space-/Assistenten-AdminMCP-Server am Assistenten installieren, OAuth und Per-User Auth konfigurieren
EndnutzerIm Assistenten Anmelden klicken und den Microsoft-Login durchlaufen

Voraussetzungen (vor CLYE)

  1. Microsoft Entra App Registration für CLYE-OAuth (bestehende CLYE-App bzw. die App, die für MCP-OAuth genutzt wird).
  2. Für Fabric die nötigen API-Berechtigungen / Scopes freigeben und im Tenant Admin-Consent erteilen.
  3. Jeder Endnutzer braucht in Microsoft Fabric Zugriff auf die relevanten Workspaces, Lakehouses oder Warehouses. Sonst gelingt der Login, aber Tools scheitern an fehlenden Datenrechten.
  4. Die Redirect-URI der CLYE-OAuth-Callback-URL muss in Entra hinterlegt sein (wie bei anderen CLYE-MCP-OAuth-Servern).

Ohne Tenant-Consent scheitert der Nutzer-Login trotz korrekter CLYE-Konfiguration.

Core- vs. SQL-/Data-Plane-MCP

Üblicherweise richtest du zwei Server ein — je nach Use-Case einen oder beide:

A) Fabric Core MCP (Workspace / Items)

FeldWert
URLhttps://api.fabric.microsoft.com/v1/mcp/core
AuthOAuth 2.0
Scopes (orientierend)https://api.fabric.microsoft.com/.default und offline_access

B) Fabric SQL / Data Plane MCP (SQL-Endpoint / Analysen)

FeldWert
URLhttps://api.fabric.microsoft.com/v1/mcp/dataPlane/sqlEndpoint (bzw. die konkrete Data-Plane-URL)
AuthOAuth 2.0
Scopes (orientierend)https://api.fabric.microsoft.com/Item.Execute.All und https://api.fabric.microsoft.com/Item.ReadWrite.All

Wichtig:

  • Core- und SQL-Scopes nicht vermischen.
  • Im SQL-/Data-Plane-Pfad wird kein .default-Scope verwendet.
  • CLYE setzt bei Fabric-MCP den OAuth-Parameter resource bewusst nicht, damit Entra-Anmeldungen nicht zwischen resource und scope kollidieren.

Admin-Einrichtung in CLYE

1. Zum Assistenten oder Space

  1. Öffne den Space des Assistenten (z. B. Auris).
  2. Gehe zu EinstellungenMCP-Server (bzw. Agent Plugins / Tools, je nach Oberfläche).

2. Fabric-MCP installieren

  1. Lege den Server manuell als Streaming HTTP an oder nutze einen Katalog-Eintrag, falls vorhanden.
  2. Trage die URL für Core bzw. SQL/Data Plane ein (siehe oben).
  3. Wähle Auth-Modus: OAuth — keinen statischen Bearer-Header.

3. OAuth-Konfiguration

Im MCP-Config-Dialog:

  1. Client-ID und bei Bedarf Client-Secret der Entra-App eintragen (Secret nur bei Confidential Client).
  2. Scopes passend zum jeweiligen Server setzen (Core vs. SQL).
  3. Keinen gemeinsamen Authorization: Bearer …-Header in den HTTP-Headern speichern. Bei OAuth-Servern wird das abgelehnt; Tokens kommen über den OAuth-Flow.

4. Per-User Auth aktivieren (entscheidend)

Schalte den Toggle „Jeder Nutzer meldet sich selbst an“ ein (UI-ID: mcp-per-user-auth).

ModusWer meldet sich an?Wessen Rechte?Typischer Fall
Shared (perUserAuth aus)einmal AdminAdmin-/Service-Accountinternes Demo-Setup
Per-User (perUserAuth an)jeder Nutzer selbstder jeweilige NutzerProduktion / fremde Mandanten-Nutzer

Wenn Per-User an ist:

  • Jeder Nutzer authentifiziert sich einzeln.
  • Tokens sind pro Nutzer isoliert.
  • Ohne eigene Anmeldung kann der Nutzer den Server nicht nutzen (fail-closed).

Wenn Per-User aus ist (Default):

  • Geteilte Session: Ein Login (meist Admin) gilt für alle im Space.
  • Für „fremde Nutzer mit eigenen Rechten“ nicht geeignet.

Für Assistenten wie Auris/Vertrieb: Toggle einschalten. Optional erscheint ein Badge wie „Einzellanmeldung pro Benutzer (Per-User Auth)“.

5. Speichern und prüfen

  1. Server speichern.
  2. Bei aktivierter Per-User Auth muss sich der Admin nicht zwingend „für alle“ anmelden — jeder User macht seinen eigenen Login.
  3. Optional: Verbindungstest / Prüfen in der MCP-Liste.
  4. Stelle sicher, dass die Fabric-Tools für den Assistenten freigegeben sind.

Endnutzer-Flow

Der Endnutzer konfiguriert kein Client-Secret, keine URL und keine Scopes.

  1. Assistent öffnen (Space-Berechtigung vorausgesetzt).
  2. Bei Fabric-Nutzung bzw. in den MCP-Einstellungen auf Anmelden klicken.
  3. Microsoft-/Entra-Login mit dem eigenen Account durchlaufen.
  4. Danach arbeiten die Tools mit den Fabric-Rechten dieses Nutzers.
  5. Bei „Token abgelaufen“ oder widerrufener Zustimmung erneut Anmelden.

Shared vs. Per-User — Kurzabgrenzung

  • Shared: gut für interne Demos, schlecht für Datenschutz bei fremden Nutzern.
  • Per-User: jeder sieht und nutzt nur, wozu sein Microsoft-Konto berechtigt ist.
  • Automationen / Hintergrund ohne User-Kontext: Per-User-Server sind fail-closed (ohne User-Id nicht nutzbar). Shared-Sessions können Hintergrundläufe weiter bedienen.

Troubleshooting

SymptomTypische UrsacheWas tun
Login scheitert trotz korrekter CLYE-ConfigTenant Admin Consent fehltEntra-App-Berechtigungen freigeben und Consent erteilen
Login ok, Tools liefern keine Daten / RechtefehlerNutzer hat in Fabric keinen Zugriff auf Workspace/LakehouseFabric-Rechte für den Nutzer prüfen
Alle teilen dieselben Rechte„Jeder Nutzer meldet sich selbst an“ ist ausPer-User Auth einschalten
Scope-/Consent-Fehler nach dem LoginCore- und SQL-Scopes vermischtScopes je Server korrigieren und erneut anmelden
Hinweis „Token abgelaufen“OAuth-Token abgelaufen oder widerrufenErneut Anmelden
Automation nutzt Fabric nichtPer-User ohne User-KontextFür Background Shared nutzen oder User-Kontext bereitstellen; Per-User bleibt fail-closed

Wenn Microsoft Fabric bei einem Tool-Aufruf zusätzliche Scopes oder Zustimmung verlangt, behandelt CLYE das als fehlende Freigabe und fordert eine erneute Zustimmung an, statt das vorhandene Token vorschnell als defekt zu verwerfen.

Kurz gesagt

Für produktive Fabric-Nutzung mit eigenen Nutzerrechten: Fabric Core und/oder SQL-MCP mit OAuth anlegen, passende Scopes setzen, keinen Shared-Bearer verwenden und „Jeder Nutzer meldet sich selbst an“ aktivieren. Endnutzer brauchen danach nur noch Anmelden bei Microsoft.