Berechtigungen & Scopes
Jede Aktion über die der TYPO3 AI Suite MCP-Server läuft als der Backend-Benutzer, für den das Token bzw. die OAuth-Freigabe ausgestellt wurde, und zwar mit dessen vollen TYPO3-Rechten. Seiten- und Datei-Mounts, Tabellen- und Feldrechte sowie die Feature- und Modelrechte der AI Suite werden dabei unverändert durchgesetzt.
Die OAuth-Scopes wirken zusätzlich obendrauf. Sie können den Zugriff nur einschränken, niemals über die TYPO3-Rechte des Benutzers hinaus erweitern.
Backend-Berechtigung
Damit ein Benutzer den TYPO3 AI Suite MCP-Server überhaupt verwenden darf, muss seine Backend-Gruppe das Feature-Recht enable_mcp_access besitzen. Fehlt es, verbindet sich der Client zwar, aber jeder Tool-Aufruf wird mit „keine Berechtigung“ abgewiesen.
Welche Tools darüber hinaus für die Nutzung von AI Suite Features zur Verfügung stehen, entscheiden die jeweiligen AI Suite-Feature-Rechte (z. B. Metadaten-Generierung, Übersetzung, Bildgenerierung). Ohne das passende Recht taucht das betroffene Tool gar nicht erst in der Tool-Liste des Models auf. Die Rechte werden wie gewohnt pro Backend-Gruppe vergeben, siehe Berechtigungsmanagement.
Diese Feature-Rechte werden für TYPO3 AI Suite MCP benötigt:
- enable_mcp_access: Pflicht. Hauptschalter für MCP und das MCP-Dashboard im Backend-Modul, wird bei jeder Anfrage direkt geprüft. Kein OAuth-Scope entspricht diesem Recht.
- enable_metadata_generation: für batchGenerateMetadata, generateFileMetadata, batchGenerateFileMetadata, batchGenerateFolderMetadata.
- enable_translation: für alle Übersetzungs-Tools mit externen KI-Anbietern.
- enable_image_generation: für generateImage.
- enable_massaction_generation: für die Batch- und Hintergrund-Tools.
- enable_mcp_media_upload: für uploadMedia.
- enable_mcp_rendered_page_read: für readRenderedPage.
- enable_audit: für die sieben Audit-Tools, seit Version 0.8.0.
Ein Recht gilt normalerweise für einen ganzen Scope. Davon gibt es zwei Ausnahmen. Die erste ist readRenderedPage. Das Tool sitzt im rechtefreien Scope mcp:read, braucht aber zusätzlich enable_mcp_rendered_page_read. Es rendert die Seite über eine Backend-Vorschau-Sitzung des MCP-Benutzers und liefert damit auch versteckte Seiten, unveröffentlichte Seiten und Workspace-Entwürfe, also Inhalte, an die ein einfacher Abruf der öffentlichen URL nie kommt. Das Recht sitzt am Tool und nicht am Scope, weil sonst mit einem Schalter alle lesenden Tools wegfallen würden. Ohne das Recht erscheint das Tool nicht in der Tool-Liste, ein erzwungener Aufruf endet mit einem Berechtigungsfehler. Die Seitenrechte des Benutzers gelten unverändert obendrauf.
Die zweite Ausnahme sind die Audit-Tools, die mit Version 0.8.0 hinzugekommen sind. Auch sie sitzen im Scope mcp:read, weil sie gegenüber TYPO3 nur lesen, und brauchen dennoch das eigene Recht enable_audit. Der Grund ist der umgekehrte Weg: Sie schicken die Seiten-URL und damit den Seiteninhalt an die AutoDudes-Audit-Infrastruktur, die Daten verlassen also die TYPO3-Instanz. Das Recht deckt alle sieben Tools ab, auch das kostenfreie readAuditResults. Ohne das Recht erscheinen sie nicht in der Tool-Liste.
Verwechslungsgefahr: Die AI Suite selbst hat seit 14.5.0 ebenfalls ein Recht namens enable_audit für ihr Audit-Modul im Backend. Beide tragen denselben Schlüssel, sitzen aber in unterschiedlichen Extensions und sind getrennt zu setzen.
OAuth-Scopes
Jedes Tool ist einem Scope zugeordnet. Ein Scope wird einem Token nur gewährt, wenn die Backend-Gruppe mindestens eines der zugehörigen AI Suite-Feature-Rechte besitzt.
| Scope | Erforderliche AI Suite-Berechtigung | Deckt ab |
|---|---|---|
mcp:read | keine (Basis) | Alle lesenden und erkundenden Tools |
mcp:write | keine (Vorschau und Bestätigung je Tool erzwungen) | Datensatz-CRUD über den DataHandler |
mcp:generate | enable_metadata_generation, enable_content_element_generation, enable_pages_generation | Generierung von Inhalten, Metadaten, Seitenbäumen und Landingpages |
mcp:translate | enable_translation | Alle Übersetzungs-Tools |
mcp:image | enable_image_generation | KI-Bildgenerierung |
mcp:media | enable_mcp_media_upload | Medien-Upload nach FAL (uploadMedia) |
mcp:workflow | enable_massaction_generation | Batch- und Hintergrund-Task-Tools |
Mehr Scopes gibt es nicht. Leichte Sprache und das DeepL-Glossar sind keine eigenen Scopes, sondern Bestandteil der Übersetzungs-Tools unter mcp:translate: Das Glossar der Site wird automatisch angewendet, Leichte Sprache läuft über dieselben Tools. Welche Scopes ein Token tatsächlich erhält, listet die Zustimmungsseite beim Verbinden auf.