Menager MCP Server
Menager MCP Server

menager — это сервер Model Context Protocol (MCP) на TypeScript, предназначенный для оркестрации терминалов между сессиями. Он позволяет сессии ИИ-агента (или оператору-человеку) выступать в роли главной управляющей плоскости, способной запускать, отслеживать, управлять и подключаться к дочерним терминальным средам (CLI-инструментам, вторичным ИИ-агентам, интерактивным оболочкам или мультиязычным средам выполнения) через стандартные POSIX-псевдотерминалы (pty).
Содержание
Related MCP server: pty-mcp
Возможности
Мультиплексирование мультиязычных сред: управляйте интерактивными процессами, написанными на любом языке, через стандартные POSIX-псевдотерминалы.
Имитация ввода с клавиатуры: бесшовно вводите текст, управляющие последовательности (
SIGINT, EOF, Ctrl+C) и «сырые» нажатия клавиш в дочернийstdin.Предсказуемый перехват событий: предоставляйте неблокирующие хуки на основе регулярных выражений с гарантированным таймаутом и опциональными немедленными автоответами.
Наблюдаемость с ограничением памяти: ведите отдельные циклические буферы для каждой сессии (по умолчанию 5 000 строк) с удалением ANSI-кодов в реальном времени для эффективного по токенам потребления контекста LLM.
Строгая асинхронность и дисциплина ресурсов: обработка событий остаётся чисто событийной с использованием event emitter'ов и промисов Node.js; границы буферов строго соблюдаются для предотвращения утечек памяти.
Установка
Установка вручную
# Clone the repository
git clone <your-repo-url>
cd menager
# Install dependencies (requires build-essential/g++ for node-pty native bindings)
npm install
# Build the project
npm run buildИспользование
Запуск сервера
Сервер работает через транспорт Stdio и предназначен для непосредственного запуска MCP-клиентами.
# Start the server (standard mode)
npm start
# Or run the built file directly
node build/index.jsДоступные инструменты
session_spawn
Запускает новую дочернюю PTY-сессию.
command(string): Целевой бинарный файл или исполняемый файл (например,bash,python3). Обязательно.args(string[]): Аргументы командной строки.cwd(string): Путь к рабочей директории.env(object): Дополнительные переменные окружения.maxBufferLines(number): Лимит скользящего окна по числу строк в буферах памяти (по умолчанию 5000).terminalType(string): Тип эмуляции терминала ("dumb"или"xterm-256color", по умолчанию"xterm-256color").name(string): Опциональное логическое имя/метка для сессии.cols(number): Колонки терминала (по умолчанию 80).rows(number): Строки терминала (по умолчанию 24).
session_wait
Блокирует выполнение и ожидает корректного завершения сессии, возвращая её итоговый код выхода.
sessionId(string): Целевой ID сессии. Обязательно.timeoutMs(number): Опциональный таймаут в миллисекундах.
session_write
Вводит нажатия клавиш, команды или escape-последовательности в стандартный ввод сессии.
sessionId(string): Целевой ID сессии. Обязательно.payload(string): Строка или последовательность управляющих символов. Обязательно.pressEnter(boolean): Добавляет\nк полезной нагрузке (по умолчанию false — критическое изменение в v4).pressKey(string): Инъекция специальной клавиши (Ctrl+C,Ctrl+D,Enter,Tab,Escape,ArrowUp,ArrowDown).
session_read
Читает буферизованный вывод целевой сессии.
sessionId(string): Целевой ID сессии. Обязательно.tailLines(number): Количество последних строк для получения (по умолчанию 100).stripAnsi(boolean): Возвращать очищенный текст без ANSI-кодов (по умолчанию true).clearBuffer(boolean): Очищать внутренние буферы после чтения (по умолчанию false).offsetLines(number): Читать строки, начиная с этого абсолютного смещения индекса (заменяет tailLines).grepPattern(string): Предварительная фильтрация строк буфера с помощью строки регулярного выражения.
session_hook
Ожидает конкретное регулярное выражение в потоке сессии с опциональным автоматическим ответом.
sessionId(string): Целевой ID сессии. Обязательно.pattern(string): Строка регулярного выражения для наблюдения. Обязательно.timeoutMs(number): Миллисекунды до истечения таймаута (по умолчанию 30000).autoResponse(string): Опциональная строка для немедленной записи при совпадении.triggerPayload(string): Записать полезную нагрузку после регистрации хука (предотвращает взаимоблокировку при конкурентном доступе).
session_resize
Изменяет размеры целевого PTY-терминала.
sessionId(string): Целевой ID сессии. Обязательно.cols(number): Колонки терминала. Обязательно.rows(number): Строки терминала. Обязательно.
session_signal
Отправляет POSIX-сигнал целевой сессии (с рекурсивным завершением дерева процессов).
sessionId(string): Целевой ID сессии. Обязательно.signal(string): Сигнал для доставки (SIGINT,SIGTERM,SIGKILL). Обязательно.
session_close
Принудительно завершает дерево процессов сессии и немедленно удаляет буферы памяти.
sessionId(string): Целевой ID сессии. Обязательно.
session_prune
Принудительно удаляет сессии для освобождения памяти.
status(string): Удалять только сессии с этим статусом ("running"или"exited"). По умолчанию —"exited".
session_info
Возвращает актуальные метаданные и метрики одной сессии.
sessionId(string): Целевой ID сессии. Обязательно.
session_list
Перечисляет все активные и завершённые сессии, управляемые сервером. Параметры не требуются.
Настройка с ИИ-ассистентами
Настройка с Roo Code или Cline
Откройте файл настроек MCP (обычно
cline_mcp_settings.jsonилиconfig.json).Добавьте следующую конфигурацию для стандартного режима stdio:
{
"mcpServers": {
"menager-mcp": {
"command": "node",
"args": ["/path/to/menager/build/index.js"],
"env": {}
}
}
}Настройка с Claude Desktop
Откройте
claude_desktop_config.json.Добавьте следующую конфигурацию:
{
"mcpServers": {
"menager-mcp": {
"command": "node",
"args": ["/path/to/menager/build/index.js"],
"env": {}
}
}
}This server cannot be deployed
Maintenance
Related MCP Connectors
Operate Linux, macOS and Windows from your LLM. Every action runs through an auditable allowlist.
Hosted runtime for persistent agent teams, durable workflows, memory, schedules, and goals.
Persistent cloud workspaces for AI agents: run commands, edit files, use git and a browser.
Securely control computers you explicitly pair through files, terminals, processes, screenshots, desktop UI/input, clipboard, browser automation, diagnostics, and document tools.
Related MCP Servers
- AlicenseNot gradedqualityDmaintenanceEnables AI agents to interact with terminal environments through multiple concurrent PTY sessions. Supports cross-platform terminal operations including command execution, session management, and real-time communication.15 npm3MIT
- FlicenseAqualityDmaintenanceEnables AI agents to start and manage pseudo-terminal sessions, run shell commands and interact with REPLs programmatically.7-
- AlicenseNot gradedqualityCmaintenanceEnables AI agents to interact with interactive CLI processes via a real PTY, allowing them to send keystrokes, read screen output, and handle interactive prompts.6 npm1MIT
- AlicenseNot gradedqualityBmaintenanceEnables AI agents to drive real interactive terminal sessions—PTYs, TUIs, REPLs, SSH, even another agent's CLI—with a live web view where humans can watch and type in.19 npm2MIT