In diesem Tutorial erstellen Sie ein einfaches Model Context Protocol (MCP)-Server, der ein einziges Tool für die Suche nach IBM-Tutorials bereitstellt. Durch Verwendung des „fastmcp“-Frameworks und der Anforderungsbibliothek lädt das Skript einen JSON-Index von Tutorials von einer entfernten URL herunter. Anschließend sucht es nach Übereinstimmungen mit der Abfrage des Benutzers und gibt eine übersichtlich formatierte Liste von Ergebnissen zurück. Sie werden außerdem eine Fehlerbehandlung für Netzwerkprobleme, fehlerhafte JSON-Daten und unerwartete Probleme hinzufügen, um das Tool robust und anfängerfreundlich zu gestalten. Abschließend führen Sie den MCP-Server aus, damit er mit einem Client wie Cursor verbunden und getestet werden kann.
Sowohl Enterprise als auch Startup-Entwickler entwickeln zunehmend generative künstliche Intelligenz (KI)-gestützte Lösungen. Um ihre Lösungen nützlicher zu machen, benötigen sie aktuelle Informationen und Kontexte. Maschinelles Lernen Modelle muss mit Tools arbeiten, Programmierschnittstellen(APIs), Software Development Kits (SDKs) und Front-End-Systeme optimieren, damit dies möglich ist.
Das MCP standardisiert, wie Kontext zwischen KI-Modellen und -Systemen weitergegeben wird. Es vereinfacht die Koordination über ein großes Sprachmodell, (LLM) und externe Datenquellen und Tools. Eine gängige Analogie ist, sich MCP als USB-C-Anschluss für ein LLM vorzustellen. Sie machen ein LLM wesentlich nützlicher, da das Modell Zugriff auf Funktionen und Daten hat, die nicht Teil des Modelltrainings waren. Diese Fähigkeit ist besonders nützlich beim Erstellen von KI-Agenten.
MCP wurde von Anthropic entwickelt und von großen KI-Anbietern wie OpenAI, Google DeepMind und der gesamten Branche übernommen. Es bietet eine sichere und standardisierte Möglichkeit für KI-Modelle, auf externe Daten, Ressourcen (z. B. Prompt-Vorlagen) und Tools zuzugreifen und diese zu nutzen.
Darüber hinaus haben auch integrierte Entwicklungsumgebungen (IDEs) wie Cursor und Visual Studio Code MCP übernommen, sodass ihre KI-Assistenten auf MCP-Server zugreifen können, um ihre Nutzung kontextbezogener und entwicklerfreundlicher zu gestalten. MCP wurde als offener Standard entwickelt und wird von Unternehmen als Brücke zwischen der stochastischen Welt der generativen KI und der deterministischen Welt der meisten heute existierenden Unternehmenssysteme eingesetzt. MCP stellt einen LLM mit Kontextinformationen bereit, ähnlich wie andere Designmuster, die sich zunehmend etablieren, darunter Retrieval Augmented Generation (RAG), Tool Calling und KI-Agenten.
Einige Vorteile der Verwendung von MCP im Vergleich zu diesen anderen Lösungen sind:
- Skalierung: MCP-Server können einmal definiert und gehostet und von vielen KI-Systemen verwendet werden. Diese Fähigkeit schränkt die Notwendigkeit ein, den Zugriff auf dieselben Quelldaten, Ressourcen und KI-Tools für mehrere generative KI-Systeme zu definieren.
- Datenabruf: Im Gegensatz zu RAG, bei dem der Datenabruf vor der Abfrage eine Vorverarbeitung und Vektorisierung erfordert, ist MCP dynamisch und ermöglicht Schwankungen und Aktualisierungen von Informationsquellen in Echtzeit.
- Komplexität: MCP lässt sich relativ einfach einrichten und in KI-Anwendungen integrieren, wie wir hier demonstrieren. Mit Konfigurationsdateien können Sie einen MCP-Server ganz einfach in verschiedenen Umgebungen portabel machen.
- Plattformunabhängig: Abgesehen davon, dass Sie MCP-Server mit Python, TypeScript oder anderen Sprachen erstellen können, sind sie auch nicht an eine bestimmte LLM-Lösung gekoppelt.
- Debugging durch ein Client/Server-Modell: Der MCP-Client sendet Anfragen an den MCP-Server, der dann die erforderlichen Daten von verschiedenen externen Systemen und Quellen abruft – seien es APIs, Datenbanken oder lokale Dateien. Dieser strukturierte Ansatz stellt sicher, dass das KI-Modell einen einheitlichen und relevanten Kontext erhält, was zu genaueren und zuverlässigeren Ausgaben führt. MCP verwendet JSON-RPC zum Kodieren von Nachrichten und unterstützt zwei Transportmechanismen, stdio und streambares HTTP. In früheren Versionen des Protokolls unterstützte es auch HTTP mit Server-Sent Events (SSE),
Die Notwendigkeit, sich ständig über die neuesten Informationen zu informieren, die Ihr Unternehmen benötigt, kann entmutigend sein. MCP kann dabei helfen, den Kontext aufzubauen und neue Informationen für Verträge zu integrieren, während diese ausgeführt werden, Altlast, die digitalisiert, aber nicht unbedingt verständlich gemacht wird, und mehr. Diese Informationen können sowohl intern als auch extern sein, aber das Hinzufügen von Kontext umgeht die zeitaufwändige Notwendigkeit, ein LLM neu zu trainieren, um nützlich zu sein.
Es sind viele Remote-MCP-Server sowie viele Referenzimplementierungen von github.com verfügbar
Diese Schritt-für-Schritt-Anleitung finden Sie zusammen mit der Datei server.py in unserem GitHub-Repository Skript, auf das Sie bei der Erstellung Ihres MCP-Servers verweisen. In diesem Tutorial werden wir Sie durch die Erstellung eines einfachen benutzerdefinierten MCP-Servers führen, der Folgendes kann:
Um Ihnen die Erstellung dieses Tutorials zu erleichtern, haben wir einen Mechanismus entwickelt, mit dem der Server, den Sie erstellen werden, unseren Tutorial problemlos und ohne erforderliche Authentifizierung nutzen kann.
- Python 3.11 oder neuer auf Ihrem Computer installiert (prüfen Sie, indem Sie python3 --version in Ihrem Terminal ausführen).
- Das integrierte Venv-Modul ist verfügbar (es wird auf den meisten Systemen mit Python geliefert; auf einigen Linux-Distributionen müssen Sie es möglicherweise separat mit sudo apt install python3-venv installieren).
- Ein Befehlszeilenterminal (CLI):
- macOS oder Linux: Verwenden Sie Ihre Terminal-App (diese Umgebungen sind Unix-ähnlich).
- Windows: Verwenden Sie PowerShell oder Prompt, wobei kleine Syntaxunterschiede in den nächsten Schritten erläutert werden.
- Einen Texteditor oder eine IDE Ihrer Wahl
Erstellen Sie ein neues Verzeichnis und legen Sie eine cd hinein
Stellen Sie sicher, dass Sie in dem Verzeichnis vorhanden sind
Hinweis: Unter Windows können Sie möglicherweise ersetzen
Sobald Sie die virtuelle Umgebung erstellt haben, müssen Sie sie mit dem folgenden Befehl aktivieren
Sobald diese aktiviert ist, wird Ihre Shell es Ihnen wahrscheinlich anzeigen
Jetzt müssen Sie das Python-Paket für
Installieren Sie das
After this step completes, you can check that fastMCP is installed correctly by running the following command
Wenn Sie eine Ausgabe ähnlich der folgenden erhalten, haben Sie fastMCP in Ihrer virtuellen Umgebung installiert.
FastMCP version: 2.10.1
MCP version: 1.10.1
Python version: 3.11.13
Platform: macOS-15.5-arm64-arm-64bit
FastMCP root path: /opt/homebrew/lib/python3.11/site-packages
Jetzt nachdem Sie fastMCP installiert haben, erstellen wir unseren MCP-Server.
Erstellen Sie eine neue Datei in dem Verzeichnis und geben Sie ihr einen Namen
Sobald Sie diese Datei haben, öffnen Sie sie und kopieren Sie das folgende Codefragment und fügen Sie es ein
Lassen Sie uns den vorangegangenen Code durchgehen und erläutern, welche Funktionen die wichtigsten Teile erfüllen.
Das Skript beginnt mit dem Import von FastMCP, das das Framework für die Erstellung eines MCP-Servers bereitstellt, sowie von Requests, die zum Herunterladen von Daten über HTTP verwendet werden. Wir haben eine Konstante hinzugefügt,
Anschließend erstellen wir eine MCP-Serverinstanz mit
Die
Bei der Suche wird die Groß-/Kleinschreibung nicht berücksichtigt: Die Suchanfrage wird in Kleinbuchstaben umgewandelt, und auch die Titel und URLs der einzelnen Tutorials werden für den Abgleich in Kleinbuchstaben umgewandelt. Wenn ein Tutorial den Suchbegriff entweder im Titel oder in der URL enthält, wird es zu einer Liste relevanter Ergebnisse hinzugefügt.
Wenn keine Tutorials mit der Suche übereinstimmen, gibt die Funktion eine freundliche Meldung zurück, die darauf hinweist, dass nichts gefunden wurde. Wenn Übereinstimmungen vorhanden sind, erstellt die Funktion eine formatierte, nummerierte Liste, in der der Titel, die URL, das Datum und – falls verfügbar – der Autor jedes Tutorials angezeigt werden. Bei der Formatierung wird für Titel fett im Markdown-Stil verwendet, damit sie in Clients, die dies unterstützen, hervorstechen. Der endgültige formatierte Text wird als einzelne Zeichenfolge zurückgegeben.
Die Funktion umfasst eine gezielte Ausnahmebehandlung:
Ein General
Bei jedem Fehler wird eine beschreibende Meldung an den Aufrufer zurückgegeben, anstatt das Programm zu stoppen.
Ganz unten befinden sich die
Nachdem Sie Ihren Server eingerichtet haben, müssen Sie ihn in Ihrer IDE aktivieren, bevor Sie ihn verwenden können. Es gibt zahlreiche Clients, die MCP mit unterschiedlichen Integrationsstufen des Protokolls unterstützen. Auf der offiziellen MCP-Website finden Sie eine vollständige Liste von Beispielkunden.
Wenn Sie Cursor installiert haben, können Sie den MCP-Server innerhalb von Cursor hinzufügen, indem Sie den folgenden Anweisungen folgen.
Öffnen Sie die Cursor-Einstellungen und navigieren Sie zu „Tools & Integrationen“. Bitte wählen Sie „Neuer MCP-Server“ aus und fügen Sie den Inhalt in die Datei mcp.json ein, die Cursor in einem neuen Tab öffnet. Achten Sie darauf, dass Sie <YOUR PATH> durch das Verzeichnis ersetzen, in dem Sie sich befinden. Sie können pwd in Ihrem Terminal ausführen, um den vollständigen Pfad zu erhalten. Weitere Informationen zu Cursor und MCP finden Sie in der Cursor-Dokumentation.
{
"mcpServers": {
"tutorials": {
"command": "fastmcp",
"args": ["run <YOUR PATH>/ibmtutorialmcpserver/server.py"],
"env": {
}
}
}
}
Wenn Sie Microsoft VS Code verwenden, können Sie den MCP-Server gemäß den Anweisungen unter diesem Link hinzufügen. Stellen Sie sicher, dass Copilot in VS Code eingerichtet ist, bevor Sie fortfahren.
Wenn Sie den MCP-Server mithilfe einer Datei aktivieren möchten, erstellen Sie eine .vscode/mcp.json -Datei im Verzeichnis dieses Projekts, kopieren Sie diesen Code und fügen Sie ihn in die Datei ein. Achten Sie darauf, dass Sie <YOUR PATH> durch das Verzeichnis ersetzen, in dem Sie sich befinden. Sie können pwd in Ihrem Terminal ausführen, um den vollständigen Pfad zu erhalten.
"servers": {
"IBM Tutorials": {
"type": "stdio",
"command": "fastmcp",
"args": [
"run",
"<YOUR PATH>/ibmtutorialmcpserver/server.py"
]
},
},
Nachdem Sie nun Ihren MCP-Server aktiviert haben, wollen wir den Server in Betrieb nehmen, damit Sie das in server.py erstellte Tool verwenden können. Wenn Sie VS Code verwenden, schauen Sie sich diese Dokumente an.
Im IDE-Chat frage ich: „Was sind einige IBM Time Series-Tutorials?“ Im Folgenden sehen Sie die erhaltenen Ausgaben. Ihre Antwort kann jedoch je nach verwendetem Modell und IDE variieren.
Output:
Here are some IBM time series tutorials:
Time series forecasting with Lag-Llama (zero-shot learning)
Tutorial link
Predict overnight low temperatures using the Lag-Llama model in a zero-shot learning scenario.
Using the watsonx.ai Time Series Forecasting API to predict energy demand
Tutorial link
Predict energy demand with the watsonx.ai Time Series Forecasting API.
Authors: Aleksandra Kłeczek and Meredith Syed
Let me know if you want details or help with a specific tutorial.
Großartig! Der Agent konnte das nutzen
In diesem Tutorial haben Sie gelernt, wie Sie mit einem beliebigen MCP-Client einen MCP-Server erstellen, um alle unsere Tutorials zu durchsuchen. Sie haben einen MCP-Server mit einem einzigen Suchtool erstellt, das einen Remote-JSON-Index von Tutorials abruft, die Ergebnisse anhand eines Suchbegriffs gefiltert hat und sie in einem lesbaren Format zurückgibt. Es verwendet fastmcp, um das Tool zu registrieren und auszuführen, fordert das Abrufen der Daten an und umfasst die Fehlerbehandlung für Netzwerk-, Parsing- und unerwartete Probleme. Wenn der Server ausgeführt wird, können MCP-Clients eine Verbindung zu dem Server herstellen, um alle unsere Tutorials live abzufragen.
Entwickeln, implementieren und verwalten Sie leistungsstarke KI-Assistenten und -Agenten, die Workflows und Prozesse mit generativer KI automatisieren.
Gestalten Sie die Zukunft Ihres Unternehmens mit KI-Lösungen, denen Sie vertrauen können.
Die KI-Services von IBM Consulting unterstützen Sie dabei, die Art und Weise, wie Unternehmen mit KI arbeiten, neu zu denken.