Verwenden des MCP-Servers zum Erstellen von Apps mit einem Coding-Agent

Gilt für: Entwickler

Der SharePoint Embedded MCP-Server ist ein Open-Source-Modellkontextprotokoll-Server , mit dem MCP-kompatible KI-Clients SharePoint Embedded-Anwendungen über natürliche Sprache einrichten und verwalten können. Unterstützte Clients sind GitHub Copilot in Visual Studio Code oder CLI, Claude Desktop, Cursor und Azure AI Foundry . Es wird als @microsoft/spe-mcp npm-Paket verteilt und lokal auf Ihrem Computer als Entwicklertool ausgeführt.

Anstatt sich durch Portale zu klicken und Microsoft Graph- und Azure-CLI-Befehle von Hand zusammenzustellen, beschreiben Sie, was Sie wollen – "Erstelle einen Testcontainertyp für meine App" – und der KI-Client ruft dazu die Tools des Servers auf.

Hinweis

Der SharePoint Embedded MCP-Server ist ein Open-Source-Entwicklertool, das in der Vorschau veröffentlicht wurde. Der Quellcode, die vollständige Toolreferenz und die Problemverfolgung befinden sich im Repository microsoft/SharePoint-Embedded-MCP-Server auf GitHub.

Wichtig

Um mit dem Erstellen mit SharePoint Embedded zu beginnen, benötigen Sie Administratorzugriff auf einen Microsoft 365-Mandanten.

Wenn Sie noch nicht über einen Mandanten verfügen, können Sie mit dem Microsoft 365 Developer Program, Microsoft Customer Digital Experience oder einer kostenlosen Testversion einer Microsoft 365 E3-Lizenz Ihren eigenen erwerben.

Verfügbare Tools

Der Server stellt Tools bereit, die ein KI-Client in Ihrem Namen aufrufen kann.

Kategorie Funktionsweise der Tools Repräsentative Tools
Bereitstellung und Status Überprüfen Sie Ihre Anmeldeidentität und Bereitstellungsbereitschaft. Erstellen und verwalten Sie besitzende Anwendungen, Containertypen, Containertypregistrierungen und Container. status_get, project_app_create, project_provision, container_type_create, container_type_register, container_create
Abrechnung Wählen Sie ein Azure-Abonnement und eine Ressourcengruppe aus, verbinden Sie einen Containertyp mit der Standardabrechnung, und überprüfen Sie die Abrechnungsklassifizierung oder den Ablauf der Testversion. azure_subscriptions_list, azure_resource_groups_list, billing_setup, billing_check
Gerüstbau, Ausführung und Bereitstellung Generieren Sie eine Referenzanwendung, schreiben Sie ihre Konfiguration, führen Sie das Seeding für Beispielinhalte aus, führen Sie sie lokal aus, und stellen Sie sie in Azure bereit. project_scaffold, project_hydrate_config, project_seed_sample_data, project_run_local, project_deploy
Inhaltsvorgänge (Opt-In) Nach ausdrücklicher Zustimmung Seeding für Beispielinhalte, Hochladen von Dateien, Erstellen von Ordnern, Suchen, Anzeigen einer Vorschau und Verwalten der Freigabe. content_access_grant, project_seed_sample_data, content_file_upload, content_search, content_sharing_manage
Containerberechtigungen und Lebenszyklus Verwalten Sie Containerberechtigungen und archivieren, wiederherstellen oder löschen Sie Container. container_permissions_manage, container_archive_restore, container_delete
Dokumentation Suchen und Abrufen der offiziellen SharePoint Embedded- und Microsoft Graph-Dokumentation über den Microsoft Learn MCP-Server. docs_search, docs_fetch

Eine vollständige, versionierte Liste der Tools, CLI-Flags und Umgebungsvariablen finden Sie in der Server-README.

Voraussetzungen

  • Node.js Version 22 oder höher.
  • Azure CLI, signed in with az login --allow-no-subscriptions. Das --allow-no-subscriptions Flag ist für Microsoft 365-only-Mandanten erforderlich, die kein Azure-Abonnement haben.
  • Microsoft 365-Mandanten- und Mandantenadministratorzugriff (globaler Administrator oder Anwendungsadministrator).
  • Ein MCP-kompatibler Client, z. B. Visual Studio Code mit GitHub Copilot, Claude Desktop oder Cursor.

Installieren und Konfigurieren

MCP-Clients starten den Server mit npx, sodass keine separate globale Installation erforderlich ist. Fügen Sie der MCP-Konfiguration Ihres Clients einen Servereintrag hinzu.

Visual Studio Code

Fügen Sie in Ihrem Arbeitsbereich einen MCP-Servereintrag hinzu .vscode/mcp.json :

{
  "servers": {
    "spe": {
      "type": "stdio",
      "command": "npx",
      "args": ["-y", "@microsoft/spe-mcp", "start"]
    }
  }
}

Das -y Flag ermöglicht es Visual Studio Code, den Server nicht-interaktiv zu starten. Nachdem der Server registriert wurde, verwenden Sie Copilot Chat im Agent-Modus, um seine Tools aufzurufen.

Claude Desktop

Fügen Sie den Server zu %APPDATA%\Claude\claude_desktop_config.json (Windows) oder ~/Library/Application Support/Claude/claude_desktop_config.json (macOS) hinzu:

{
  "mcpServers": {
    "spe": {
      "command": "npx",
      "args": ["-y", "@microsoft/spe-mcp", "start"]
    }
  }
}

Cursor und andere MCP-Clients

Jeder Client, der MCP-Server über den stdio-Transport unterstützt, kann den Server mit demselben npx -y @microsoft/spe-mcp start Befehl ausführen. In der Dokumentation Ihres Clients erfahren Sie, wo Sie MCP-Server registrieren können.

Konfiguration

Der Server akzeptiert die Betriebskonfiguration über CLI-Flags oder entsprechende Umgebungsvariablen. Wenn Sie beide Optionen für dieselbe Option festlegen, gewinnt das CLI-Flag.

CLI-Flag Umgebungsvariable Beschreibung
--client-id SPE_CLIENT_ID Microsoft Entra ID Anwendungs-ID (Client) ID der besitzenden Anwendung. Lassen Sie die Option für die Verwendung des Bootstrap-Modus aus.
--tenant-id SPE_TENANT_ID Microsoft Entra ID Mandanten-ID. Der Server erkennt es über die Azure CLI, wenn Sie es weglassen.
--read-only SPE_READ_ONLY Nur Lese-, Listen-, Get- und Suchtools ankündigen und zulassen. Ablehnen mutierender Anrufe.
--tools SPE_TOOLS Beschränken Sie Tools auf ein Profil (readOnly, docsOnly, provisioning, contentoder admin) oder eine durch Trennzeichen getrennte Liste von Toolnamen.
--data-dir SPE_DATA_DIR Pfad für den Tokencache und den Bereitstellungsstatus. Verwenden Sie einen eindeutigen absoluten Pfad oder ~/ Pfad für jede Server-Instance. Durch die Freigabe dieses Verzeichnisses kann der zwischengespeicherte Authentifizierungs- und Bereitstellungsstatus überschrieben werden. Verwenden Sie keinen Pfad, der relativ zum aktuellen Verzeichnis ist. Der Standardwert lautet ~/.spe-mcp.

Legen Sie Flags im args Array oder in den Variablen im env Objekt der MCP-Konfiguration Ihres Clients fest. Führen Sie die Serverkonfigurationsreferenz ausnpx -y @microsoft/spe-mcp start --help, oder lesen Sie die vollständige, versionierte Optionsliste.

Authentifizierungsmethode für den Server auswählen

Der Server unterstützt zwei Ausführungsmodi.

  • Bootstrap-Modus (empfohlen für den Einstieg): Keine App-Registrierung erforderlich. Der Server verwendet Ihre Azure CLI-Sitzung für die Steuerungsebene und stellt die besitzende Microsoft Entra ID-Anwendung bei Bedarf bereit. Einmal anmelden und den Server ohne Client-ID starten:

    az login --allow-no-subscriptions
    
  • Vorab bereitgestellter App-Modus: Übergeben Sie eine vorhandene öffentliche Client Microsoft Entra ID-Anwendung, die bereits über delegierte Berechtigungen mit Administratoreinwilligung für FileStorageContainer.Selected, FileStorageContainerType.Manage.Allund FileStorageContainerTypeReg.Manage.Allverfügt. Geben Sie die App-ID und die Mandanten-ID über die SPE_CLIENT_ID Umgebungsvariablen and SPE_TENANT_ID (oder die --client-id Flags und --tenant-id ) an:

    {
      "servers": {
        "spe": {
          "type": "stdio",
          "command": "npx",
          "args": ["-y", "@microsoft/spe-mcp", "start"],
          "env": {
            "SPE_CLIENT_ID": "your-client-id",
            "SPE_TENANT_ID": "your-tenant-id"
          }
        }
      }
    }
    

Wichtig

Konfigurieren Sie Umleitungs-URIs für die entsprechende App-Registrierung:

  • Besitzer der App-Registrierung für den MCP-Server: Fügen Sie unter Mobile und Desktop-Anwendungen für die interaktive Anmeldung hinzu http://localhost .
  • Besitz der App-Registrierung für die React Single-Page-Anwendung (SPA): Fügen Sie unter Single-Page-Anwendung die lokale App-URL hinzu, die von angezeigt wirdproject_run_local, und die bereitgestellte URL, die von zurückgegeben wirdproject_deploy. Fügen Sie im vorgelagerten App-Modus diese Umleitungs-URIs manuell hinzu, wenn der Server die App-Registrierung nicht aktualisieren kann.
  • Separate C#-Web-App-Registrierung: Das C#-Gerüst stellt diese Registrierung mit einem Webumleitungs-URI bereit. Fügen Sie den Umleitungs-URI der C#-App nicht zur Registrierung der besitzenden App hinzu.

Verwalten Sie Umleitungs-URIs unter App-Registrierungen-Authentifizierung> im Microsoft Entra Admin Center.

Im Bootstrap-Modus öffnet der erste SharePoint Embedded-Aufruf einen Browser für eine einmalige Zustimmung und speichert das Token zwischen, sodass kein separater Terminalschritt erforderlich ist. Den vollständigen Authentifizierungsfall, Details zum Tokenspeicher und den Leitfaden für Headless/Automatisierung finden Sie in der Server-README.

Ausprobieren

Wenn der Server auf Ihrem Client registriert ist und eine Azure CLI-Anmeldung abgeschlossen ist, bitten Sie Ihren KI-Client, mit SharePoint Embedded zu arbeiten. Zum Beispiel in Copilot Chat:

  • "Liste meine SharePoint Embedded-Containertypen auf."
  • "Erstellen Sie einen Testcontainertyp namens Contoso Docs für die App-ID abc-123."
  • "Stellen Sie eine neue SharePoint Embedded-App bereit, und erstellen Sie ein React-Beispiel."

Der Client ruft die Abgleichstools auf, fordert Sie beim ersten Mal zur Zustimmung auf und meldet die Ergebnisse.

Steuern, was der Server tun kann

Der Server enthält Steuerelemente, um einzuschränken, welche Tools verfügbar und aufrufbar sind – nützlich, wenn Sie möchten, dass ein KI-Client Ihre Umgebung erkundet, ohne Änderungen vorzunehmen:

  • Schreibgeschützter Modus: Nur Lese-, Listen-, Get- und Suchtools ankündigen und zulassen und jeden mutierenden Aufruf ablehnen. Legen Sie das --read-only Flag oder die SPE_READ_ONLY Umgebungsvariable fest.
  • Toolprofile: Beschränken Sie die verfügbar gemachten Tools auf ein Profil (readOnly, docsOnly, provisioningcontent, oder admin) oder eine durch Trennzeichen getrennte Liste von Toolnamen, indem Sie das Flag oder die --toolsSPE_TOOLS Umgebungsvariable verwenden.

Siehe Konfiguration für die anderen Betriebsoptionen.

Die Content-Operations-Tools sind außerdem hinter einer separaten, expliziten Zustimmung geschützt, sodass ein KI-Client Dateien in Ihren Containern erst lesen oder ändern kann, wenn Sie zustimmen. Das vollständige Sicherheitsmodell finden Sie unter Sicherheitskontrollen im Serverrepository.