Bei der Entwicklung groß angelegter Sprachmodellierungsanwendungen (LLM) besteht eine zentrale Herausforderung darin, Modelle in die Lage zu versetzen, sicher und effizient mit externen Tools und Datenquellen zu interagieren. Zu diesem Zweck wurde das Model Context Protocol (MCP) geschaffen, das darauf abzielt, einen Standardsatz von Kommunikationsspezifikationen zwischen LLMs und der Außenwelt zu etablieren. In diesem Papier werden wir zunächst die MCP
und geht dann auf die Kernprinzipien der Open-Source-Plattform zur Entwicklung von LLM-Anwendungen ein Dify
wie man die Vorteile seines Reichtums nutzen kann MCP
Plugin-Ökosystem zur Erstellung leistungsstarker KI-Anwendungen.
Verständnis der Eckpfeiler: MCP und FastMCP
Vertiefung Dify
Bevor wir das Plugin einsetzen, müssen wir zunächst verstehen MCP
Was es ist, und FastMCP
Wie es seine Umsetzung vereinfacht.
MCP-Dienst-Implementierungsprinzipien
MCP
ist ein auf einer Client-Server-Architektur basierendes Protokoll, das es großen Sprachmodellen ermöglicht, über ein standardisiertes Nachrichtenformat externe Tools zu finden und aufzurufen. Seine Kernarchitektur besteht aus drei Teilen:
- MCP-Host: KI-Anwendungen für Benutzer wie
Claude Desktop
vielleichtCursor IDE
ist für den Empfang von Benutzerbefehlen und die Koordinierung des LLM zuständig. - MCP-Kunde: eingebettet in
Host
Die Middleware in derMCP Server
Herstellen von Verbindungen und Kommunikation. - MCP-ServerEin leichtgewichtiger Dienst, der spezifische Funktionen bereitstellt, die eine Verbindung zu realen Daten und Tools wie Datenbanken und APIs herstellen.
Kommunikationsniveau.MCP
Die Protokolle basieren auf JSON-RPC 2.0
kapselt Nachrichten und unterstützt eine Vielzahl von Transportmodi, z. B. für die lokale Prozesskommunikation Stdio
und für die Fernkommunikation HTTP with SSE
im Gesang antworten Streamable HTTP
. Derzeit.Streamable HTTP
Aufgrund ihrer Flexibilität und der guten Kompatibilität mit modernen Netzprotokollen ist sie die empfohlene Hauptübertragungsmethode.
Funktionell.MCP
Der Server bietet drei Haupttypen von Funktionen:
- WerkzeugeFunktionen, die aufgerufen werden können, wie z. B. Dateioperationen oder API-Anfragen.
- RessourcenDaten in Form von Klassendateien, wie z. B. Datenbankeinträge, die durch URIs identifiziert werden.
- Aufforderungen zur Einreichung von VorschlägenInteraktionsvorlage: Eine vordefinierte Interaktionsvorlage zur Standardisierung der Ausgabe des LLM.
FastMCP: Das MCP-Framework von Pythonic
FastMCP
Es ist ein effizientes MCP
Protokoll-Python-Implementierungsrahmen. Es kombiniert die zugrunde liegenden JSON-RPC
Details, Schemakonstrukte und Kommunikationsmanagement sind stark abstrahiert und gekapselt. Die Entwickler müssen sich nicht mit komplexen Protokolldetails befassen und können schnell MCP
Dienstleistungen.
Zum Beispiel mit der @mcp.tool
Mit Hilfe von Dekoratoren lässt sich ein Werkzeug leicht definieren:
@mcp.tool
def multiply(a: float, b: float) -> float:
"""This tool multiplies two numbers."""
return a * b
FastMCP
Sie unterstützt auch erweiterte Funktionen wie Serviceportfolios und Middleware, was die Entwicklung der KI-Toolchain erheblich vereinfacht.
MCP-Plugin Ökologie in Dify
Dify
ist eine Open-Source-Plattform zur Entwicklung von LLM-Anwendungen, die die MCP
Protokoll, das eine Reihe von Plug-ins für die Verbindung und den Aufbau des MCP
Dienste. Diese Plugins lassen sich grob in serverseitige, clientseitige und Agent
Die drei Kategorien der Strategie.
Plug-in (Softwarekomponente) | (jemandem eine Stelle etc.) anbieten | Typologie | GitHub-Repositorien |
---|---|---|---|
Agent Policy (unterstützt MCP-Tools) | Angebot Function Calling im Gesang antworten ReAct Strategien zur Unterstützung MCP Werkzeugsuche und -aufruf. |
infrastrukturelle | dify-plugin-agent-mcp_sse |
MCP SSE/StreamableHTTP | handeln als MCP Client, über den HTTP with SSE vielleicht Streamable HTTP Tools für die Suche und den Aufruf. |
infrastrukturelle | – |
MCP-Agentenpolitik | nur Unterstützung Function Calling strategisch Agent für den Aufruf der MCP Werkzeuge. |
infrastrukturelle | – |
MCP-Server | Oberbefehlshaber (Militär) Dify Der Workflow oder Dialogablauf wird als MCP Server. |
infrastrukturelle | dify-plugin-mcp_server |
MCP-kompatible Dify-Werkzeuge | Oberbefehlshaber (Militär) Dify Die API des eingebauten Werkzeugs wird umgewandelt in MCP kompatible API. |
infrastrukturelle | dify-plugin-mcp_compat_dify_tools |
Zum Zeitpunkt der Nutzung konfigurierte MCP-Tools | eine MCP Client, dessen Dienstadresse zum Zeitpunkt der Nutzung dynamisch konfiguriert wird. |
infrastrukturelle | – |
Nacos MCP | durch (eine Lücke) Nacos Erkennung und Aufruf von Registern MCP Dienstleistungen. |
Gerät | nacos-dify-plugins |
AntV-Visualisierungstafel | auf der Grundlage von AntV Diagrammerstellung MCP Dienstleistungen. |
Gerät | mcp-server-chart |
HelloDB | Datenbankabfrage-Helfer, der Datenbank-Fähigkeiten kapselt als MCP Dienstleistungen. |
Gerät | HelloDB-Wiki |
DataFocus | illusionsgesteuertes Text2SQL im Gesang antworten ChatBI Plug-ins. |
Gerät | – |
Benutzerhandbuch für das Core Plugin
Plugin Typ I: Veröffentlichung von Dify-Anwendungen als MCP-Dienste
Das Ziel dieser Art von Plugin ist es, die Informationen, die Sie in der Dify
Die Funktionen, die in der Datenbank erstellt werden (z. B. Arbeitsabläufe, Dialogabläufe oder einzelne Werkzeuge), werden als Standard ausgesetzt. MCP
Dienstleistungen für andere MCP
Kundenanruf.
- MCP-ServerDieses Plugin ermöglicht eine vollständige
Dify
Ein Arbeitsablauf oder ein Dialogablauf ist in einemMCP
Server. Sobald der Endpunkt konfiguriert ist, kann die externe Anwendung ihn so aufrufen, als wäre er ein nativerMCP
Dienst ebenso wie mit IhremDify
Anwendung Interaktion.
- MCP-kompatible Dify-WerkzeugeWenn Sie nicht den gesamten Arbeitsablauf offenlegen wollen und nur die
Dify
eines nativen Tools (z.B. die aktuelle Uhrzeit) wird alsMCP
Dienstes ist dieses Plugin die beste Option.
Plugin Typ II: Aufrufen externer MCP-Dienste in Dify
Diese Art von Plugin spielt MCP
Mit der Mandantenrolle können Sie Dify
Die Anwendung ist in der Lage, externe MCP
Dienstleistungen.
- MCP SSE/StreamableHTTP: Dies ist ein Standard
MCP
Kunden-Tools. Alles, was Sie tun müssen, ist die Angabe derMCP
Adresse des Dienstes, findet er automatisch alle von diesem Dienst bereitgestellten Tools in derDify
direkt im Workflow. - Zum Zeitpunkt der Nutzung konfigurierte MCP-ToolsPlugin: Ähnliche Funktionalität wie das vorherige Plugin, aber es bietet mehr Flexibilität, indem es eine dynamische Konfiguration bei jedem Aufruf des Plugins
MCP
Dienstadresse.
Plugin-Typ III: Agentenstrategie
Agent
sein Dify
Das Gehirn im Workflow, das bestimmt, wie Mehrschrittaufgaben geplant und ausgeführt werden.MCP
Das Strategie-Plugin befähigt die Agent
Aufforderungen MCP
Die Kapazität des Werkzeugs.
- Agent Policy (unterstützt MCP-Tools)Dies ist die vielseitigste
Agent
Strategie-Plugin. Es unterstützt auchFunction Calling
im Gesang antwortenReAct
Zwei Modelle.- Funktion AufrufenDas Modell bestimmt direkt, welches Werkzeug aufgerufen und ausgeführt wird.
- ReActDas : Modell führt einen Denk-Aktions-Beobachtungs-Zyklus durch und eignet sich besser für komplexe Aufgaben, die mehrstufige Überlegungen erfordern.
- MCP-AgentenpolitikDies ist ein viel leichteres
Agent
Politik, die nur dieFunction Calling
Modus. Wenn Ihre Aufgabenlogik relativ einfach ist und durch den direkten Aufruf des Tools erledigt werden kann, dann ist dieses Plugin die effizientere Wahl.
Technische Details: Die Entscheidung SSE vs. Streamable HTTP
MCP
Das Protokoll unterstützt eine Vielzahl von Übertragungsverfahren, von denen HTTP with SSE
im Gesang antworten Streamable HTTP
sind die beiden wichtigsten Optionen für die Fernkommunikation.
Vergleichende Dimensionen | HTTP mit SSE (Server-gesendete Ereignisse) | Streamable HTTP (Normales HTTP/Fetch, das gestreamt werden kann) |
---|---|---|
Protokollschicht | Kapselt die Syntax von Ereignisrahmen auf der Grundlage von HTTP/1.1-Langverbindungen. | Standard-HTTP, basiert auf Chunked Transfer Encoding, kein festes Frame-Format. |
Kommunikationsrichtung | Einseitig (Server → Client). | Verfügbar in beide Richtungen. |
Browser-API | EventSource Objekt mit eingebauter automatischer Wiederherstellung der Verbindung. |
fetch() + ReadableStream Die Wiederverbindung erfordert eine selbst geschriebene Logik. |
Rahmen/Nachrichtenformat | Textformat, das die Gruppierung von Ereignissen und IDs unterstützt. | Freies Format, übertragbar NDJSON Binäres Slicing, etc. |
Heartbeat und Reconnect | Interne Unterstützung. | Muss eigenständig realisiert werden. |
typisches Szenario | Echtzeit-Benachrichtigungen, Log-Pushes. | AI-Token Streaming kehrt zurück, große Dateien werden heruntergeladen. |
Vor- und Nachteile in Kürze | Einfach zu implementieren, aber nur Einweg-/Klartext. | Flexibel und effizient, aber Sie müssen die Fehlerbehebung selbst in die Hand nehmen. |
Beratung bei der AuswahlBevorzugt, sofern keine Kompatibilität mit älteren Implementierungen erforderlich ist Streamingfähiges HTTP. Sie ist flexibler und nutzt besser die HTTP/2
im Gesang antworten HTTP/3
Die Multiplexing-Vorteile der modernen MCP
Die bevorzugte Übertragungslösung für Anwendungen.
MCP-Ökosysteme: Dienste und Plattformen
MCP
Der Wert liegt in seiner Ökologie. Zusätzlich zu Dify
Es gibt auch viele Plattformen und Dienste für MCP
Unterstützung wurde gewährt.
Aliyun und ModelScope
Aliyun und seine ModelScope
Die Gemeinde bietet eine Fülle von MCP
Ressourcen, einschließlich:
- ModeScope MCP QuadratischAggregieren einer großen Anzahl von hochwertigen
MCP
Ressourcen, um die Grenzen der Fähigkeiten des Modells zu erweitern.
- ModelScope MCP-LaborBietet eine Online-Umgebung zur Erforschung der Beziehung zwischen Open-Source-Modellen und
MCP Server
der freien Kombinationen.
- PYREX MCP-DienstleistungDie AliCloud Hundred Refinement Platform bietet einen vollständigen Zyklus
MCP
Hausmeisterdienste und Marketing.
MCP-Hosting-Plattform eines Drittanbieters
Wenn Sie keine eigene Software bereitstellen und pflegen wollen MCP
Server, sollten Sie eine Hosting-Plattform eines Drittanbieters verwenden.
Name der Plattform | (jemandem eine Stelle etc.) anbieten | Link (auf einer Website) |
---|---|---|
Kompositum | Spezialisierung für Entwickler MCP Gehostete Plattform mit Hunderten von vorintegrierten Tools und Funktionen auf Unternehmensniveau. |
https://mcp.composio.dev/ |
Zapier MCP | Oberbefehlshaber (Militär) MCP Der Zugriff auf das riesige Ökosystem mit mehr als 7.000 Anwendungen ist ideal für die schnelle Anbindung an alle Arten von Büro- und Unternehmenssoftware. |
https://zapier.com/mcp |
MCP.so | von der Gemeinschaft gesteuert MCP Aggregationsplattform mit vielen Beispielen und Playground zum Lernen und Experimentieren. |
https://mcp.so/playground |
Diese drei sind unterschiedlich positioniert:Composio
Der Schwerpunkt liegt auf professionellem Hosting und produktionsgerechten Anwendungen;Zapier MCP
konzentriert sich auf die Verbindung seines umfangreichen Ökosystems von Anwendungen für die Low-Code-Automatisierung, während die MCP.so
Dann ist es eine großartige Community-Ressource zum Lernen und Prototyping.