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 normal | Notificación de finalización |
---|---|
Inicio del chat intensivo | Fin 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):
Ejemplo con tiempo de espera personalizado (30 s):
Uso con VS Code
Agregue la siguiente configuración mínima a su archivo de configuración de usuario (JSON) o .vscode/mcp.json
:
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)
- Clonar el repositorio:
- Instalar dependencias:
Ejecución de la aplicación (desarrolladores)
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ón | Alias | Descripción |
---|---|---|
--timeout | -t | Establece el tiempo de espera predeterminado (en segundos) para las solicitudes de entrada del usuario. El valor predeterminado es 30 segundos. |
--disable-tools | -d | Desactiva 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:
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:
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.
Tools
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.
- Herramientas
- Manifestación
- Escenarios de uso
- Configuración del cliente
- Configuración de desarrollo
- Comandos de desarrollo
- Principios rectores para la interacción
- Contribuyendo
- Licencia
Related Resources
Related MCP Servers
- AsecurityAlicenseAqualityA 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 -314JavaScriptMIT License
- -securityAlicense-qualityA 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 -5PythonMIT License
- -securityFlicense-qualityMCP 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 -
- -securityAlicense-qualityAn MCP server that helps novice developers deploy web applications through conversational interfaces, bridging the gap between LLMs and various hosting environments.Last updated -1PythonMIT License