MCP Server für Microsoft 365 – Setup & Integration

MCP M365

Das Model Context Protocol eröffnet völlig neue Wege, um auf Microsoft 365 Dienste zuzugreifen. Wer einen MCP Server einrichten möchte, erhält damit eine leistungsstarke Brücke zwischen KI-Clients und der gesamten Microsoft Cloud. Über 200 Tools stehen bereit, um Outlook-Mails, Kalender, OneDrive-Dateien, Excel, OneNote, Planner und vieles mehr anzusteuern.

Die Microsoft 365 Integration funktioniert über zwei Wege: direkt in Claude Desktop oder über Microsoft Copilot Studio. Für den M365 Datenzugriff brauchen Sie Node.js ab Version 20 und die Microsoft Authentication Library (MSAL). Endnutzer benötigen für Copilot Studio eine entsprechende Lizenz.

Im Kern nutzt der Server die Graph API Verbindung, um sämtliche Daten aus der Microsoft Cloud abzurufen. Ein Read-only-Modus schützt sensible Inhalte. Durch gezielte Tool-Filterung lässt sich genau festlegen, welche Dienste ein Client nutzen darf. Das sorgt für eine granulare Zugriffskontrolle in jeder Umgebung.

Ob als Power Pages MCP Server oder als Backend für KI-gestützte Agenten – die Einsatzmöglichkeiten sind breit gefächert. In diesem Leitfaden erfahren Sie Schritt für Schritt, wie Sie den Server aufsetzen, konfigurieren und in Ihre bestehende Infrastruktur einbinden.

Was ist ein MCP Server für M365 Zugriff und warum ist er wichtig?

Ein MCP Server bildet die Brücke zwischen KI-gestützten Agents und den Daten in Microsoft 365. Er stellt eine standardisierte Verbindung her, über die Nutzer per natürlicher Sprache auf E-Mails, Kalender, Dateien und mehr zugreifen können. Bevor die Authentifizierung eingerichtet wird, lohnt sich ein Blick auf die Grundlagen.

Model Context Protocol als Schnittstelle zu Microsoft Graph API

Das Model Context Protocol definiert einen offenen Standard für die Kommunikation zwischen KI-Agents und externen Datenquellen. Es nutzt sogenannte Agent Connectors im App Manifest, die jeweils eine eindeutige ID, einen Anzeigenamen und eine Beschreibung benötigen.

Der MCP Server stellt MCP Tools bereit, die direkt auf die Microsoft Graph API zugreifen. Dadurch lassen sich CRUD-Operationen – also Erstellen, Lesen, Aktualisieren und Löschen – durch einfache Konversationen ausführen. Nutzer müssen keine API-Aufrufe manuell schreiben.

Siehe auch  Heimautomatisierung mit Puppy Linux: Ein DIY-Guide

Vorteile der Integration mit Microsoft 365 Copilot

Die Verbindung mit Microsoft 365 Copilot eröffnet neue Möglichkeiten für den Arbeitsalltag:

  • Natürlichsprachliche Steuerung von Power Pages und M365-Daten
  • Automatisierte Workflows durch Conversational AI
  • Zentrale Verwaltung aller MCP Tools über das Copilot Studio
  • Reduzierter Schulungsaufwand für Endnutzer

Unterstützte Microsoft Cloud-Umgebungen (Global und China)

Der Server arbeitet in zwei Azure Cloud Umgebungen. Die richtige Wahl hängt vom Standort und der Lizenzierung ab.

EigenschaftGlobal (International)China (21Vianet)
Login-Endpunktlogin.microsoftonline.comlogin.chinacloudapi.cn
Graph-Endpunktgraph.microsoft.commicrosoftgraph.chinacloudapi.cn
ZielgruppeInternationale OrganisationenUnternehmen in China
BetreiberMicrosoft Corporation21Vianet Group

Diese Flexibilität stellt sicher, dass Unternehmen weltweit den MCP Server nutzen können – unabhängig von regulatorischen Anforderungen.

Voraussetzungen und Authentifizierungsmethoden

Bevor der MCP Server für Microsoft 365 einsatzbereit ist, müssen bestimmte Voraussetzungen erfüllt sein. Die Authentifizierung spielt dabei eine zentrale Rolle. Je nach Einsatzszenario stehen verschiedene Methoden zur Verfügung – von OAuth 2.0 Azure AD bis hin zur API Key Authentication.

OAuth 2.0 Konfiguration und Redirect URIs

Die OAuth 2.0 Konfiguration benötigt eine Authorization URL, eine Token URL und definierte Scopes. Typische Scopes umfassen openid, profile und anwendungsspezifische Einträge wie api://[App-ID]/mcp. Die Redirect URI Konfiguration erfolgt in der App-Registrierung unter dem Bereich „Authentication“. Für Teams-Integrationen muss die URI https://teams.microsoft.com/api/platform/v1.0/oAuthRedirect hinterlegt werden.

Azure AD App-Registrierung einrichten

Im Azure Portal navigieren Sie zu „Azure Active Directory → App registrations → New registration“. Dort wählen Sie die passende Plattform – etwa „Mobile/Desktop“ oder „Web“. Die MSAL Authentication nutzt diese Registrierung, um Tokens sicher anzufordern und zu validieren.

Unterstützte Authentifizierungstypen

TypBeschreibungEinsatzbereich
OAuthPluginVaultOAuth 2.0 Tokens im Secure Vault von MicrosoftProduktive M365-Umgebungen
ApiKeyPluginVaultAPI Keys mit referenceId im VaultDrittanbieter-Dienste
DynamicClientRegistrationDynamische OAuth-Client-RegistrierungFlexible Szenarien
NoneKeine AuthentifizierungEntwicklung und Tests

Token-Speicherung und Sicherheitsaspekte

Die Token Storage erfolgt standardmäßig über den OS Credential Store via keytar. Als Fallback dient eine dateibasierte Speicherung. Die Pfade lassen sich über Umgebungsvariablen wie MS365_MCP_TOKEN_CACHE_PATH anpassen.

Für produktive Deployments empfiehlt sich die Azure Key Vault Integration mit Managed Identity. Über die Variable MS365_MCP_KEYVAULT_URL wird der Vault angebunden. So bleiben Secrets geschützt – eine wichtige Grundlage für die nachfolgende Installation und Grundkonfiguration des MCP Servers.

Installation und Grundkonfiguration des MCP Servers

Nach der Einrichtung der Authentifizierung geht es an die eigentliche MCP Server Installation. Der schnellste Weg führt über NPX. Mit einem einzigen Befehl steht das Basis-Setup bereit.

Die NPX Installation startet mit dem Befehl npx @softeria/ms-365-mcp-server. Für Organisationen mit Microsoft Teams und SharePoint wird das Flag --org-mode ergänzt. Nutzer der China Cloud fügen den Parameter --cloud china hinzu.

Die Claude Desktop Config wird über die Datei config.json gesteuert. Diese findet sich unter Settings > Developer. Dort wird ein mcpServers-Objekt mit den passenden command– und args-Arrays angelegt.

Siehe auch  Sichere Server mit Linux: Die besten Maßnahmen gegen Cyberangriffe

Für den Einsatz mit Open WebUI empfiehlt sich ein Docker Setup. Dabei wird der HTTP-Transport-Modus über das Flag --http aktiviert. Die Port-Angabe erfolgt direkt im Startbefehl. Dynamic Client Registration ist standardmäßig aktiv.

Die wichtigsten Environment Variables steuern das Verhalten des Servers:

VariableFunktionStandardwert
MS365_MCP_CLIENT_IDClient-ID der Azure AppEigene App-ID
MS365_MCP_CLIENT_SECRETGeheimer Schlüssel der Azure AppEigener Schlüssel
MS365_MCP_TENANT_IDMandanten-ID für Azure ADcommon (Multi-Tenant)
MS365_MCP_OUTPUT_FORMATAusgabeformat mit Token-ReduktionTOON (30–60 % weniger Token)

Der Server unterstützt einen Multi-Account-Modus. Damit lassen sich mehrere Microsoft-Konten parallel nutzen. Ein automatischer Account-Parameter wird bei jedem Tool Call injiziert.

Tool Presets wie mail, calendar oder files laden nur die benötigten Werkzeuge. Statt aller 90+ Tools werden gezielt Kategorien geladen. Das reduziert den Verbindungsaufbau spürbar. Im nächsten Schritt geht es darum, einen Microsoft 365 Copilot Agent zu erstellen und mit dem Server zu verbinden.

Microsoft 365 Copilot Agent erstellen und konfigurieren

Nach der Installation des MCP Servers geht es an die eigentliche Erstellung des Agenten. Der gesamte Prozess umfasst vier zentrale Schritte: vom Anlegen über die Tool-Konfiguration bis hin zur Veröffentlichung. Jeder Schritt baut auf dem vorherigen auf.

Agent in Microsoft Copilot Studio anlegen

Melden Sie sich bei Microsoft Copilot Studio an. Navigieren Sie zu „Create“ und wählen Sie „New agent“. Dieser Copilot Studio Agent dient als Schnittstelle zum Power Pages MCP Server. Geben Sie einen aussagekräftigen Namen und eine Beschreibung ein.

Model Context Protocol Tool hinzufügen

Öffnen Sie den Bereich „Tools“ und klicken Sie auf „Add a tool“. Die MCP Tool Configuration erfordert drei Angaben: Server Name, Beschreibung und die Server-URL des Power Pages MCP Endpoints. Wählen Sie als Authentifizierungstyp „OAuth“ und tragen Sie Client ID, Client Secret, Authorization URL, Token URL sowie die gewünschten Scopes ein. Beim Refresh-URL-Feld genügt ein Punkt als Eingabe.

Connection Manager und erste Verbindung etablieren

Das Connection Manager Setup startet über die Option „Create new connection“. Melden Sie sich mit Ihren Maker-Anmeldedaten an und bestätigen Sie mit „Add and configure“. Erstmalige Nutzer müssen den Link „Open Connection Manager“ verwenden und dort über „Add new connection“ eine neue Verbindung anlegen.

Agent publizieren und Channels einrichten

Das Agent Publishing erfolgt über den „Publish“-Button. Nutzen Sie die Share-Funktion, um Benutzern oder Gruppen Zugriff mit der Viewer-Rolle zu gewähren. Für die Teams Channel Integration navigieren Sie zu „Channels“ und wählen „Add channel“. Die Plattform generiert automatisch Zugangslinks für Microsoft Teams und Microsoft 365 Copilot.

Siehe auch  Cybersicherheit fängt beim Betriebssystem an: Warum ist Ubuntu eine gute Wahl?
SchrittAktionErgebnis
Agent anlegenCreate → New agentNeue Copilot Studio Agent Instanz
Tool hinzufügenTools → Add a tool mit OAuthMCP Tool Configuration abgeschlossen
Verbindung herstellenOpen Connection Manager → Add new connectionConnection Manager Setup aktiv
VeröffentlichenPublish → Share mit Viewer-RolleAgent Publishing erfolgreich
Channels aktivierenChannels → Add channel (Teams, M365)Teams Channel Integration bereit

Erweiterte Konfigurationsoptionen und Tool-Management

Nach der Grundkonfiguration und Agent-Einrichtung bietet der MCP Server zahlreiche Optionen, um den Zugriff auf Microsoft 365 präzise zu steuern. Diese erweiterten Einstellungen sind besonders in Unternehmensumgebungen entscheidend.

Mit Tool Filtering lassen sich gezielt bestimmte Werkzeuge aktivieren. Der Parameter --enabled-tools erlaubt Regex-basierte Muster wie excel|contact. So werden nur die tatsächlich benötigten Tools geladen. Das spart Ressourcen und erhöht die Übersichtlichkeit. Ergänzend dazu steht Dynamic Discovery über das --discovery-Flag bereit. Tools werden dabei erst bei Bedarf geladen. Das reduziert den initialen Token-Verbrauch – ideal für lange Sessions oder kostensensible Setups.

Wer Daten nur abfragen möchte, nutzt den Read-Only Mode. Über --read-only oder die Umgebungsvariable READ_ONLY werden sämtliche Schreiboperationen deaktiviert. Das bietet eine zusätzliche Sicherheitsebene bei reinen Leseabfragen.

Die Preset Categories gruppieren verfügbare Tools in logische Bereiche:

  • Mail, Calendar, Files
  • Excel, Contacts, Tasks
  • OneNote, Search, Users

Per --preset-Parameter lassen sich mehrere Kategorien kommasepariert kombinieren.

Für IT-Abteilungen spielt Permission Management eine zentrale Rolle. Mit --list-permissions zeigt der Server die exakten Microsoft Graph API-Berechtigungen an. Das ist in Enterprise-Umgebungen mit vorab genehmigten Admin-Consented Permissions unverzichtbar.

FunktionParameterNutzen
Tool Filtering–enabled-toolsGezielte Tool-Aktivierung per Regex
Dynamic Discovery–discoveryOn-Demand-Laden, Token-Einsparung
Read-Only Mode–read-onlySchreibschutz für sichere Abfragen
Preset Categories–presetVordefinierte Tool-Gruppen
Permission Management–list-permissionsBerechtigungsübersicht für Admins

Das TOON-Ausgabeformat bietet eine Token-Reduktion von 30 bis 60 Prozent gegenüber Standard-JSON. Gerade bei gleichförmigen Daten wie E-Mail-Listen oder Kalendereinträgen macht sich das bemerkbar. Für Multi-Account-Szenarien ersetzt der integrierte Modus das bisherige N-Prozess-Muster und reduziert die Tool-Duplikation von N×110 auf lediglich 110 Tools. Diese Konfigurationstiefe bildet die Grundlage für eine reibungslose Integration in unterschiedliche Umgebungen und Clients.

Integration in verschiedene Umgebungen und Clients

Der MCP Server lässt sich in mehrere Clients einbinden. Die Claude Desktop Integration erfolgt über eine Anpassung der config.json-Datei. Dort wird ein mcpServers-Objekt definiert, das den stdio-Modus für die Kommunikation nutzt. Alternativ steht der Befehl „claude mcp add“ bereit, der die Konfiguration automatisch übernimmt. Für lokale Entwicklung eignet sich der Befehl „claude mcp add ms“ mit direkter TypeScript-Ausführung über tsx.

Das Open WebUI Setup setzt auf den HTTP Transport Mode mit OAuth 2.1. Dafür wird der Server mit dem Flag „–http“ gestartet. In den Admin-Einstellungen von Open WebUI lässt sich unter „Tools → Add Connection“ eine neue Verbindung vom Typ MCP Streamable HTTP anlegen. Jeder MCP-Request im HTTP Transport Mode benötigt einen Authorization Bearer Token, der gegen die Microsoft Graph API validiert wird. Login- und Logout-Tools sind in diesem Modus standardmäßig deaktiviert.

Für ein Production Deployment bieten sich Docker-Container mit dem Parameter „–public-url“ für ein Reverse-Proxy-Setup an. Azure Container Apps mit Managed Identity ermöglichen eine sichere Token-Verwaltung ohne manuell hinterlegte Zugangsdaten. Das Azure Identity SDK nutzt DefaultAzureCredential mit automatischem Fallback zwischen Umgebungsvariablen, Managed Identity und Azure CLI. Enterprise-Umgebungen sollten OAuth gegenüber API Keys bevorzugen, um Sicherheitsstandards und Compliance-Anforderungen zu erfüllen.

Zum Testen eignet sich der MCP Inspector, der über „npm run inspector“ gestartet wird. Für den OAuth-Flow muss die Redirect URI „http://localhost:6274/oauth/callback“ in der Web-Plattform der Azure-App-Registrierung hinterlegt sein. Nach jeder Code-Änderung ist ein erneutes „npm run build“ erforderlich, bevor der Server neu gestartet wird.

Quellen & weiterführende Dokumentation

Die folgenden Ressourcen basieren auf offizieller Dokumentation von Microsoft sowie der MCP-Spezifikation und dienen als technische Grundlage für die im Artikel beschriebenen Konzepte und Implementierungen.

Über Christian 443 Artikel
35 Jahre alt, gebürtig aus Cuxhaven und bekennender Kaffeejunkie :-). Ich interessiere mich schon seit meiner Kindheit für Technik. Dieses Interesse übertrage ich in meinem beruflichen Leben sowie im Privaten. Viel Spaß beim Stöbern!