интерактивный-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
, если применимо, или укажите лицензию напрямую).
local-only server
The server can only run on the client's local machine because it depends on local resources.
Tools
MCP-сервер Node.js/TypeScript, который обеспечивает интерактивное общение между LLM и пользователями, позволяя помощникам с искусственным интеллектом запрашивать ввод данных пользователем, отображать уведомления и управлять сеансами чата в командной строке.
- Инструменты
- Демо
- Сценарии использования
- Конфигурация клиента
- Настройка разработки
- Команды развития
- Руководящие принципы взаимодействия
- Внося вклад
- Лицензия
Related Resources
Related MCP Servers
- -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
- AsecurityAlicenseAqualityA Model Context Protocol server that enables AI assistants to interact with Linear project management systems, allowing users to retrieve, create, and update issues, projects, and teams through natural language.Last updated -3291394TypeScriptMIT License
- -securityAlicense-qualityAn MCP server that allows AI assistants to utilize human capabilities by sending requests to humans and receiving their responses through a Streamlit UI.Last updated -42PythonMIT License
- AsecurityFlicenseAqualityAn MCP server that enables LLMs to interact with Agent-to-Agent (A2A) protocol compatible agents, allowing for sending messages, tracking tasks, and receiving streaming responses.Last updated -524TypeScript