Was versteht man unter einem MCP-Client?
Ein Model Context Protocol (MCP) Client ist ein Computerprogramm, das als Teil oder auf Anweisung eines KI-Agenten Anfragen an einen MCP-Server stellt. Die Informationen, die der MCP-Client vom MCP-Server erhält, helfen dem KI-Agenten, Entscheidungen zu treffen oder Aufgaben auszuführen. Stellen Sie sich einen MCP-Client wie einen Assistenten vor, der Reservierungen in einem Restaurant vornehmen oder im Namen seines Arbeitgebers (des KI-Agenten) mit Personen Kontakt aufnehmen kann.
Angenommen, Acme Corp. entwickelt einen KI-Agenten, der als Reaktion auf einfache Kunden-Prompts wie „Ich möchte das Zimmer meines Neunjährigen einrichten“ selbstständig Möbelsets für Kinderzimmer bestellen kann. Um die besten Optionen zu finden, benötigte der KI-Agent Informationen darüber, welche Kindermöbel verfügbar sind, welche Preise diese haben und wie groß die Möbel im Vergleich zu einem typischen Zimmer sind. Wenn Möbelhersteller diese Informationen über MCP offenlegen, kann der KI-Agent einen MCP-Client beauftragen, die gewünschten Informationen direkt anzufordern.
MCP-Clients arbeiten innerhalb von MCP-Hosts: Ein MCP-Host ist ein KI-Agent oder eine KI-Anwendung. MCP unterscheidet sich von dem Client-Server-Modell, auf dem das Internet aufbaut und bei dem die „Clients“ ursprünglich als diskrete Geräte mit eigenen IP-Adressen betrachtet wurden. MCP-Clients, -Hosts und -Server können vielmehr auf demselben Rechner laufen, was jedoch nicht immer der Fall ist.
Wie MCP-Hosts funktionieren
Ein MCP-Host ist eine agentenbasierte KI-Anwendung. Neben ihren anderen Funktionen enthält die Anwendung einen oder mehrere Clients, die Unterprogramme des Hosts sind. Die Clients helfen dem Host, die erforderlichen Informationen zu beschaffen oder Aktionen durchzuführen, um auf die Prompts der Endbenutzer zu reagieren. Jeder Client kommuniziert direkt mit einem MCP-Server. Zusätzliche Serververbindungen erfordern die Instanziierung weiterer Clients.
Dieses Diagramm zeigt, wie MCP-Clients und -Server unter der Haube einer nutzerorientierten Anwendung interagieren, wenn MCP-Server auf Cloudflare gehostet werden.
Aus der Sicht des Endnutzers geschieht dies alles im Hintergrund: Was er sieht, ist, dass er einen Prompt in eine KI-Anwendung eingibt und die Anwendung auf seine Anfragen antwortet oder diese ausführt. Aber hinter den Kulissen verlässt sich die Anwendung zumindest teilweise auf MCP-Clients und -Server, um die Arbeit zu erledigen.
Was versteht man unter einem MCP-Server?
Ein MCP-Server ist ein Softwareprogramm, das die Verwendung von MCP unterstützt und MCP-Clients Informationen zur Verfügung stellt. MCP-Server spielen eine aktive Rolle bei der Unterstützung von MCP-Clients bei der Erfüllung ihrer Prompts und fordern beispielsweise bei Bedarf mehr Kontext an.
MCP-Server und MCP-Clients können auf demselben physischen Rechner laufen. Es kann sich aber auch um separate Geräte handeln, die über das Internet remote miteinander verbunden sind. Ein MCP-Server kann auf einem Webserver (oder auf Cloudflare, wie im obigen Diagramm) gehostet werden, muss es aber nicht.
Was sind die Kernfunktionen von MCP-Servern?
MCP-Server stellen MCP-Clients verschiedene Features zur Verfügung. Diese Features helfen MCP-Clients bei der Erfüllung ihrer Aufgaben.
- Tools: Dies sind Funktionen, die ausgeführt werden können, um die Ausführung von Prompts zu unterstützen. Ein MCP-Server-Tool könnte zum Beispiel eine Funktion sein, die eine API aufruft.
- Ressourcen: Ressourcen sind gespeicherte Quellen von schreibgeschützten Daten, wie z. B. Dokumente, API-Dokumentationen oder Knowledge-Base-Artikel.
- Prompts: Gespeicherte, strukturierte Vorlagen zum Aufrufen bestimmter Tools und Ressourcen.
Was sind die Kernfunktionen von MCP-Clients?
MCP-Clients stellen auch MCP-Servern Features zur Verfügung, die mit diesen Features Informationen anfordern oder Klarheit von Clients erhalten können.
- Informationsbeschaffung: Sobald eine Verbindung initiiert wurde, benötigt der Server möglicherweise mehr Kontext oder Informationen, um die Anfrage des Clients zu beantworten. Der Server verwendet die Informationsbeschaffungsfunktion, um diese Informationen vom Client zu erhalten, der wiederum den Benutzer fragen kann.
- Roots: Clients können die Server auffordern, sich auf bestimmte Unterverzeichnisse von Dateien zu konzentrieren, um sicherzustellen, dass der Server eine relevante Antwort generiert. Stellen Sie sich im obigen Beispiel vor, dass ein Client den Server bittet, sich auf
file:///home-goods/furniture/childrens-furniture/zu konzentrieren. Auf diese Weise ist es weniger wahrscheinlich, dass der Server dem Client irrelevante Informationen zur Verfügung stellt, die nicht dazu beitragen, den Prompt des Benutzers zu erfüllen, wie z. B. Informationen über Haushaltsgüter im Allgemeinen oder Betten für Erwachsene. - Stichprobenprüfung: Der Server kann eine Anfrage an den Client senden, damit die KI-Anwendung eine Aufgabe erledigt.
So erstellen Sie einen MCP-Server oder MCP-Client mit Cloudflare
Cloudflare ermöglicht es Entwicklern, ihre eigenen MCP-Clients und -Server als Teil der Entwicklung ihrer eigenen KI-Agenten zu erstellen, zu testen und bereitzustellen. Entwickler können auf ihren lokalen Geräten entwickeln und über Cloudflare bereitstellen oder über ihre GitHub-Konten entwickeln. Der Einsatz eines MCP-Servers oder -Clients auf Cloudflare bedeutet, dass sie Tools und Daten für Agenten ohne Selbsthosting und innerhalb von Millisekunden in einem globalen Netzwerk zur Verfügung stellen können, das weniger als %{OperationMilliseconds} Millisekunden von %{GlobalInternetConnectedPercent} % aller Internetnutzer weltweit entfernt ist.
Authentifizierung via OAuth kann auch in MCP-Server integriert werden. Ohne Authentifizierung kann sich jeder mit dem Server verbinden und ihn benutzen. Mit Authentifizierung können dies nur autorisierte Parteien tun. Authentifizierung kann daher dazu beitragen, die Vertraulichkeit und Sicherheit von Daten auf einem MCP-Server zu gewährleisten.
Ein vollständiges Tutorial zum Erstellen eines Remote-MCP-Servers mit Cloudflare finden Sie in der MCP-Entwicklerdokumentation von Cloudflare.