Das ACP-Team hat zunächst das Erkunden des Model Context Protocol (MCP) geprüft, da es eine solide Grundlage für Modell-Kontext-Interaktionen bietet. Das Team stieß jedoch schnell auf architektonische Einschränkungen, die es für eine echte Agent-to-Agent-Kommunikation ungeeignet machen.
Warum MCP für Multiagentensysteme nicht ausreicht:
Streaming: MCP unterstützt einfaches Streaming, wahrscheinlich von vollständigen Nachrichten, aber nicht den detaillierteren „Delta“-Stil, bei dem Aktualisierungen gesendet werden, sobald sie erfolgen. Delta-Streams, wie Token und Trajektorienaktualisierungen, sind Streams, die aus inkrementellen Aktualisierungen und nicht aus vollständigen Daten-Nutzlasten bestehen. Diese Einschränkung ergibt sich aus der Tatsache, dass MCP bei seiner Erstellung nicht für Interaktionen im Stil von Agenten gedacht war.
Gemeinsame Nutzung von Speichern: MCP unterstützt nicht die Ausführung mehrerer Agenten auf mehreren Servern unter Beibehaltung des gemeinsam genutzten Speichers. ACP unterstützt diese Funktion auch noch nicht vollständig, aber es ist ein aktiver Bereich der Entwicklung.
Nachrichtenstruktur: MCP akzeptiert jedes JSON-Schema, definiert aber nicht die Struktur des Nachrichtentexts. Diese Flexibilität erschwert die Interoperabilität, insbesondere beim Erstellen von Agenten, die unterschiedliche Nachrichtenformate interpretieren müssen.
Protokollkomplexität: MCP verwendet JSON-RPC und erfordert bestimmte SDKs und Laufzeiten. Das REST-basierte Design von ACP mit integrierter Async/Sync-Unterstützung ist hingegen leichter und integrationsfreundlich.
Stellen Sie sich MCP als Werkzeug vor, das einer Person bessere Mittel gibt, wie zum Beispiel einen Taschenrechner oder ein Nachschlagewerk, um ihre Leistung zu verbessern. Im Gegensatz dazu geht es bei ACP darum, Menschen die Möglichkeit zu geben, Teams zu bilden, in denen alle Personen und Agenten ihre Fähigkeiten gemeinsam in der Anwendung einbringen.
ACP und MCP können sich gegenseitig ergänzen: