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
MCP-сервер, реализованный в Node.js/TypeScript, облегчающий интерактивное общение между LLM и пользователями. Примечание: этот сервер предназначен для локальной работы вместе с клиентом MCP (например, Claude Desktop, VS Code), поскольку ему необходим прямой доступ к операционной системе пользователя для отображения уведомлений и запросов командной строки.
(Примечание: этот проект находится на ранней стадии.)
Хотите краткий обзор? Ознакомьтесь с вводной записью в блоге: Stop Your AI Assistant From Guessing — Introducing interactive-mcp
Демонстрационное видео |
---|
Инструменты
Этот сервер предоставляет следующие инструменты через протокол контекста модели (MCP):
request_user_input
: Задает пользователю вопрос и возвращает его ответ. Может отображать предопределенные параметры.message_complete_notification
: отправляет простое уведомление ОС.start_intensive_chat
: инициирует постоянный сеанс чата в командной строке.ask_intensive_chat
: Задает вопрос в ходе активного сеанса интенсивного чата.stop_intensive_chat
: Закрывает активный сеанс интенсивного чата.
Демо
Вот демонстрации интерактивных функций:
Обычный вопрос | Уведомление о завершении |
---|---|
Начало интенсивного чата | Конец интенсивного чата |
---|---|
Сценарии использования
Этот сервер идеально подходит для сценариев, в которых LLM необходимо напрямую взаимодействовать с пользователем на его локальном компьютере, например:
- Интерактивные процессы настройки или конфигурирования.
- Сбор отзывов во время генерации или модификации кода.
- Уточнение инструкций или подтверждение действий в парном программировании.
- Любой рабочий процесс, требующий ввода данных или подтверждения пользователя во время работы LLM.
Конфигурация клиента
В этом разделе объясняется, как настроить клиенты MCP для использования сервера interactive-mcp
.
По умолчанию запросы пользователя будут отсутствовать по истечении 30 секунд. Вы можете настроить параметры сервера, такие как тайм-аут или отключенные инструменты, добавив флаги командной строки непосредственно в массив args
при настройке клиента.
Убедитесь, что у вас доступна команда npx
.
Использование с Claude Desktop / Курсор
Добавьте следующую минимальную конфигурацию в файл claude_desktop_config.json
(Claude Desktop) или mcp.json
(Cursor):
Пример с пользовательским тайм-аутом (30 с):
Использование с VS Code
Добавьте следующую минимальную конфигурацию в файл настроек пользователя (JSON) или .vscode/mcp.json
:
Рекомендации для macOS
Для более плавной работы на macOS с использованием стандартного Terminal.app
рассмотрите следующую настройку профиля:
- (Вкладка Shell): В разделе «При выходе из оболочки» ( Терминал > Настройки > Профили > [Ваш профиль] > Shell ) выберите «Закрыть, если оболочка завершилась нормально» или «Закрыть окно» . Это помогает управлять окнами при запуске и остановке сервера MCP.
Настройка разработки
Этот раздел в первую очередь предназначен для разработчиков, желающих изменить или внести свой вклад в сервер. Если вы просто хотите использовать сервер с клиентом MCP, см. раздел «Конфигурация клиента» выше.
Предпосылки
- Node.js: Проверьте
package.json
на совместимость версий. - pnpm: Используется для управления пакетами. Устанавливается через
npm install -g pnpm
после установки Node.js.
Установка (Разработчики)
- Клонируйте репозиторий:
- Установите зависимости:
Запуск приложения (разработчики)
Параметры командной строки
Сервер interactive-mcp
принимает следующие параметры командной строки. Обычно их следует настраивать в настройках JSON вашего клиента MCP, добавляя их непосредственно в массив args
(см. примеры «Конфигурация клиента»).
Вариант | Псевдоним | Описание |
---|---|---|
--timeout | -t | Устанавливает тайм-аут по умолчанию (в секундах) для запросов на ввод данных пользователем. По умолчанию 30 секунд. |
--disable-tools | -d | Отключает определенные инструменты или группы (список, разделенный запятыми). Запрещает серверу рекламировать или регистрировать их. Параметры: request_user_input , message_complete_notification , intensive_chat . |
Пример: установка нескольких параметров в массиве args
конфигурации клиента:
Команды развития
- Сборка:
pnpm build
- Линт:
pnpm lint
- Формат:
pnpm format
Руководящие принципы взаимодействия
При взаимодействии с этим сервером MCP (например, в качестве клиента LLM) придерживайтесь следующих принципов, чтобы обеспечить ясность и сократить количество неожиданных изменений:
- Отдайте приоритет взаимодействию: регулярно используйте предоставленные инструменты MCP (
request_user_input
,start_intensive_chat
и т. д.) для взаимодействия с пользователем. - Просите разъяснений: Если требования, инструкции или контекст неясны, всегда задавайте уточняющие вопросы, прежде чем продолжить. Не делайте предположений.
- Подтверждение действий: перед выполнением важных действий (например, изменением файлов, запуском сложных команд или принятием архитектурных решений) согласуйте план с пользователем.
- Предоставьте варианты: по возможности предоставьте пользователю предопределенные варианты с помощью инструментов MCP, чтобы облегчить принятие быстрых решений.
Вы можете предоставить эти инструкции клиенту LLM следующим образом:
Внося вклад
Вклады приветствуются! Пожалуйста, следуйте стандартным практикам разработки. (Дополнительные подробности могут быть добавлены позже).
Лицензия
MIT (подробности см. в файле LICENSE
, если применимо, или укажите лицензию напрямую).
You must be authenticated.
Tools
MCP-сервер Node.js/TypeScript, который обеспечивает интерактивное общение между LLM и пользователями, позволяя помощникам с искусственным интеллектом запрашивать ввод данных пользователем, отображать уведомления и управлять сеансами чата в командной строке.
- Инструменты
- Демо
- Сценарии использования
- Конфигурация клиента
- Настройка разработки
- Команды развития
- Руководящие принципы взаимодействия
- Внося вклад
- Лицензия
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