Skip to main content Skip to page footer

Open WebUI

Open WebUI ist eine selbst betriebene Chat-Oberfläche, die typischerweise mit Ollama als lokalem Inferenz-Backend läuft. Damit lässt sich AI Suite MCP vollständig ohne externen Anbieter testen. Wo Open WebUI und Ollama laufen, bestimmst du selbst, entsprechend musst du auch selbst dafür sorgen, dass Open WebUI den TYPO3-Host erreicht und dessen Zertifikat anerkennt.

Die Einrichtung der Container, das Netzwerk, TLS und eine etwaige GPU-Beschleunigung sind nicht Teil dieser Anleitung. Die Beispiele verwenden das Modell qwen2.5:7b. Die Schritte bleiben für jedes andere Modell gleich, das Tool-Aufrufe beherrscht, etwa llama3.1:8b oder mistral-nemo. Für einen ersten Funktionstest reicht auch qwen2.5:3b.

Voraussetzungen

  • enableMcp ist aktiviert (siehe Konfiguration).
  • Open WebUI ab Version 0.6.31, dort ist MCP über Streamable HTTP eingebaut (siehe Anleitung von Open WebUI zu MCP). Tool-Server anlegen kann nur ein Admin.
  • mcpAllowedRedirectUris und mcpAllowedOrigins können in der Entwicklung leer bleiben. Produktiv gehört in mcpAllowedRedirectUris das Präfix [openwebui-url]/oauth/clients/, unter dem Open WebUI pro Verbindung die Callback-Adresse [openwebui-url]/oauth/clients/[connection-id]/callback bildet, und in mcpAllowedOrigins die Herkunft [openwebui-url]. Setze WEBUI_URL in Open WebUI auf die öffentliche Adresse der Installation, sonst entsteht die Callback-Adresse mit einem falschen Host. [openwebui-url]/oauth/oidc/callback gehört zur SSO-Anmeldung bei Open WebUI selbst und ist hier nicht gemeint.
  • mcpAllowedClientIds bleibt leer.
  • Die Backend-Gruppe besitzt enable_mcp_access und die benötigten Feature-Rechte (siehe Berechtigungen & Scopes).
  • In Ollama liegt ein Modell, das Tool-Aufrufe beherrscht, zum Beispiel per ollama pull qwen2.5:7b.

Beim ersten Aufruf von [openwebui-url] legst du ein Konto an. Je nach Konfiguration wird der erste Benutzer automatisch Administrator. Dieses Konto ist unabhängig vom TYPO3-Backend-Benutzer. Prüfe anschließend in den Admin-Einstellungen von Open WebUI, dass die Verbindung zu Ollama steht.

Tool-Server einrichten

1. Verbindung anlegen. Lege als Admin unter den Integrationseinstellungen einen externen Tool-Server vom Typ MCP Streamable HTTP an. Wo die Einstellungen liegen und welche Felder der Dialog zeigt, beschreibt die Anleitung von Open WebUI zu MCP. Für TYPO3 kommt es auf diese Angaben an:

AngabeWert
NameAI Suite MCP (so erscheint der Server später in der Tool-Auswahl)
TypMCP Streamable HTTP
URL[typo3-url]/aisuite-mcp, ohne Site-Präfix
AuthentifizierungOAuth 2.1
Connection IDai-suite-mcp. Open WebUI bildet daraus die Callback-Adresse, ändere die ID deshalb nach dem Registrieren nicht mehr.

2. Client registrieren. Beim Registrieren ruft Open WebUI POST [typo3-url]/aisuite-mcp/oauth/register auf. Speichere die Verbindung danach, damit die OAuth-Angaben erhalten bleiben.

3. Authentifizieren. Starte an der gespeicherten Verbindung die OAuth-Anmeldung. Es öffnet sich die Autorisierungsseite unter [typo3-url]/aisuite-mcp/oauth/authorize. Nach der TYPO3-Anmeldung und der Zustimmung zu den Scopes landet das Token in Open WebUI.

4. Zugriff freigeben. Standardmäßig sieht nur der Eigentümer der Verbindung sie in der Tool-Auswahl. Über die Zugriffssteuerung der Verbindung lässt sie sich für alle Benutzer oder für einzelne Benutzer und Gruppen freigeben.

Tools pro Chat aktivieren

MCP-Tool-Server sind nicht automatisch in jeder Unterhaltung aktiv, und Tool-Server mit OAuth lassen sich nicht als Standard-Tools eines Modells hinterlegen. Starte einen neuen Chat, wähle das Modell und schalte in der Tool-Auswahl unter dem Eingabefeld AI Suite MCP ein. Erst dann schickt Open WebUI die Tool-Definitionen mit der Anfrage an Ollama.

Fehlerbehebung

„Registration failed“ beim Registrieren des Clients. Die von Open WebUI verwendete aiohttp-Bibliothek kann das Zertifikat des TYPO3-Hosts nicht prüfen, typisch bei selbstsignierten Entwicklungszertifikaten. In der Umgebung von Open WebUI AIOHTTP_CLIENT_SESSION_SSL=false und AIOHTTP_CLIENT_SESSION_TOOL_SERVER_SSL=false setzen.

Interner Serverfehler beim Authentifizieren, im Log steht SSL: CERTIFICATE_VERIFY_FAILED. Die Bibliothek httpx ignoriert diese Umgebungsvariablen und prüft selbst. Hier hilft nur, die Root-CA des TYPO3-Hosts im Container bekannt zu machen, also einbinden, mit dem certifi-Bündel zusammenführen und SSL_CERT_FILE beziehungsweise REQUESTS_CA_BUNDLE auf die zusammengeführte Datei zeigen lassen.

Das Modell fabuliert über MCP, obwohl der Tool-Server verbunden ist. Ollama hat den Prompt abgeschnitten und dabei die Tool-Definitionen verloren. Kontextfenster erhöhen, siehe oben.

Das Modell behauptet, es habe keinen MCP-Zugriff. Der Tool-Server ist im aktuellen Chat nicht eingeschaltet.

Zum Mitlesen eignen sich das uvicorn-Log von Open WebUI für Fehler bei Registrierung und OAuth sowie das Ollama-Log, das abgeschnittene Prompts und die tatsächlich abgeschickten Tool-Aufrufe zeigt. Dazu zwei Betriebshinweise. Modell-Cache und Open-WebUI-Datenbank gehören in persistente Volumes, und WEBUI_SECRET_KEY muss stabil bleiben. Ändert sich der Schlüssel, sind alle gespeicherten OAuth-Tokens unbrauchbar, weil Open WebUI sie damit verschlüsselt. Weitere clientunabhängige Fälle sind unter Clients verbinden gesammelt.