SharePoint-Integration
Die SharePoint-Integration verbindet Agenten und Wissensapps mit Microsoft SharePoint – als kontrollierte Wissensquelle (RAG-Index) und als Live-Integration zum Suchen, Lesen und Schreiben von Dateien und Listen. Sie ergänzt den allgemeinen Agent und den RAG Agent.
Abgrenzung:
| Pfad | Zweck | Auth |
|---|---|---|
| RAG-Import / Sync-Jobs | Dokumente und Listen indexieren, im Chat über Wissens-Tools abrufen | App-Registrierung (Application Permission) |
| Live-SharePoint-Tools | zur Laufzeit suchen, lesen, erstellen, aktualisieren, verschieben; Listen pflegen | Delegierte Rechte des angemeldeten Users |

Datenflussdiagramm
Zweck, Zielgruppe und Einsatzbereich
- Zweck: SharePoint als freigegebene Wissensquelle für Chatbots und RAG-Agenten nutzen; optional schreibend (Dateien und Listeneinträge) über Live-Tools.
- Zielgruppe: CoCoAdmins (Site-Allowlist, Graph-App-Berechtigungen) und App-Admins (Importe, Jobs, Tools, Prompt, App-Berechtigungen).
- Einsatzbereich: interne Wissensassistenten mit SharePoint-Ablagen, Recherche-Agenten mit Live-Zugriff, Agenten die SharePoint-Listen pflegen. Nicht geeignet, wenn kein Graph-Zugriff oder keine freigegebenen Sites vorliegen.
Fachlicher Nutzen und erwartete Ergebnisse
- Einheitliche Antworten aus freigegebenen SharePoint-Inhalten statt ad-hoc Suche in Teams/SharePoint.
- Nachvollziehbarkeit: Quellen aus dem Index bzw. sichtbare Tool-Aktionen bei Live-Zugriff.
- Wiederkehrende Aktualisierung über Sync-Jobs; gezielte Schreibzugriffe nur mit freigeschalteten Tools und User-Rechten.
- Listen-Workflows (Einträge suchen, anlegen, bearbeiten) ohne separates Listen-UI in der Plattform.
Erwartetes Ergebnis: Nutzer stellen Fachfragen oder Aufträge; der Agent nutzt Index und/oder Live-Tools innerhalb der Allowlist und liefert prüfbare Ergebnisse.
Voraussetzungen für die Nutzung
Technisch
- Microsoft Entra ID / Microsoft Graph angebunden.
- RAG: Application Permission an der App-Registrierung (UI-Hinweis:
Sites.ReadWrite.All), Embedding-Modell, Blob-Storage; optional OCR. - Live-Tools: delegierte Graph-Scopes inkl.
Sites.ReadWrite.Allfür den angemeldeten User; User muss in SharePoint Lesen/Schreiben dürfen. - Mindestens eine Site in Erlaubte SharePoint Sites (CoCoAdmin).
- App-Typ Agent für Tab Dateien & Jobs; Live-Tools über Tab Tools.
Organisatorisch
- Freigabe der Sites/Ordner/Listen und Klassifizierung der Inhalte.
- Klarstellung: Index ist app-weit für berechtigte Chat-Nutzer; Live-Zugriff folgt den User-Rechten.
Abhängig
Konfiguration des Features und seiner grundlegenden Einstellungen
Pfad: /dashboard/settings/[appid] → Dateien & Jobs bzw. Tools.
1. Erlaubte SharePoint Sites (CoCoAdmin)

- Tab Dateien & Jobs → Segment Erlaubte SharePoint Sites.
- Site-URL eingeben (z. B.
https://contoso.sharepoint.com/sites/MeineSite) → Site hinzufügen. - Die Plattform löst die Site über Graph auf und speichert die Site-ID in
allowedSharepointSites.
Ohne Allowlist schlagen RAG-Importe und Live-Tools fehl. Es gibt kein separates Hub-/Area-Konzept – nur Site-IDs; Ordner und Listen werden pro Import bzw. Tool-Aufruf gewählt.
2. Manueller Import (Erstindexierung)


Unter Dateiquellen → Quelle hinzufügen → SharePoint:
| Eingabe | Verhalten |
|---|---|
| Datei-URL | einzelne Datei herunterladen, extrahieren, chunkén, embedden |
Ordner-URL (:f:/…) | rekursiv alle Dateien im Ordner |
Listen-URL (/lists/) | Listeneinträge textuell indexieren |
Status der Datasource: Wird hochgeladen → Wird verarbeitet… → Bereit / Fehlgeschlagen. Bei Fehler: Verarbeitung wiederholen. Chunk-Qualität: Embeds anzeigen.
3. Synchronisierungs-Jobs


Unter Synchronisierungs-Jobs → Job hinzufügen:
| Feld | Bedeutung |
|---|---|
| Name | Anzeigename des Jobs |
| SharePoint-URL | Freigabe-/Ordner-URL |
| Intervall | Stündlich / Alle 6 Stunden / Täglich / Wöchentlich / Monatlich / Quartalsweise |
| Kategorien | optionale Tags für importierte Quellen |
| Token-Länge pro Chunk | 500–10000, Default 3000 |
| Aktiv | Job läuft im Intervall (Cron prüft minutengenau) |
Zusätzlich: Jetzt ausführen (Play), Bearbeiten, Löschen. Beim Löschen eines Jobs bleiben bereits importierte Dateien erhalten.
4. Live-SharePoint-Tools

Tab Tools → Tool erstellen → Typ aus Kategorie SharePoint:
| Tool-Typ (UI) | Funktion |
|---|---|
| SharePoint: Dateien suchen | Suche oder Ordner-Listing (max. 5 Sites, 10 Treffer/Site) |
| SharePoint: Datei lesen | Text oder OCR/Extraktion (Office/PDF) |
| SharePoint: Datei erstellen | Text, Base64 oder Session-Datei |
| SharePoint: Datei aktualisieren | Inhalt nur bei Text-Dateien (txt, md, json, csv) |
| SharePoint: Datei umbenennen/verschieben | Rename/Move (keine Ordner) |
| SharePoint: Listen suchen | Listen, Schema, Items |
| SharePoint: Listeneintrag erstellen | Felder = interne Spaltennamen |
| SharePoint: Listeneintrag bearbeiten | Patch der Felder |
Erlaubte Sites werden bei aktivierten SharePoint-Tools in den System-Prompt injiziert. Aktionen anzeigen empfohlen.
Sinnvolle Defaults
| Einstellung | Empfehlung |
|---|---|
| Allowlist | nur benötigte Sites |
| Wissens-Tool | rag / Hybrid zusätzlich zu Live-Tools |
| Sync-Intervall | Start täglich; kritische Ordner häufiger |
| Chunk-Token | 3000 |
| Schreib-Tools | nur wenn fachlich nötig; Prompt mit Freigabegrenzen |
| App einschränken | an |
Rollen- und Berechtigungskonzept
| Rolle | Darf |
|---|---|
| CoCoAdmin | Allowlist pflegen, Site auflösen, alle App-Einstellungen |
| App-Admin | Importe, Refresh, Sync-Jobs, Tools, Prompt, Berechtigungen |
| App-User | Chat; Live-Tools mit eigenen Graph-/SharePoint-Rechten |
| Authentifizierte Nutzer | uneingeschränkte Apps (App einschränken aus) |
Effektive Live-Rechte = Allowlist ∩ Graph-Rechte des Users. Der RAG-Index ist nicht user-delegated: berechtigte App-Nutzer können indexierte Inhalte abrufen.
Konfiguration von Verhaltensregeln, Vorgaben und Einschränkungen
Im System-Prompt festlegen:
- Wann Index-Suche vs. Live-SharePoint zu nutzen ist.
- Schreibgrenzen (z. B. nur Entwürfe, keine Löschung – Löschen ist ohnehin kein Tool).
- Umgang mit fehlenden Treffern und widersprüchlichen Quellen.
- Pflicht, Quellen/Aktionen nachvollziehbar zu machen.
Erzwungen: Allowlist, Tool-Schemas, Dateigrößen, Default Document Library (kein Library-Picker), Text-only In-place-Update.
Verwaltung und Pflege der verwendeten Daten-, Wissens- oder Kontextquellen
| Aufgabe | Vorgehen |
|---|---|
| Sites freigeben | Allowlist (CoCoAdmin) |
| Erstindexierung | manueller SharePoint-Import |
| Laufende Pflege | Sync-Jobs + Ausgewählte aktualisieren |
| Neu im Ordner | Job legt neue Datasources an |
| Geändert | Change-Detection über lastModifiedDateTime → Neuindexierung |
| Unverändert | Skip |
| Verschoben (URL ändert sich) | alte Datasource bleibt; neue URL = neu |
| In SharePoint gelöscht | keine Auto-Entfernung aus dem Index – manuell löschen |
| Live-Inhalte | nicht im Index; nur zur Laufzeit |
Bibliotheken: Live- und Pfad-APIs nutzen die Standard-Dokumentenbibliothek der Site. Weitere Libraries nicht über UI wählbar.
Definition der zulässigen Eingaben, Ausgaben und Verarbeitungsgrenzen
RAG / Import
- Formate u. a. PDF, Office, TXT, MD, CSV, JSON, Bilder (OCR wo nötig).
- Upload-/Dateilimit allgemein 60 MB.
- Chunk-Token 500–10000.
Live lesen
- Text:
txt,md,json,csv(bis 5 MB). - Office/PDF mit Extraktion/OCR (bis 25 MB):
docx,xlsx,pptx,doc,xls,ppt,pdf.
Live schreiben
- Erstellen: Text oder Binary/Session-Datei.
- Aktualisieren: nur Text-Extensions.
- Listen: erstellen/bearbeiten von Items; Document Libraries werden bei List-Listing ausgefiltert.
Nicht verfügbar
- Datei/Liste/Ordner löschen als Tool; Ordner anlegen; Graph-Webhooks; Multi-Library-UI;
Sites.Selectedals Plattformmodell.
Konfiguration angebundener Systeme, Tools, Schnittstellen oder Integrationen
| System | Zweck |
|---|---|
| Microsoft Graph (Application) | Site-Resolve, RAG-Download, Sync-Jobs |
| Microsoft Graph (Delegated) | Live-Tools; Tokens AES-verschlüsselt am User |
| Blob-Storage | Quelldateien {appId}/{datasourceId} |
| Embedding-Provider | Vektorindex |
| Optional OCR / Reranking | Extraktion bzw. Hybrid RAG |
Secrets nur in der System-/Provider-Konfiguration – niemals im Prompt.
Umgang mit vertraulichen, personenbezogenen oder besonders schützenswerten Daten
- Nur freigegebene Sites und Ordner indexieren; personenbezogene Inhalte nur mit Rechtsgrundlage und
App einschränken. - Indexierte Chunks liegen im Embed-Store (Zugriff über App-Berechtigungen) – nicht user-delegated wie Live-Tools.
- Keine Klartext-Geheimnisse in Dokumenten oder Prompts.
- Schreib-Tools können geschäftskritische Listen/Dateien ändern – eng halten und fachlich freigeben.
Monitoring von Verfügbarkeit, Qualität, Fehlerraten und technischen Auffälligkeiten
- Datasource-Status Fehlgeschlagen und Retry.
- Job-
lastRunStatus:running/success/failedinkl. Meldung; Stale-Lock nach ca. 2 h. - Tab Logs bei Pipeline-/Graph-Fehlern.
- Chat: fehlgeschlagene Tool-Schritte bei Aktionen anzeigen.
- Typische Fehler: Site nicht erlaubt, User ohne Graph-Recht, OCR/Extraktion fehlgeschlagen, Allowlist leer.
Monitoring von Nutzung, Ressourcenverbrauch, Token-Verbrauch und Kosten
- Tab Statistik: Nachrichten, Token, Kosten (soweit hinterlegt).
- Embedding-Kosten steigen mit Importvolumen und Sync-Frequenz.
- Live-Tools und OCR erhöhen Token-/Laufzeitverbrauch;
maxStepsbegrenzen.
Test- und Abnahmeverfahren vor der produktiven Freigabe
Checkliste:
- Allowlist mit Ziel-Sites gesetzt (CoCoAdmin).
- Repräsentative Datei/Ordner/Liste manuell importiert → Status Bereit.
- Sync-Job angelegt, einmal Jetzt ausführen, Intervall und Skip bei Unverändert geprüft.
- Wissens-Tool liefert Treffer; Quellen anzeigen geprüft.
- Live: suchen/lesen mit User A (berechtigt) und User B (ohne SharePoint-Recht) → erwartetes Verhalten.
- Schreib-Tools nur wenn freigegeben: Listeneintrag oder Textdatei in Testordner.
- Geänderte Datei aktualisiert Index; gelöschte SharePoint-Datei manuell aus Dateiquellen entfernt.
- Bei Problemen: Job deaktivieren, Tools entfernen, App einschränken; Rollback = Allowlist/Tools zurücknehmen.