🛰️ MCP Support
Diese Dokumentation erklärt, wie Sie den MCP (Model Context Protocol)-zu-OpenAPI-Proxy-Server (mcpo) von Open WebUI einfach einrichten und bereitstellen. Erfahren Sie, wie Sie MCP-basierte Tool-Server mühelos über standardmäßige, bekannte OpenAPI-Endpunkte verfügbar machen können, die für Endbenutzer und Entwickler geeignet sind.
📌 Was ist der MCP Proxy Server?
Der MCP-zu-OpenAPI-Proxy-Server ermöglicht es Ihnen, mit MCP (Model Context Protocol) implementierte Tool-Server direkt über Standard-REST/OpenAPI-APIs zu nutzen – ohne die Notwendigkeit, unbekannte oder komplizierte benutzerdefinierte Protokolle zu verwalten. Wenn Sie ein Endbenutzer oder Anwendungsentwickler sind, bedeutet dies, dass Sie einfach mit leistungsstarken MCP-basierten Werkzeugen direkt über vertraute REST-ähnliche Endpunkte interagieren können.
💡 Warum mcpo verwenden?
Obwohl MCP-Tool-Server leistungsstark und flexibel sind, kommunizieren sie üblicherweise über Standard-Ein-/Ausgabe (stdio) – oft auf Ihrem lokalen Rechner, wo sie leicht auf Ihr Dateisystem, Ihre Umgebung und andere native Systemfunktionen zugreifen können.
Das ist eine Stärke – aber auch eine Einschränkung.
Wenn Sie Ihre Hauptschnittstelle (wie Open WebUI) in der Cloud bereitstellen möchten, stoßen Sie schnell auf ein Problem: Ihre Cloud-Instanz kann nicht direkt über stdio mit einem MCP-Server kommunizieren, der lokal auf Ihrem Rechner läuft.
Hier kommt mcpo mit einer bahnbrechenden Lösung ins Spiel.
MCP-Server verlassen sich typischerweise auf reine stdio-Kommunikation, was
- 🔓 inhärent unsicher über Umgebungen hinweg ist
- ❌ inkompatibel mit den meisten modernen Werkzeugen, Benutzeroberflächen oder Plattformen ist
- 🧩 wichtige Funktionen wie Authentifizierung, Dokumentation und Fehlerbehandlung vermissen lässt
Der mcpo-Proxy eliminiert diese Probleme – automatisch
- ✅ sofort kompatibel mit bestehenden OpenAPI-Tools, SDKs und Clients
- 🛡️ schützt Ihre Werkzeuge mit sicheren, skalierbaren und standardbasierten HTTP-Endpunkten
- 🧠 generiert automatisch interaktive OpenAPI-Dokumentation für jedes Werkzeug, komplett ohne Konfiguration
- 🔌 verwendet einfaches HTTP – keine Socket-Einrichtung, kein Daemon-Management oder plattformspezifischer Klebstoffcode
Obwohl das Hinzufügen von mcpo zunächst wie "nur eine weitere Ebene" erscheinen mag – in Wirklichkeit vereinfacht es alles und gibt Ihnen gleichzeitig
- bessere Integration ✅
- bessere Sicherheit ✅
- bessere Skalierbarkeit ✅
- glücklichere Entwickler & Benutzer ✅
✨ Mit mcpo werden Ihre rein lokalen KI-Werkzeuge cloudfähig, UI-freundlich und sofort interoperabel – ohne auch nur eine Zeile Tool-Server-Code zu ändern.
✅ Schnellstart: Den Proxy lokal ausführen
So einfach ist es, den MCP-zu-OpenAPI-Proxy-Server mit dem leichten, einfach zu bedienenden Tool mcpo (GitHub Repository) zu starten:
-
Voraussetzungen
- Python 3.8+ mit installiertem
pip. - MCP-kompatible Anwendung (z.B.:
mcp-server-time) - (Optional, aber empfohlen)
uvinstalliert für schnelleren Start und komfortable Null-Konfiguration.
- Python 3.8+ mit installiertem
-
mcpo installieren
Mit uv (empfohlen)
uvx mcpo --port 8000 -- your_mcp_server_command
Oder mit pip
pip install mcpo
mcpo --port 8000 -- your_mcp_server_command
- 🚀 Den Proxy-Server ausführen
Um Ihren MCP-zu-OpenAPI-Proxy-Server zu starten, benötigen Sie einen MCP-kompatiblen Tool-Server. Wenn Sie noch keinen haben, stellt die MCP-Community verschiedene sofort einsatzbereite MCP-Server-Implementierungen zur Verfügung.
✨ Wo finde ich MCP-Server?
Sie können offiziell unterstützte MCP-Server im folgenden Repository-Beispiel finden:
Zum Beispiel ist der beliebte Time MCP Server hier dokumentiert und wird typischerweise im README klar referenziert, innerhalb der bereitgestellten MCP-Konfiguration. Insbesondere besagt das README:
Zu Ihren Claude-Einstellungen hinzufügen
"mcpServers": {
"time": {
"command": "uvx",
"args": ["mcp-server-time", "--local-timezone=America/New_York"]
}
}
🔑 Diese MCP-Einrichtung in einen schnellen lokalen Proxy-Befehl übersetzen
Sie können den empfohlenen MCP-Server (mcp-server-time) direkt über den MCP-zu-OpenAPI-Proxy (mcpo) wie folgt ausführen:
uvx mcpo --port 8000 -- uvx mcp-server-time --local-timezone=America/New_York
Das war's! Sie führen nun den MCP-zu-OpenAPI-Proxy lokal aus und stellen den leistungsstarken MCP Time Server über standardmäßige OpenAPI-Endpunkte zur Verfügung, die erreichbar sind unter:
- 📖 Interaktive OpenAPI-Dokumentation:
https://:8000/docs
Ersetzen Sie uvx mcp-server-time --local-timezone=America/New_York gerne durch Ihren bevorzugten MCP-Server-Befehl aus anderen verfügbaren MCP-Implementierungen, die Sie im offiziellen Repository finden.
🤝 Um eine Integration mit Open WebUI nach dem Starten des Servers vorzunehmen, lesen Sie unsere Dokumentation.
🚀 Zugriff auf die generierten APIs
Sobald er gestartet ist, erledigt der MCP Proxy (mcpo) automatisch:
- Dynamische Entdeckung von MCP-Tools und Generierung von REST-Endpunkten.
- Erstellung interaktiver, menschenlesbarer OpenAPI-Dokumentation, erreichbar unter
https://:8000/docs
Rufen Sie einfach die automatisch generierten API-Endpunkte direkt über HTTP-Clients, KI-Agenten oder andere OpenAPI-Tools Ihrer Wahl auf.
📖 Beispiel-Workflow für Endbenutzer
Angenommen, Sie haben den obigen Serverbefehl gestartet (uvx mcp-server-time)
- Besuchen Sie Ihre lokale API-Dokumentation unter
https://:8000/docs. - Wählen Sie einen generierten Endpunkt (z.B.
/get_current_time) und verwenden Sie das bereitgestellte interaktive Formular. - Klicken Sie auf "Execute" und erhalten Sie sofort Ihre Antwort.
Keine Komplexität bei der Einrichtung – nur sofortige REST-APIs.
🚀 Bereitstellung in der Produktion (Beispiel)
Die Bereitstellung Ihres MCP-zu-OpenAPI-Proxys (powered by mcpo) ist unkompliziert. So können Sie ihn einfach mit Dockerisieren und auf Cloud- oder VPS-Lösungen bereitstellen:
🐳 Dockerisieren Sie Ihren Proxy-Server mit mcpo
- Dockerfile-Beispiel
Erstellen Sie die folgende Dockerfile in Ihrem Bereitstellungsverzeichnis:
FROM python:3.11-slim
WORKDIR /app
RUN pip install mcpo uv
# Replace with your MCP server command; example: uvx mcp-server-time
CMD ["uvx", "mcpo", "--host", "0.0.0.0", "--port", "8000", "--", "uvx", "mcp-server-time", "--local-timezone=America/New_York"]
- Container lokal erstellen & ausführen
docker build -t mcp-proxy-server .
docker run -d -p 8000:8000 mcp-proxy-server
- Bereitstellung Ihres Containers
Pushen Sie zu DockerHub oder einer anderen Registry
docker tag mcp-proxy-server yourdockerusername/mcp-proxy-server:latest
docker push yourdockerusername/mcp-proxy-server:latest
Stellen Sie ihn mit Docker Compose, Kubernetes YAML-Manifesten oder Ihren bevorzugten Cloud-Containerdiensten (AWS ECS, Azure Container Instances, Render.com oder Heroku) bereit.
✔️ Ihre produktiven MCP-Server sind jetzt mühelos über REST-APIs verfügbar!
🧑💻 Technische Details und Hintergrund
🍃 Funktionsweise (Technischer Überblick)
-
Dynamische Schema-Erkennung & Endpunkte: Beim Serverstart verbindet sich der Proxy mit dem MCP-Server, um verfügbare Werkzeuge abzufragen. Er erstellt automatisch FastAPI-Endpunkte basierend auf den MCP-Tool-Schemas und generiert prägnante und klare REST-Endpunkte.
-
Automatische OpenAPI-Dokumentation: Generierte Endpunkte werden nahtlos dokumentiert und über die integrierte Swagger UI von FastAPI (
/docs) verfügbar gemacht. Kein zusätzlicher Dokumentationsaufwand erforderlich. -
Asynchron & Performant: Basiert auf robusten asynchronen Bibliotheken, die Geschwindigkeit und Zuverlässigkeit für gleichzeitige Benutzer gewährleisten.
📚 Unter der Haube:
- FastAPI (Automatische Routing- & Dokumentationsgenerierung)
- MCP Client (Standard-MCP-Integration & Schema-Erkennung)
- Standard-JSON über HTTP (Einfache Integration)
⚡️ Warum ist der MCP-zu-OpenAPI-Proxy überlegen?
Hier erfahren Sie, warum die Nutzung von MCP-Servern über OpenAPI per Proxy-Ansatz deutlich besser ist und warum Open WebUI ihn begeistert unterstützt:
- Benutzerfreundliche & Vertraute Schnittstelle: Keine benutzerdefinierten Clients; nur HTTP-REST-Endpunkte, die Sie bereits kennen.
- Sofortige Integration: Sofort kompatibel mit Tausenden bestehender REST/OpenAPI-Tools, SDKs und Diensten.
- Leistungsstarke & Automatische Dokumentation: Die integrierte Swagger UI-Dokumentation wird automatisch generiert, ist stets korrekt und wird gepflegt.
- Kein Overhead durch neues Protokoll: Eliminiert die Notwendigkeit, MCP-spezifische Protokollkomplexitäten und Socket-Kommunikationsprobleme direkt zu behandeln.
- Geprüfte Sicherheit & Stabilität: Nutzt etablierte HTTPS-Transporte, Standard-Authentifizierungsmethoden (JWT, API-Schlüssel), solide asynchrone Bibliotheken und die bewährte Robustheit von FastAPI.
- Zukunftssicher: Der MCP-Proxy verwendet bestehende, stabile, Standard-REST/OpenAPI-Formate, die eine langfristige Community-Unterstützung und Weiterentwicklung garantieren.
🌟 Fazit: MCP-zu-OpenAPI macht Ihre leistungsstarken MCP-basierten KI-Werkzeuge über intuitive, zuverlässige und skalierbare REST-Endpunkte breit zugänglich. Open WebUI unterstützt und empfiehlt diesen erstklassigen Ansatz mit Stolz.
📢 Community & Support
- Für Fragen, Vorschläge oder Feature-Anfragen nutzen Sie bitte unseren GitHub Issue Tracker oder treten Sie unseren Community-Diskussionen bei.
Viel Spaß bei der Integration! 🌟🚀