interactive-mcp

MIT License
116
  • Apple
  • Linux
Integrations
  • Supports running the MCP server on Linux platforms, enabling OS-level interactions like notifications and command-line prompts

  • Supports macOS-specific optimizations with Terminal.app profile settings for improved window management when the MCP server starts and stops

  • Provides a Model Context Protocol server that runs locally alongside MCP clients, with direct access to the user's operating system for notifications and interactive prompts

mcp interactivo

Un servidor MCP implementado en Node.js/TypeScript facilita la comunicación interactiva entre los LLM y los usuarios. Nota: Este servidor está diseñado para ejecutarse localmente junto con el cliente MCP (p. ej., Claude Desktop, VS Code), ya que necesita acceso directo al sistema operativo del usuario para mostrar notificaciones y comandos de línea de comandos.

(Nota: Este proyecto está en sus primeras etapas.)

¿Quieres un resumen rápido? Consulta la entrada de introducción del blog: Deja que tu asistente de IA deje de adivinar: Presentamos interactive-mcp

Vídeo de demostración

Herramientas

Este servidor expone las siguientes herramientas a través del Protocolo de contexto de modelo (MCP):

  • request_user_input : Formula una pregunta al usuario y devuelve su respuesta. Puede mostrar opciones predefinidas.
  • message_complete_notification : envía una notificación simple del sistema operativo.
  • start_intensive_chat : inicia una sesión de chat de línea de comandos persistente.
  • ask_intensive_chat : hace una pregunta dentro de una sesión de chat intensiva activa.
  • stop_intensive_chat : cierra una sesión de chat intensiva activa.

Manifestación

A continuación se muestran demostraciones de las funciones interactivas:

Pregunta normalNotificación de finalización
Inicio del chat intensivoFin del chat intensivo

Escenarios de uso

Este servidor es ideal para escenarios donde un LLM necesita interactuar directamente con el usuario en su máquina local, como:

  • Procesos de instalación o configuración interactivos.
  • Recopilación de comentarios durante la generación o modificación del código.
  • Aclarar instrucciones o confirmar acciones en programación en pares.
  • Cualquier flujo de trabajo que requiera entrada o confirmación del usuario durante la operación LLM.

Configuración del cliente

Esta sección explica cómo configurar los clientes MCP para utilizar el servidor interactive-mcp .

De forma predeterminada, las solicitudes de usuario expiran a los 30 segundos. Puede personalizar las opciones del servidor, como el tiempo de espera o las herramientas deshabilitadas, añadiendo indicadores de línea de comandos directamente a la matriz args al configurar su cliente.

Asegúrese de tener el comando npx disponible.

Uso con Claude Desktop/Cursor

Agregue la siguiente configuración mínima a su claude_desktop_config.json (Claude Desktop) o mcp.json (Cursor):

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

Ejemplo con tiempo de espera personalizado (30 s):

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

Uso con VS Code

Agregue la siguiente configuración mínima a su archivo de configuración de usuario (JSON) o .vscode/mcp.json :

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

Para una experiencia más fluida en macOS usando la Terminal.app predeterminada, considere esta configuración de perfil:

  • (Pestaña Shell): En "Al salir del shell" ( Terminal > Configuración > Perfiles > [Su perfil] > Shell ), seleccione "Cerrar si el shell salió correctamente" o "Cerrar la ventana" . Esto facilita la administración de ventanas al iniciar y detener el servidor MCP.

Configuración de desarrollo

Esta sección está dirigida principalmente a desarrolladores que desean modificar o contribuir al servidor. Si solo desea usar el servidor con un cliente MCP, consulte la sección "Configuración del cliente" más arriba.

Prerrequisitos

  • Node.js: Verifique package.json para comprobar la compatibilidad de versiones.
  • pnpm: Se utiliza para la gestión de paquetes. Se instala mediante npm install -g pnpm después de instalar Node.js.

Instalación (Desarrolladores)

  1. Clonar el repositorio:
    git clone https://github.com/ttommyth/interactive-mcp.git cd interactive-mcp
  2. Instalar dependencias:
    pnpm install

Ejecución de la aplicación (desarrolladores)

pnpm start
Opciones de la línea de comandos

El servidor interactive-mcp acepta las siguientes opciones de línea de comandos. Estas suelen configurarse en la configuración JSON del cliente MCP, añadiéndolas directamente a la matriz args (consulte los ejemplos de "Configuración del cliente").

OpciónAliasDescripción
--timeout-tEstablece el tiempo de espera predeterminado (en segundos) para las solicitudes de entrada del usuario. El valor predeterminado es 30 segundos.
--disable-tools-dDesactiva herramientas o grupos específicos (lista separada por comas). Impide que el servidor los anuncie o registre. Opciones: request_user_input , message_complete_notification , intensive_chat .

Ejemplo: Configuración de múltiples opciones en la matriz args de configuración del cliente:

// 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 ]

Comandos de desarrollo

  • Compilación: pnpm build
  • Pelusa: pnpm lint
  • Formato: pnpm format

Principios rectores para la interacción

Al interactuar con este servidor MCP (por ejemplo, como cliente LLM), tenga en cuenta los siguientes principios para garantizar la claridad y reducir cambios inesperados:

  • Priorizar la interacción: utilice las herramientas MCP proporcionadas ( request_user_input , start_intensive_chat , etc.) con frecuencia para interactuar con el usuario.
  • Aclaración: Si los requisitos, las instrucciones o el contexto no están claros, siempre haga preguntas aclaratorias antes de continuar. No haga suposiciones.
  • Confirmar acciones: antes de realizar acciones importantes (como modificar archivos, ejecutar comandos complejos o tomar decisiones arquitectónicas), confirme el plan con el usuario.
  • Proporcionar opciones: siempre que sea posible, presente al usuario opciones predefinidas a través de las herramientas MCP para facilitar decisiones rápidas.

Puede proporcionar estas instrucciones a un cliente LLM de la siguiente manera:

# 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.

Contribuyendo

¡Agradecemos sus contribuciones! Por favor, sigan las prácticas de desarrollo estándar. (Se añadirán más detalles más adelante).

Licencia

MIT (consulte el archivo LICENSE para obtener más detalles, si corresponde, o especifique la licencia directamente).

You must be authenticated.

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

Un servidor MCP Node.js/TypeScript que facilita la comunicación interactiva entre LLM y usuarios, permitiendo que los asistentes de IA soliciten entradas del usuario, muestren notificaciones y administren sesiones de chat de línea de comandos.

  1. Herramientas
    1. Manifestación
      1. Escenarios de uso
        1. Configuración del cliente
          1. Uso con Claude Desktop/Cursor
          2. Uso con VS Code
        2. Configuración de desarrollo
          1. Prerrequisitos
          2. Instalación (Desarrolladores)
          3. Ejecución de la aplicación (desarrolladores)
        3. Comandos de desarrollo
          1. Principios rectores para la interacción
            1. Contribuyendo
              1. Licencia

                Related MCP Servers

                • A
                  security
                  A
                  license
                  A
                  quality
                  A TypeScript-based server that allows calling other MCP clients from your own MCP client, facilitating task delegation and context window offloading for enhanced multi-agent interactions.
                  Last updated -
                  3
                  14
                  JavaScript
                  MIT License
                  • Apple
                • -
                  security
                  A
                  license
                  -
                  quality
                  A server for the Machine Chat Protocol (MCP) that provides a YAML-based configuration system for LLM applications, allowing users to define resources, tools, and prompts without writing code.
                  Last updated -
                  5
                  Python
                  MIT License
                  • Linux
                  • Apple
                • -
                  security
                  F
                  license
                  -
                  quality
                  MCP server enabling LLMs to perform browser tasks via SSE transport, allowing clients like Cursor.ai and Claude to open websites and interact with web content through natural language commands.
                  Last updated -
                  • Apple
                • -
                  security
                  A
                  license
                  -
                  quality
                  An MCP server that helps novice developers deploy web applications through conversational interfaces, bridging the gap between LLMs and various hosting environments.
                  Last updated -
                  1
                  Python
                  MIT License
                  • Apple

                View all related MCP servers

                ID: uoxv1x0489