Used as the web framework for the MCP service's web interface, enabling HTTP-based interactions between AI tools and users through a browser.
The primary language for the MCP service, providing the foundation for all UI types (CLI, Web, PyQt) and tool implementations.
Mentioned as an example implementation option in the select_option tool, allowing AI tools to present PyTorch as an implementation choice to users.
MCP Interactive Service
Dies ist ein MCP-Dienst, der mithilfe der FastMCP-Bibliothek implementiert wurde und für die Interaktion mit KI-Tools wie Cursor, Windsurf usw. konzipiert ist. Wenn KI-Tools beim Aufrufen großer Sprachmodelle Benutzereingaben oder Optionsauswahl benötigen, können sie diesen MCP-Dienst aufrufen.
Hauptzweck
Der Hauptzweck dieses Plugins besteht darin, hochfrequente Kommunikation und Bestätigung zwischen KI-Tools (wie Cursor und Windsurf) und Nutzern zu ermöglichen. Es verbessert die Effizienz und Effektivität von KI-Interaktionen erheblich durch:
- Reduzierung verschwendeter Ressourcen : Indem Benutzer den Ansatz der KI bestätigen oder umleiten können, bevor sie sich auf einen möglicherweise falschen Lösungspfad festlegt, minimiert das Plug-In die Verschwendung von API-Aufrufen und Rechenressourcen.
- Maximierung der Ressourcennutzung : Jeder API-Aufruf an Cursor oder Windsurf wird produktiver, da die KI ihr Verständnis und ihre Vorgehensweise mit dem Benutzer überprüfen kann, bevor sie fortfährt.
- Vermeidung einer Fragmentierung der Aufmerksamkeit : Durch die frühzeitige Bestätigung von Ansätzen hilft das Plug-In dabei, den Fokus auf den richtigen Lösungspfad zu richten, anstatt die Aufmerksamkeit auf falsche Ansätze zu lenken.
- Interaktive Entscheidungsfindung ermöglichen : Benutzer können aktiv am Entscheidungsprozess teilnehmen und der KI unmittelbar Feedback und Anleitung geben.
- Rationalisierung komplexer Aufgaben : Bei Aufgaben mit mehreren Schritten stellt das Plug-In an jedem kritischen Entscheidungspunkt eine Übereinstimmung zwischen den Erwartungen des Benutzers und der KI-Ausführung sicher.
Merkmale
- Optionsauswahl : Zeigt eine Liste mit Optionen an, aus denen Benutzer durch Eingabe von Zahlen oder Bereitstellung benutzerdefinierter Antworten auswählen können.
- Informationsergänzung : Wenn KI-Modelle umfassendere Informationen benötigen, können sie Benutzer auffordern, zusätzliche Informationen direkt einzugeben
- Mehrere Benutzeroberflächen : Unterstützung für CLI-, Web- und PyQt-Schnittstellen
UI-Typen
Dieses Projekt unterstützt drei verschiedene Benutzeroberflächentypen mit jeweils eigenen Merkmalen:
CLI (Befehlszeilenschnittstelle)
- Beschreibung : Öffnet ein neues Eingabeaufforderungsfenster zur Benutzerinteraktion
- Vorteile :
- Minimale Abhängigkeiten (keine zusätzlichen Pakete erforderlich)
- Kann mehrere Dialogfenster gleichzeitig verarbeiten
- Funktioniert gut in Umgebungen ohne grafische Benutzeroberfläche
- Leicht und schnell zu starten
- Nachteile :
- Grundlegende visuelle Präsentation
- Für nicht-technische Benutzer möglicherweise nicht so intuitiv
- Am besten geeignet für : Serverumgebungen, Systeme mit begrenzten Ressourcen oder wenn mehrere Dialoge gleichzeitig erforderlich sind
PyQt-Schnittstelle
- Beschreibung : Bietet eine moderne grafische Benutzeroberfläche mit PyQt
- Vorteile :
- Saubere, professionell aussehende Dialoge
- Vertraute Desktop-Anwendungserfahrung
- Einfach zu verwenden für alle Benutzertypen
- Nachteile :
- Es kann immer nur ein Dialog gleichzeitig angezeigt werden
- Erfordert PyQt-Abhängigkeiten (größere Installation)
- Am besten geeignet für : Desktop-Nutzung, bei der die visuelle Attraktivität wichtig ist und jeweils nur ein Dialog benötigt wird
Webschnittstelle
- Beschreibung : Öffnet Dialoge in einem Webbrowser
- Vorteile :
- Kann mehrere Dialogfenster gleichzeitig verarbeiten
- Von überall über den Webbrowser zugänglich
- Moderne, anpassbare Benutzeroberfläche
- Nachteile :
- Erfordert die Installation eines Webbrowsers
- Etwas komplexere Einrichtung
- Am besten geeignet für : Remote-Zugriffsszenarien, Umgebungen, in denen eine Weboberfläche bevorzugt wird oder wenn mehrere gleichzeitige Dialoge erforderlich sind
Benutzerhandbuch
1. Erste Schritte (zwei Optionen)
Option A: Vorkompilierte ausführbare Datei verwenden (empfohlen für Windows)
- Laden Sie die neueste vorkompilierte ausführbare Datei von der GitHub-Releases -Seite herunter.
- Keine Installation erforderlich – laden Sie einfach die ausführbare Datei herunter und führen Sie sie aus.
- Sie können die Funktionalität mit diesen Befehlen testen:
- Fahren Sie zur Konfiguration mit Schritt 3 unten fort.
Option B: Vom Quellcode installieren
Dieses Projekt trennt Abhängigkeiten basierend auf verschiedenen UI-Typen:
requirements-base.txt
: Basisabhängigkeiten, die von allen UI-Typen gemeinsam genutzt werdenrequirements-pyqt.txt
: PyQt5-UI-Abhängigkeitenrequirements-web.txt
: Web-UI-Abhängigkeiten (Flask)
Sie können zum Installieren von Abhängigkeiten entweder das herkömmliche Pip oder den schnelleren UV-Paketmanager verwenden.
Verwenden von Pip (traditionelle Methode)
Wählen Sie die entsprechende Abhängigkeitsdatei basierend auf dem UI-Typ aus, den Sie verwenden möchten:
Hinweis: Jede spezifische UI-Abhängigkeitsdatei enthält bereits einen Verweis auf die Basisabhängigkeiten (über -r requirements-base.txt
), sodass Sie nur eine einzige Datei installieren müssen.
Verwendung von UV (empfohlen, schneller)
Wenn Sie UV bereits installiert haben, können Sie die folgenden Befehle verwenden, um eine virtuelle Umgebung zu erstellen und Abhängigkeiten zu installieren:
Sie können auch die Datei pyproject.toml des Projekts verwenden, um alle Abhängigkeiten direkt zu installieren:
2. Starten Sie das Programm
Starten Sie verschiedene UI-Antwortmethoden:
Andere Optionen zum Starten von Diensten:
3. Konfigurieren Sie Cursor, Windsurf oder Claude
Verwenden des stdio-Protokolls (empfohlen)
Das stdio-Protokoll ist die stabilste und empfohlene Verbindungsmethode. Es kommuniziert direkt mit Python-Skripten über die Standardeingabe/-ausgabe und bietet die folgenden Vorteile:
- Höhere Stabilität und Zuverlässigkeit
- Kann mehrere Dialogfelder gleichzeitig öffnen
- Einfach und direkt, keine Probleme mit der Netzwerkverbindung nötig
- Engere Integration mit dem System, schnellere Reaktion
Konfigurationsbeispiele:
Verwendung mit Python (Quellcode)
Verwendung mit ausführbarer Datei
Verwenden des SSE-Protokolls (Alternative)
Wenn Sie über das Netzwerk eine Verbindung zu einem Remote-Server herstellen müssen, können Sie das SSE-Protokoll verwenden:
Lokaler Start:
Cursorkonfiguration:
Windsurf-Konfiguration:
4. Konfigurieren Sie KI-Interaktionsregeln
Um die Effektivität der KI-Interaktionen in Cursor und Windsurf zu maximieren, konfigurieren Sie die folgenden Regeln, die die KI bei der Verwendung von MCP befolgen soll:
- Wenn die KI bei einer Aufgabe Unklarheiten aufweist oder zusätzliche Informationen benötigt, sollte sie MCP ai-interaction aufrufen, um den Benutzer um eine Klarstellung zu bitten.
- Wenn die KI über mehrere mögliche Lösungsansätze verfügt, sollte sie MCP ai-interaction aufrufen, damit der Benutzer den bevorzugten Ansatz auswählen kann.
- Nach Abschluss einer Aufgabe sollte die KI MCP ai-interaction aufrufen, um zu bestätigen, ob weitere Aufgaben ausgeführt werden müssen.
- Die KI sollte Aufgaben in mehrere Phasen unterteilen und vor dem Starten einer neuen Phase MCP ai-interaction aufrufen, um den Benutzer zu fragen, ob zusätzliche Gedanken oder Überlegungen einfließen müssen.
- Die KI sollte MCP proaktiv nutzen, um kritische Entscheidungen zu bestätigen, anstatt Annahmen zu treffen.
Diese Regeln gewährleisten eine qualitativ hochwertige, interaktive KI-Unterstützung und maximieren gleichzeitig den Wert jedes API-Aufrufs.
Weitere Funktionen
Verfügbare Tools anzeigen
Testwerkzeuge
Interaktiver Testclient
Das Projekt umfasst einen interaktiven Testclient, mit dem Sie den MCP-Dienst mit verschiedenen UI-Typen und -Methoden testen können:
Optionen:
--host
: Server-Host (Standard: localhost)--port
: Server-Port (Standard: 7888)--ui
: zu verwendender UI-Typ (CLI, PYQT, Web)
Der Kunde stellt zur Verfügung:
- Verbindungstest mit MCP-Dienst
- Auswahl des zu testenden UI-Typs
- Testen der Methoden select_option und request_additional_info
- Mehrere Parametervoreinstellungen für jede Methode
- Vollständige Visualisierung von Anfragen und Antworten
Dies ist besonders nützlich für:
- Debuggen von UI-Interaktionsproblemen
- Testen des Verhaltens verschiedener UI-Typen
- Vorführung des Dienstes für Benutzer
- Überprüfen der Serverfunktionalität
STDIO-Testclient
Um speziell das stdio-Transportprotokoll zu testen, stellen wir ein Kommandozeilentool zur Verfügung:
Weitere Einzelheiten finden Sie im STDIO-Testhandbuch .
UI-Tests
Werkzeugbeschreibung
Optionsauswahl (select_option)
Mit diesem Tool wird den Benutzern eine Reihe von Optionen angezeigt, aus denen sie durch die Eingabe von Zahlen oder die Angabe benutzerdefinierter Antworten auswählen können.
Parameter:
options
: Liste der Optionen, kann eine Liste von Zeichenfolgen oder Wörterbüchern seinprompt
: Dem Benutzer angezeigte Eingabeaufforderungsnachricht
Rückgabe: Ein Wörterbuch mit dem Auswahlergebnis im Format:
Informationsergänzung (request_additional_info)
Dieses Tool wird verwendet, um zusätzliche Informationen von Benutzern anzufordern.
Parameter:
prompt
: Eingabeaufforderung zum Anfordern von Informationencurrent_info
: Aktuelle Informationen, die den Benutzern als Referenz angezeigt werden
Rückgabe: Die vom Benutzer eingegebenen Zusatzinformationen (String)
Integration mit KI-Tools
Um diesen MCP-Dienst mit KI-Tools zu integrieren, führen Sie die folgenden Schritte aus:
- Starten Sie den MCP-Dienst entweder mit der ausführbaren Datei oder dem Python-Quellcode:
- Ausführbare Datei verwenden:
mcp-interactive.exe run
- Verwenden der Python-Quelle:
python main.py run
- Ausführbare Datei verwenden:
- Konfigurieren Sie den MCP-Endpunkt im KI-Tool und wählen Sie je nach Bedarf entweder das stdio- oder das SSE-Protokoll aus
- Rufen Sie das entsprechende MCP-Tool auf, wenn das KI-Modell Benutzereingaben oder eine Optionsauswahl benötigt
Claude Integration
So integrieren Sie Claude in die offiziellen Produkte von Anthropic oder in Apps von Drittanbietern:
- Konfigurieren Sie die Standarddio-Verbindung in den Einstellungen Ihres KI-Tools:
- Konfigurieren Sie Claude so, dass er den Interaktionsdienst bei Bedarf verwendet, mit Anweisungen wie:
- „Wenn Sie Benutzereingaben oder Bestätigungen benötigen, verwenden Sie den MCP-Interaktionsdienst.“
- „Für Multiple-Choice-Optionen rufen Sie das Tool select_option auf.“
- „Um zusätzliche Benutzerinformationen zu sammeln, rufen Sie das Tool request_additional_info auf.“
- Claude kann nun Optionen präsentieren und zusätzliche Informationen direkt über den MCP-Dienst anfordern.
Beispiele
Beispiel für eine Optionsauswahl
Beispiel für eine Informationsergänzung
Entwicklungsnotizen
- Sofern Sie nicht mehrere UI-Typen entwickeln oder testen müssen, wird empfohlen, nur eine UI-Abhängigkeit zu installieren
- Wenn Sie neue Abhängigkeiten hinzufügen müssen, fügen Sie diese bitte der entsprechenden Abhängigkeitsdatei hinzu
Aktueller Entwicklungsstand
Bitte beachten Sie folgenden Stand der Umsetzung:
- Windows : CLI- und PyQt-UI-Versionen sind voll funktionsfähig. Die Web-UI weist noch einige Probleme auf, die behoben werden müssen.
- Linux/Mac : Diese Plattformen wurden noch nicht gründlich getestet. Ihre Erfahrungen können abweichen.
Wir arbeiten aktiv daran, die Kompatibilität über alle Plattformen und UI-Typen hinweg zu verbessern.
Bau und Vertrieb
Erstellen ausführbarer Dateien
Dieses Projekt enthält ein Skript zum Erstellen einer eigenständigen ausführbaren Datei für Windows:
Dadurch wird mcp-interactive.exe
im dist
-Verzeichnis erstellt, das Sie ohne Python-Installation ausführen können.
Plattformübergreifendes Erstellen
So erstellen Sie ausführbare Dateien für verschiedene Plattformen:
Windows
macOS
Linux
Hinweis: Sie müssen auf der Zielplattform erstellen (Sie können keine ausführbaren macOS-Dateien von Windows usw. erstellen).
Verteilung über GitHub
So stellen Sie Ihre erstellten ausführbaren Dateien zum Download bereit:
- Erstellen Sie eine GitHub-Version für Ihr Projekt
- Laden Sie die erstellten ausführbaren Dateien als Release-Assets hoch
- Stellen Sie eine klare Dokumentation bereit, welche ausführbare Datei für welche Plattform verwendet werden soll.
Beispielschritte:
- Navigieren Sie zu Ihrem GitHub-Repository
- Klicken Sie in der rechten Seitenleiste auf „Releases“
- Klicken Sie auf „Neue Version erstellen“.
- Legen Sie einen Versionstag fest (z. B. v1.0.0).
- Fügen Sie einen Titel und eine Beschreibung für Ihre Veröffentlichung hinzu
- Ziehen Sie Ihre ausführbaren Dateien per Drag & Drop oder laden Sie sie für verschiedene Plattformen hoch
- Klicken Sie auf „Veröffentlichung veröffentlichen“
Benutzer können dann die entsprechende Version für ihr Betriebssystem von der GitHub-Releases-Seite herunterladen.
Lizenz
Dieses Projekt wird unter der MIT-Lizenz veröffentlicht.
This server cannot be installed
hybrid server
The server is able to function both locally and remotely, depending on the configuration or use case.
Eine Schnittstelle, die eine Hochfrequenzkommunikation zwischen KI-Tools (wie Cursor und Windsurf) und Benutzern ermöglicht und die Auswahl von Optionen und das Sammeln von Informationen über CLI-, Web- oder PyQt-Schnittstellen gestattet.
Related MCP Servers
- -securityFlicense-qualityThis server acts as a Message Communication Protocol (MCP) service for integrating Apifox and Cursor, enabling OpenAPI interface implementation through AI-driven interaction.Last updated -7TypeScript
- -securityFlicense-qualityA Model Context Protocol server that enables AI assistants to explore and interact with Cursor IDE's SQLite databases, providing access to project data, chat history, and composer information.Last updated -10Python
Apifox MCP Serverofficial
-securityFlicense-qualityA server that connects AI coding assistants like Cursor and Cline to Apifox API definitions, allowing developers to implement API interfaces through natural language commands.Last updated -8321- -securityFlicense-qualityThis server enables AI assistants (CLINE, Cursor, Windsurf, Claude Desktop) to share a common knowledge base through Retrieval Augmented Generation (RAG), providing consistent information access across multiple tools.Last updated -1TypeScript