Interactive MCP

MIT License
116
46
  • Apple
  • Linux
Integrations
  • Provides cross-platform support for Linux environments, allowing LLMs to interact directly with users on their local Linux machines.

  • Supports running on macOS with specific recommendations for Terminal.app settings to ensure a smooth experience with the interactive MCP server.

  • Implements the Model Context Protocol (MCP) server in Node.js, allowing seamless integration with the local operating system for displaying notifications and command-line prompts.

interaktives-mcp

Ein in Node.js/TypeScript implementierter MCP-Server, der die interaktive Kommunikation zwischen LLMs und Benutzern ermöglicht. Hinweis: Dieser Server ist für den lokalen Betrieb neben dem MCP-Client (z. B. Claude Desktop, VS Code) konzipiert, da er direkten Zugriff auf das Betriebssystem des Benutzers benötigt, um Benachrichtigungen und Eingabeaufforderungen anzuzeigen.

(Hinweis: Dieses Projekt befindet sich noch in der Anfangsphase.)

Möchten Sie einen schnellen Überblick? Lesen Sie den einführenden Blogbeitrag: Stoppen Sie das Raten Ihres KI-Assistenten – Einführung in interactive-mcp

Demo-Video

Werkzeuge

Dieser Server stellt die folgenden Tools über das Model Context Protocol (MCP) bereit:

  • request_user_input : Stellt dem Benutzer eine Frage und gibt dessen Antwort zurück. Kann vordefinierte Optionen anzeigen.
  • message_complete_notification : Sendet eine einfache Betriebssystembenachrichtigung.
  • start_intensive_chat : Startet eine dauerhafte Befehlszeilen-Chatsitzung.
  • ask_intensive_chat : Stellt eine Frage während einer aktiven intensiven Chat-Sitzung.
  • stop_intensive_chat : Schließt eine aktive intensive Chatsitzung.

Demo

Hier sind Demonstrationen der interaktiven Funktionen:

Normale FrageAbschlussbenachrichtigung
Intensiver Chat-StartIntensives Chat-Ende

Anwendungsszenarien

Dieser Server eignet sich ideal für Szenarien, in denen ein LLM direkt mit dem Benutzer auf dessen lokalem Computer interagieren muss, beispielsweise:

  • Interaktive Einrichtungs- oder Konfigurationsprozesse.
  • Sammeln von Feedback während der Codegenerierung oder -änderung.
  • Anweisungen klären oder Aktionen beim Paarprogrammieren bestätigen.
  • Jeder Workflow, der während des LLM-Vorgangs eine Benutzereingabe oder -bestätigung erfordert.

Client-Konfiguration

In diesem Abschnitt wird erläutert, wie MCP-Clients für die Verwendung des interactive-mcp -Servers konfiguriert werden.

Standardmäßig werden Benutzeraufforderungen nach 30 Sekunden abgebrochen. Sie können Serveroptionen wie Timeout oder deaktivierte Tools anpassen, indem Sie bei der Konfiguration Ihres Clients Kommandozeilen-Flags direkt zum Array args hinzufügen.

Bitte stellen Sie sicher, dass Ihnen der Befehl npx zur Verfügung steht.

Verwendung mit Claude Desktop / Cursor

Fügen Sie die folgende minimale Konfiguration zu Ihrer claude_desktop_config.json (Claude Desktop) oder mcp.json (Cursor) hinzu:

{ "mcpServers": { "interactive": { "command": "npx", "args": ["-y", "interactive-mcp"] } } }

Mit spezifischer Version

{ "mcpServers": { "interactive": { "command": "npx", "args": ["-y", "interactive-mcp@1.9.0"] } } }

Beispiel mit benutzerdefiniertem Timeout (30 s):

{ "mcpServers": { "interactive": { "command": "npx", "args": ["-y", "interactive-mcp", "-t", "30"] } } }

Verwendung mit VS Code

Fügen Sie Ihrer Benutzereinstellungsdatei (JSON) oder .vscode/mcp.json die folgende minimale Konfiguration hinzu:

{ "mcp": { "servers": { "interactive-mcp": { "command": "npx", "args": ["-y", "interactive-mcp"] } } } }
macOS-Empfehlungen

Für ein reibungsloseres Erlebnis unter macOS mit der Terminal.app sollten Sie diese Profileinstellung berücksichtigen:

  • (Registerkarte „Shell“): Wählen Sie unter „Beim Beenden der Shell“ ( Terminal > Einstellungen > Profile > [Ihr Profil] > Shell ) die Option „Schließen, wenn die Shell ordnungsgemäß beendet wurde“ oder „Fenster schließen“ . Dies erleichtert die Verwaltung von Fenstern beim Starten und Stoppen des MCP-Servers.

Entwicklungs-Setup

Dieser Abschnitt richtet sich in erster Linie an Entwickler, die den Server ändern oder ergänzen möchten. Wenn Sie den Server nur mit einem MCP-Client verwenden möchten, lesen Sie den Abschnitt „Client-Konfiguration“ weiter oben.

Voraussetzungen

  • Node.js: Überprüfen Sie package.json auf Versionskompatibilität.
  • pnpm: Wird für die Paketverwaltung verwendet. Die Installation erfolgt über npm install -g pnpm nach der Installation von Node.js.

Installation (Entwickler)

  1. Klonen Sie das Repository:
    git clone https://github.com/ttommyth/interactive-mcp.git cd interactive-mcp
  2. Installieren Sie Abhängigkeiten:
    pnpm install

Ausführen der Anwendung (Entwickler)

pnpm start
Befehlszeilenoptionen

Der interactive-mcp -Server akzeptiert die folgenden Befehlszeilenoptionen. Diese sollten typischerweise in den JSON-Einstellungen Ihres MCP-Clients konfiguriert werden, indem sie direkt zum Array args hinzugefügt werden (siehe Beispiele „Client-Konfiguration“).

OptionAliasBeschreibung
--timeout-tLegt das Standard-Timeout (in Sekunden) für Benutzereingabeaufforderungen fest. Der Standardwert beträgt 30 Sekunden.
--disable-tools-dDeaktiviert bestimmte Tools oder Gruppen (komma-getrennte Liste). Verhindert, dass der Server diese ankündigt oder registriert. Optionen: request_user_input , message_complete_notification , intensive_chat .

Beispiel: Festlegen mehrerer Optionen im Array „Client- args :

// Example combining options in client config's "args": "args": [ "-y", "interactive-mcp", "-t", "30", // Set timeout to 30 seconds "--disable-tools", "message_complete_notification,intensive_chat" // Disable notifications and intensive chat ]

Entwicklungsbefehle

  • Build: pnpm build
  • Flusen: pnpm lint
  • Format: pnpm format

Leitlinien für die Interaktion

Beachten Sie bei der Interaktion mit diesem MCP-Server (z. B. als LLM-Client) die folgenden Grundsätze, um Übersichtlichkeit zu gewährleisten und unerwartete Änderungen zu vermeiden:

  • Priorisieren Sie die Interaktion: Nutzen Sie die bereitgestellten MCP-Tools ( request_user_input , start_intensive_chat usw.) häufig, um mit dem Benutzer zu interagieren.
  • Klärung einholen: Wenn Anforderungen, Anweisungen oder der Kontext unklar sind, stellen Sie immer klärende Fragen, bevor Sie fortfahren. Stellen Sie keine Annahmen an.
  • Aktionen bestätigen: Bevor Sie wichtige Aktionen ausführen (wie das Ändern von Dateien, das Ausführen komplexer Befehle oder das Treffen von Architekturentscheidungen), bestätigen Sie den Plan mit dem Benutzer.
  • Optionen bereitstellen: Stellen Sie dem Benutzer, wenn möglich, über die MCP-Tools vordefinierte Optionen zur Verfügung, um schnelle Entscheidungen zu ermöglichen.

Sie können einem LLM-Client diese Anweisungen wie folgt bereitstellen:

# Interaction - Please use the interactive MCP tools - Please provide options to interactive MCP if possible # Reduce Unexpected Changes - Do not make assumption. - Ask more questions before executing, until you think the requirement is clear enough.

Beitragen

Beiträge sind willkommen! Bitte befolgen Sie die üblichen Entwicklungspraktiken. (Weitere Details können später hinzugefügt werden.)

Lizenz

MIT (Einzelheiten finden Sie in der Datei LICENSE – falls zutreffend, oder geben Sie die Lizenz direkt an).

You must be authenticated.

A
security – no known vulnerabilities
A
license - permissive license
A
quality - confirmed to work

local-only server

The server can only run on the client's local machine because it depends on local resources.

Stellen Sie Benutzern Fragen von Ihrem LLM! interactive-mcp: Lokaler, plattformübergreifender MCP-Server für interaktive Eingabeaufforderungen, Chat und Benachrichtigungen.

  1. Werkzeuge
    1. Demo
      1. Anwendungsszenarien
        1. Client-Konfiguration
          1. Verwendung mit Claude Desktop / Cursor
          2. Verwendung mit VS Code
        2. Entwicklungs-Setup
          1. Voraussetzungen
          2. Installation (Entwickler)
          3. Ausführen der Anwendung (Entwickler)
        3. Entwicklungsbefehle
          1. Leitlinien für die Interaktion
            1. Beitragen
              1. Lizenz

                Related MCP Servers

                • A
                  security
                  A
                  license
                  A
                  quality
                  An MCP server to run commands.
                  Last updated -
                  2
                  446
                  138
                  TypeScript
                  MIT License
                  • Apple
                • A
                  security
                  A
                  license
                  A
                  quality
                  A secure terminal execution server that enables controlled command execution with security features and resource limits via the Model Context Protocol (MCP).
                  Last updated -
                  1
                  12
                  1
                  JavaScript
                  MIT License
                  • Apple
                • -
                  security
                  F
                  license
                  -
                  quality
                  An MCP server that allows AI assistants like Claude to execute terminal commands on the user's computer and return the output, functioning like a terminal through AI.
                  Last updated -
                  7
                  Python
                  • Apple

                View all related MCP servers

                MCP directory API

                We provide all the information about MCP servers via our MCP API.

                curl -X GET 'https://glama.ai/api/mcp/v1/servers/ttommyth/interactive-mcp'

                If you have feedback or need assistance with the MCP directory API, please join our Discord server