MCP-Server für ZenML
Dieses Projekt implementiert einen Model Context Protocol (MCP) -Server für die Interaktion mit der ZenML -API.
Was ist MCP?
Das Model Context Protocol (MCP) ist ein offenes Protokoll, das die Bereitstellung von Kontext für Large Language Models (LLMs) durch Anwendungen standardisiert. Es fungiert als „USB-C-Anschluss für KI-Anwendungen“ und bietet eine standardisierte Möglichkeit, KI-Modelle mit verschiedenen Datenquellen und Tools zu verbinden.
MCP folgt einer Client-Server-Architektur, bei der:
- MCP-Hosts : Programme wie Claude Desktop oder IDEs, die über MCP auf Daten zugreifen möchten
- MCP-Clients : Protokoll-Clients, die 1:1-Verbindungen mit Servern aufrechterhalten
- MCP-Server : Leichtgewichtige Programme, die über das standardisierte Protokoll spezifische Funktionen bereitstellen
- Lokale Datenquellen : Die Dateien, Datenbanken und Dienste Ihres Computers, auf die MCP-Server sicher zugreifen können
- Remote Services : Externe Systeme, die über das Internet verfügbar sind und mit denen sich MCP-Server verbinden können
Was ist ZenML?
ZenML ist eine Open-Source-Plattform zum Erstellen und Verwalten von ML- und KI-Pipelines. Sie bietet eine einheitliche Schnittstelle für die Verwaltung von Daten, Modellen und Experimenten.
Weitere Informationen finden Sie auf der ZenML-Website und in unserer Dokumentation .
Merkmale
Der Server bietet MCP-Tools für den Zugriff auf die Kernlesefunktionalität des ZenML-Servers und ermöglicht so den Abruf von Live-Informationen zu folgenden Themen:
- Benutzer
- Stapel
- Rohrleitungen
- Pipelineläufe
- Pipeline-Schritte
- Leistungen
- Stapelkomponenten
- Geschmacksrichtungen
- Vorlagen für Pipelineausführungen
- Zeitpläne
- Artefakte (Metadaten zu Datenartefakten, nicht die Daten selbst)
- Service-Anschlüsse
- Schrittcode
- Schrittprotokolle (wenn der Schritt auf einem Cloud-basierten Stack ausgeführt wurde)
Außerdem können Sie damit neue Pipeline-Läufe auslösen (sofern eine Laufvorlage vorhanden ist).
Hinweis: Dies ist eine Beta-/Experimentalversion. Wir testen noch, wie die Integration genutzt wird. Wir freuen uns daher über Ihr Feedback und Ihre Vorschläge! Treten Sie unserer Slack-Community bei, teilen Sie Ihre Erfahrungen und helfen Sie uns, uns zu verbessern.
Anwendung
Voraussetzungen
Sie benötigen Zugriff auf einen bereitgestellten ZenML-Server. Falls Sie keinen haben, können Sie sich für eine kostenlose Testversion bei ZenML Pro anmelden. Wir übernehmen dann die Bereitstellung für Sie.
Sie müssen (wahrscheinlich) auch uv
lokal installieren. Weitere Informationen finden Sie in der uv
Dokumentation . Wir empfehlen die Installation über das Installationsskript oder über brew
, wenn Sie einen Mac verwenden. (Technisch gesehen ist dies nicht erforderlich , aber es vereinfacht die Installation und Einrichtung.)
Sie müssen dieses Repository auch irgendwo lokal klonen:
Ihre MCP-Konfigurationsdatei
Die MCP-Konfigurationsdatei ist eine JSON-Datei, die dem MCP-Client mitteilt, wie er sich mit Ihrem MCP-Server verbinden soll. Verschiedene MCP-Clients verwenden oder spezifizieren dies unterschiedlich. Zwei häufig verwendete MCP-Clients sind Claude Desktop und Cursor , für die wir unten Installationsanweisungen bereitstellen.
Sie müssen Ihren ZenML MCP-Server im folgenden Format angeben:
Es gibt vier Dummy-Werte, die Sie ersetzen müssen:
- der Pfad zu Ihrem lokal installierten
uv
(der oben aufgeführte Pfad ist der Pfad, der auf einem Mac angezeigt würde, wenn Sie es überbrew
installiert hätten) - Der Pfad zur Datei
zenml_server.py
(dies ist die Datei, die ausgeführt wird, wenn Sie sich mit dem MCP-Server verbinden). Diese Datei befindet sich im Stammverzeichnis dieses Repositorys. Sie müssen den genauen Pfad zu dieser Datei angeben. - die ZenML-Server-URL (dies ist die URL Ihres ZenML-Servers. Sie finden diese in der ZenML Cloud-Benutzeroberfläche). Sie sieht in etwa so aus:
https://d534d987a-zenml.cloudinfra.zenml.io
. - den API-Schlüssel des ZenML-Servers (dies ist der API-Schlüssel für Ihren ZenML-Server. Sie finden ihn in der ZenML Cloud-Benutzeroberfläche oder lesen diese Dokumentation zur Erstellung. Für die Zwecke des ZenML MCP-Servers empfehlen wir die Verwendung eines Dienstkontos.)
Sie können die Art und Weise, wie Sie die Python-Datei des MCP-Servers ausführen, frei ändern, aber die Verwendung von uv
ist wahrscheinlich die einfachste Option, da es die Umgebung und die Installation der Abhängigkeiten für Sie übernimmt.
Installation zur Verwendung mit Claude Desktop
Sie müssen Claude Desktop installiert haben.
Nachdem Sie Claude Desktop installiert und geöffnet haben, öffnen Sie das Menü „Einstellungen“ und klicken Sie auf die Registerkarte „Entwickler“. Dort finden Sie die Schaltfläche „Konfiguration bearbeiten“, die einen Datei-Explorer öffnet, der Ihnen den Speicherort Ihrer Konfigurationsdatei anzeigt.
Fügen Sie den Inhalt der (korrekt ausgefüllten) Konfigurationsdatei oben in die im Datei-Explorer angezeigte JSON-Datei ein. Starten Sie anschließend Claude Desktop neu, und die neue Konfiguration wird verwendet. Der ZenML-Server sollte im Entwicklereinstellungsmenü angezeigt werden. Chatten Sie mit Claude, und er wird alle neuen Tools verwenden, auf die Sie ihm Zugriff gewährt haben.
Optional: Verbessern der Ausgabeanzeige des ZenML-Tools
Für ein besseres Erlebnis mit den Ergebnissen des ZenML-Tools können Sie Claude so konfigurieren, dass die JSON-Antworten in einem besser lesbaren Format angezeigt werden. Gehen Sie in Claude Desktop zu Einstellungen → Profil und fügen Sie im Abschnitt „Welche persönlichen Präferenzen sollte Claude bei Antworten berücksichtigen?“ Folgendes hinzu (oder verwenden Sie genau diese Worte!):
Dies wird Claude dazu ermutigen, die Ausgaben des ZenML-Tools als Markdown-Tabellen zu formatieren, wodurch die Informationen viel einfacher zu lesen und zu verstehen sind.
Installation zur Verwendung mit Cursor
Sie müssen Cursor installiert haben.
Cursor funktioniert etwas anders als Claude Desktop, da Sie die Konfigurationsdatei pro Repository angeben. Das bedeutet: Wenn Sie den ZenML MCP-Server in mehreren Repositorys verwenden möchten, müssen Sie die Konfigurationsdatei in jedem dieser Repositorys angeben.
Um es für ein einzelnes Repository einzurichten, müssen Sie:
- Erstellen Sie einen
.cursor
-Ordner im Stammverzeichnis Ihres Repositorys - Erstellen Sie darin eine
mcp.json
Datei mit dem oben genannten Inhalt - Gehen Sie in Ihre Cursoreinstellungen und klicken Sie auf den ZenML-Server, um ihn zu „aktivieren“.
Unserer Erfahrung nach wird manchmal eine rote Fehleranzeige angezeigt, obwohl es funktioniert. Sie können es ausprobieren, indem Sie im Cursor-Chatfenster chatten. Dort erfahren Sie, ob auf die ZenML-Tools zugegriffen werden kann oder nicht.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Ein Server, der das Model Context Protocol implementiert, das LLMs die Interaktion mit der ZenML-Plattform ermöglicht und Zugriff auf Pipeline-Daten und Stapelinformationen sowie die Möglichkeit bietet, neue Pipeline-Läufe auszulösen.
Related MCP Servers
- -securityFlicense-qualityA Model Context Protocol server that allows LLMs to execute shell commands and receive their output in a controlled manner.Last updated -Python
- -securityAlicense-qualityA Model Context Protocol server that allows LLMs to interact with web content through standardized tools, currently supporting web scraping functionality.Last updated -PythonMIT License
- -securityAlicense-qualityA Model Context Protocol server that enables LLMs to interact with databases (currently MongoDB) through natural language, supporting operations like querying, inserting, deleting documents, and running aggregation pipelines.Last updated -TypeScriptMIT License
- -securityFlicense-qualityA Model Context Protocol server that connects LLMs to the Compiler Explorer API, enabling them to compile code, explore compiler features, and analyze optimizations across different compilers and languages.Last updated -Python