- MCP (Model Context Protocol) ist eine standardisierte Methode, um LLMs Werkzeuge und Kontext bereitzustellen
- Wie ein USB-C-Port dient es als standardisierte Schnittstelle, die verschiedene Datenquellen oder Werkzeuge mit AI-Modellen verbindet
- Das OpenAI Agents SDK unterstützt MCP und kann dadurch mit verschiedenen MCP-Servern integriert werden
MCP-Server
- Die aktuelle MCP-Spezifikation definiert je nach verwendetem Übertragungsmechanismus zwei Arten von Servern:
- stdio-Server werden als Unterprozess einer Anwendung ausgeführt und können als „lokal“ laufend betrachtet werden.
- HTTP over SSE-Server laufen remote und werden über eine URL verbunden.
- Mit den Klassen
MCPServerStdio und MCPServerSse kann eine Verbindung zu diesen Servern hergestellt werden.
- Zum Beispiel kann der offizielle MCP-Dateisystem-Server wie folgt verwendet werden:
async with MCPServerStdio(
params={
"command": "npx",
"args": ["-y", "@modelcontextprotocol/server-filesystem", samples_dir],
}
) as server:
tools = await server.list_tools()
Caching
- Bei jedem Lauf eines Agenten
list_tools() auf dem MCP-Server aufzurufen, kann Latenz verursachen. Das gilt insbesondere dann, wenn es sich um einen Remote-Server handelt.
- Um die Werkzeugliste automatisch zu cachen, kann an
MCPServerStdio und MCPServerSse cache_tools_list=True übergeben werden. Dies sollte nur erfolgen, wenn sicher ist, dass sich die Werkzeugliste nicht ändern wird.
- Um den Cache zu invalidieren, kann auf dem Server
invalidate_tools_cache() aufgerufen werden.
4 Kommentare
Anthropic veröffentlicht das Model Context Protocol als Open Source
Entwicklungsmethoden für das Model Context Protocol (MCP)
Erklärung zum Vergleich von MCP und API
Awesome MCP Servers - Liste von Servern mit Unterstützung für das Model Context Protocol
Hacker-News-Kommentare
Heute hat MCP Streamable HTTP hinzugefügt. Das ist ein großer Fortschritt, weil keine permanente Verbindung zu einem entfernten HTTP-Server mehr nötig ist
{ "location": "New York" }per HTTP-POST an/get_weatherAuthorization-Header ausgehandelt und es werden traditionelle Endpunkte verwendetEs gibt die Analogie, man solle sich MCP als den USB-C-Port für AI-Anwendungen vorstellen
Ich habe mich gefragt, ob OpenAI das offiziell unterstützen würde, aber jetzt habe ich die Antwort
Ich hatte auf Unterstützung für OpenAPI gehofft. Ich habe ein paar MCP-Server gebaut, aber es wirkt wie eine weniger flexible und schlechter dokumentierte API
Es ist schwer zu verstehen, worin der Wert von MCP liegt. Inmitten des Chaos moderner AI-Technologien wirkt es wie eine weitere Ablenkung
Ich habe eine Architektur gebaut, in der AI-Agenten lokal „Tools“ verwenden können. Sie funktioniert mit allen Arten von LLMs und LLM-Servern
Es gibt zu wenige Videos darüber, wie man MCP tatsächlich verwendet. Für Programmierer fehlen greifbare Anwendungsfälle
Es gibt die Analogie, man solle sich MCP als den USB-C-Port für AI-Anwendungen vorstellen
Das scheint auf HTTP+SSE abzuzielen, also auf die ältere Version von MCP, nicht auf die neue Streaming-HTTP-Version
Wenn man MCP einfach ausprobieren möchte, wurde <a href="https://skeet.build/mcp" rel="nofollow">skeet.build/mcp</a> gebaut
Ich denke auch, dass OpenAPI Function Calling nicht besser wäre. Das noch einmal mit dem MCP-Protokoll neu aufzubauen, ist nämlich ebenfalls Aufwand.
Ist das nicht eher der Unterschied zwischen Push und Poll? Es scheint für Dritte praktischer zu sein, die MCP-Spezifikation zu hosten und den Agenten per Poll darauf zugreifen zu lassen, statt je nach Modell oder Service jeweils Function Calling zu implementieren.