Skip to content

Projektübersicht: MCP-Server für Microsoft SharePoint (PoC)

This is our first guest blog post by our colleague Andreas Klauda from E020-05. In this detailed post he describes how he successfully used Aqueduct with a local stack to increase his teams productivity by integrating his own MCP server to transform SharePoint into an agentic knowledge base.

German only:


Motivation und Zielsetzung

Die Entwicklung dieses MCP-Servers (Model Context Protocol) verfolgt primär drei strategische Ziele:

  1. Evaluierung lokaler LLMs: Testen der Leistungsfähigkeit und Latenz von lokal gehosteten Sprachmodellen bei der Verarbeitung komplexer Datenstrukturen.
  2. Produktivitätssteigerung: Automatisierung repetitiver Such- und Aggregationsvorgänge für das interne Team.
  3. Wissenserweiterung: Tiefgreifende Auseinandersetzung mit der MCP-Spezifikation, LLM-Integration und der Microsoft Graph/SharePoint API.

Problemstellung: Defizite der nativen SharePoint-Suche

Die integrierte Suchfunktion von SharePoint stößt bei professionellen Anforderungen an systemimmanente Grenzen:

  • Eingeschränkte domänenübergreifende Suche: Eine effiziente, kontextbasierte Suche über mehrere Site Collections hinweg ist nativ schwer konfigurierbar.
  • Fehlendes semantisches Verständnis: Die Suche basiert primär auf Keyword-Matching. Komplexe, natürlichsprachige Abfragen (z. B. "Erstelle eine Liste aller Produkte, die einen Lizenzserver benötigen") können nicht aufgelöst werden.
  • Keine Datenaggregation: SharePoint liefert Dokumente, aber keine konsolidierten Antworten oder Tabellen aus extrahierten Informationen (z. B. Versionslisten über verschiedene Dokumentstände hinweg).

Lösungsansatz: Der MCP-Server als Brückentechnologie

Durch die Implementierung eines MCP-Servers fungiert das LLM nicht nur als Textgenerator, sondern als aktiver Agent mit Lesezugriff auf SharePoint-Inhalte.

Technische Kernkompetenzen des PoC:

  • Semantische Abfragen: Durchführung von Suchanfragen, die den Kontext und die Intention verstehen, statt nur Zeichenfolgen zu vergleichen.
  • Extraktion & Strukturierung: Automatisierte Erstellung von Listen, Versionsübersichten und technischen Abhängigkeiten direkt aus den SharePoint-Seiten und -Dokumenten.
  • Local LLM Integration: Gewährleistung der Datenhoheit durch die Nutzung lokaler Modelle, die via MCP auf die Schnittstellen zugreifen.

Aktueller Status und Erkenntnisse (Proof of Concept)

Das Projekt befindet sich im Stadium eines Proof of Concept (PoC). Die ersten Testergebnisse zeigen eine überraschend hohe Präzision bei der Informationsrückgewinnung (Retrieval).

Key Learnings

  • API-Komplexität: Die SharePoint-Schnittstellen (Graph API) erfordern ein präzises Error-Handling und eine komplexe Authentifizierungslogik, um konsistente Daten zu liefern.
  • Leistungsfähigkeit: Die Kombination aus MCP und LLM transformiert SharePoint von einem statischen Datengrab in eine dynamische Wissensdatenbank.

Sicherheitsaspekte und Zugriffskontrolle

Ein kritischer Punkt für den produktiven Einsatz ist das Berechtigungsmanagement. Aktuell ist der Server nicht für Endkunden oder das Service Center geeignet, da:

  1. Berechtigungseskalation: Das LLM könnte Informationen (z. B. Lizenzserver-Konfigurationen) aggregieren, die einer strikten Zugriffskontrolle unterliegen.
  2. Authentifizierungs-Mapping: Eine granulare Abbildung von Benutzerrechten des anfragenden Users auf die API-Abfragen des MCP-Servers ist für einen Multi-User-Betrieb zwingend erforderlich.
  3. Compliance: Sensible technische Details dürfen erst nach Validierung des Kundenstatus (z. B. Kaufnachweis) freigegeben werden.

Roadmap und Ausblick

Das Projekt bietet signifikantes Ausbaupotenzial:

  • Fine-grained Access Control: Implementierung einer Identitätsprüfung auf Basis von OAuth2-Scopes.
  • Erweiterte Indizierung: Optimierung der Chunking-Strategien für umfangreiche SharePoint-Bibliotheken.
  • Hybrid-Suche: Kombination aus BM25 (Keyword) und Vector Search (Semantic) für noch präzisere Ergebnisse.

Read the technical details →