MCP-Server
Mit dem Schulungstool-MCP-Server verwalten KI-Agents Benutzer, Gruppen, Kurse und Teilnahmen Ihres Kontos über das Model Context Protocol (MCP). Er funktioniert mit jedem Client, der Remote-MCP-Server über Streamable HTTP unterstützt, etwa Claude, Claude Code, Microsoft Copilot Studio, Cursor, VS Code, Gemini CLI und n8n.
https://mcp.schulungstool.de/mcp- Transport: Streamable HTTP (kein SSE-Endpunkt)
- Authentifizierung: Ihr API-Schlüssel als Request-Header
- Geltungsbereich: das Konto des Schlüssels; alle Tools arbeiten ausschließlich auf dessen Daten
Authentifizierung
Abschnitt betitelt „Authentifizierung“Der MCP-Server nutzt dieselben API-Schlüssel wie die REST-API. Einen Schlüssel generieren Sie in Ihrem Administrationsbereich unter Einstellungen > Erweiterte Einstellungen > Entwickleroptionen.
Konfigurieren Sie Ihren Client so, dass er den Schlüssel im Authorization-Header
mitsendet:
Authorization: Bearer <API-Schlüssel>Token <API-Schlüssel> wird ebenfalls akzeptiert. Wo ein Client den rohen Header-Wert
verlangt, tippen Sie das Präfix Bearer mit ein. Behandeln Sie den Schlüssel wie ein
Passwort: Nutzen Sie Umgebungsvariablen oder den Geheimnisspeicher Ihres Clients, und
committen Sie ihn nie in ein Repository.
Zugriffsrechte
Abschnitt betitelt „Zugriffsrechte“Die Zugriffsrechte des Schlüssels
bestimmen, welche Tools funktionieren: Jedes Tool arbeitet mit genau den Rechten, die
der Schlüssel trägt, nicht mehr. Die Tool-Tabelle unten nennt je Tool das benötigte
Recht; für den vollen Werkzeugkasten braucht ein Schlüssel users:write,
groups:write, courses:read und participations:write.
Nutzen Sie je Agent einen eigenen Schlüssel und vergeben Sie nur, was seine Aufgaben
brauchen: Ein Agent, der nur Fragen zum Schulungsstand beantwortet, kommt mit
users:read, groups:read, courses:read und participations:read aus. Scheitert
ein Tool-Aufruf an einem fehlenden Recht, nennt der Fehler das Recht; ein
Administrator kann es im Administrationsbereich vergeben, die Änderung gilt sofort.
Das Tool get_key_info zeigt, welche Rechte der verbundene Schlüssel trägt und
welche Tools damit verfügbar sind.
Einrichtung je Client
Abschnitt betitelt „Einrichtung je Client“Claude (claude.ai)
Abschnitt betitelt „Claude (claude.ai)“Einstellungen > Connectoren > Eigenen Connector hinzufügen (Stand: Oktober 2026):
Name und Server-URL https://mcp.schulungstool.de/mcp eintragen, als Authentifizierung
Keine Anmeldung wählen und den Request-Header Authorization mit dem Wert
Bearer <API-Schlüssel> hinterlegen (inklusive des Präfixes Bearer ). Den Connector
anschließend pro Unterhaltung über das Plus-Menü aktivieren.
Hinweise: Request-Header für eigene Connectoren werden derzeit schrittweise freigeschaltet und stehen noch nicht in jeder Organisation zur Verfügung. Die Authentifizierungs-Einstellungen lassen sich nachträglich nicht ändern; legen Sie den Connector in dem Fall neu an. Auf Team- und Enterprise-Plänen teilen sich alle Mitglieder den Schlüssel eines organisationsweiten Connectors.
Claude Code
Abschnitt betitelt „Claude Code“claude mcp add --transport http schulungstool https://mcp.schulungstool.de/mcp \ --header "Authorization: Bearer ${SCHULUNGSTOOL_API_KEY}"Oder je Projekt in .mcp.json, mit dem Schlüssel in einer Umgebungsvariable:
{ "mcpServers": { "schulungstool": { "type": "http", "url": "https://mcp.schulungstool.de/mcp", "headers": { "Authorization": "Bearer ${SCHULUNGSTOOL_API_KEY}" } } }}Die Verbindung prüfen Sie mit /mcp.
ChatGPT
Abschnitt betitelt „ChatGPT“ChatGPT-Connectoren unterstützen nur OAuth oder keine Authentifizierung; ein Feld für einen statischen API-Schlüssel-Header gibt es nicht. Der Schulungstool-MCP-Server authentifiziert derzeit ausschließlich per API-Schlüssel und lässt sich deshalb noch nicht aus ChatGPT nutzen.
In ~/.cursor/mcp.json (global) oder .cursor/mcp.json (je Projekt):
{ "mcpServers": { "schulungstool": { "url": "https://mcp.schulungstool.de/mcp", "headers": { "Authorization": "Bearer <API-Schlüssel>" } } }}VS Code
Abschnitt betitelt „VS Code“Befehlspalette > MCP: Add Server > HTTP, oder in .vscode/mcp.json mit dem
Schlüssel als maskierter Input-Variable:
{ "inputs": [ { "id": "schulungstool-key", "type": "promptString", "description": "Schulungstool API-Schlüssel", "password": true } ], "servers": { "schulungstool": { "type": "http", "url": "https://mcp.schulungstool.de/mcp", "headers": { "Authorization": "Bearer ${input:schulungstool-key}" } } }}Microsoft Copilot Studio
Abschnitt betitelt „Microsoft Copilot Studio“Agent > Tools > Add a tool > New tool > Model Context Protocol: Name, Beschreibung
und Server-URL eintragen, Authentifizierung API key mit Typ Header und Header-Name
Authorization wählen, dann eine Connection anlegen und als Wert
Bearer <API-Schlüssel> eingeben. Voraussetzung ist aktive generative Orchestrierung;
DLP-Richtlinien der Power Platform können eigene Connectoren blockieren.
Gemini CLI
Abschnitt betitelt „Gemini CLI“In ~/.gemini/settings.json:
{ "mcpServers": { "schulungstool": { "httpUrl": "https://mcp.schulungstool.de/mcp", "headers": { "Authorization": "Bearer $SCHULUNGSTOOL_API_KEY" } } }}Fügen Sie einem AI-Agent-Node das Tool MCP Client Tool hinzu, tragen Sie die Endpoint-URL ein, wählen Sie die Authentifizierung Bearer und hinterlegen Sie den API-Schlüssel als Credential.
Einrichtung prüfen
Abschnitt betitelt „Einrichtung prüfen“Stellen Sie nach dem Verbinden eine risikofreie Frage, zum Beispiel:
Welche Zugriffsrechte hat mein Schulungstool-Schlüssel?
Der Agent sollte get_key_info aufrufen und die Rechte des Schlüssels auflisten; das
Tool funktioniert mit jedem gültigen Schlüssel unabhängig von dessen Rechten. Dann
steht die Verbindung.
Alle Tools liefern kompaktes JSON mit stabilen IDs. Such-Tools geben eine Seite je
Aufruf zurück; solange has_next_page wahr ist, holen Sie mit page weitere Seiten.
| Tool | Typ | Zugriffsrecht | Zweck |
|---|---|---|---|
get_key_info |
Lesen | keins | Name, Zugriffsrechte und verfügbare Tools des verbundenen API-Schlüssels |
search_users |
Lesen | users:read |
Benutzer nach Name, E-Mail oder Benutzername finden |
get_user |
Lesen | users:read, groups:read |
Benutzerdetails inklusive Gruppenmitgliedschaften |
create_user |
Schreiben | users:write |
Benutzer mit Benutzername und Passwort anlegen |
invite_user |
Schreiben | users:write |
Benutzer per E-Mail einladen (versendet eine Einladungsmail) |
update_user |
Schreiben | users:write |
Felder eines bestehenden Benutzers ändern |
search_groups |
Lesen | groups:read |
Gruppen nach Name finden |
get_group |
Lesen | groups:read, users:read |
Gruppendetails inklusive einer Seite der Mitglieder |
add_group_member |
Schreiben | groups:write |
Benutzer zu einer Gruppe hinzufügen |
remove_group_member |
Schreiben | groups:write |
Benutzer aus einer Gruppe entfernen |
search_courses |
Lesen | courses:read |
Kurse nach Name oder Kategorie finden |
get_course |
Lesen | courses:read |
Kursdetails |
enroll_user |
Schreiben | participations:write |
Benutzer in einen Kurs einschreiben (legt eine Teilnahme an) |
get_participations |
Lesen | participations:read |
Teilnahmen auflisten, filterbar nach Benutzer, Kurs, Status |
get_certificate_info |
Lesen | participations:read |
Abschluss-Status und Zertifikatsverfügbarkeit einer Teilnahme |
get_key_info funktioniert mit jedem gültigen Schlüssel unabhängig von dessen
Rechten und eignet sich zugleich als Verbindungstest. Tools, die zwei Ressourcen auf
einmal lesen (etwa get_user mit den Gruppenmitgliedschaften), brauchen beide
genannten Rechte.
Beispiel-Prompts:
- „Lege ein Konto für Erika Musterfrau (erika.musterfrau@example.com) an und schreibe sie in den Datenschutz-Kurs ein.”
- „Welche Teilnehmer des Erste-Hilfe-Kurses haben ihn noch nicht abgeschlossen?”
- „Füge alle aus der Gruppe Vertrieb dem neuen Compliance-Kurs hinzu.”
Das Löschen von Benutzern ist über MCP bewusst nicht möglich; nutzen Sie dafür den Administrationsbereich oder die REST-API.
Limits und Verhalten
Abschnitt betitelt „Limits und Verhalten“- Die Durchsatzbegrenzung der REST-API gilt je Konto; MCP-Aufrufe zählen wie API-Anfragen.
- Jeder Tool-Aufruf landet im API-Protokoll Ihres Kontos mit dem User-Agent
schulungstool-mcp/<Version>; Agent-Aktivität lässt sich dort nachvollziehen. - Tool-Namen, Parameter und Ergebnisfelder behandeln wir wie API-Verträge: Breaking Changes kündigen wir im Changelog mit Übergangsfrist an.
- Der Server ist zustandslos; er speichert weder eigene Daten noch Gesprächsverläufe.
Fehlerbehebung
Abschnitt betitelt „Fehlerbehebung“- 401 Unauthorized: Der Header fehlt oder ist fehlerhaft. Prüfen Sie, ob der Wert
das Präfix
Bearer(oderToken) und den vollständigen, 128 Zeichen langen Schlüssel enthält. - 403 mit „Required access right”: Dem Schlüssel fehlt das Recht, das das Tool
braucht; der Fehler nennt es. Ein Administrator kann es unter Einstellungen >
Erweiterte Einstellungen > Entwickleroptionen vergeben, die Änderung gilt sofort.
get_key_infozeigt die aktuellen Rechte. - 429 Too Many Requests: Durchsatzgrenze erreicht oder zu viele fehlgeschlagene
Authentifizierungsversuche für diesen Schlüssel. Warten Sie die in
Retry-Aftergenannte Zeit ab. - Der Client startet einen OAuth-Flow oder meldet eine fehlende Anmeldung: Stellen
Sie sicher, dass die Server-URL exakt
https://mcp.schulungstool.de/mcplautet und die Authentifizierung als statischer Header konfiguriert ist (Keine Anmeldung auf claude.ai). OAuth bietet der Server noch nicht an. - Tool-Aufrufe scheitern mit Validierungsfehlern: Die Fehlermeldung nennt die betroffenen Felder und die nötige Korrektur; Agents beheben das in der Regel selbst.