SSH MCP сервер
Готовый к продакшену сервер Model Context Protocol для автоматизации SSH с фоновым выполнением команд, передачей файлов и комплексной защитой от таймаутов. Включает структурированный вывод, отслеживание прогресса и корпоративную инфраструктуру тестирования.
автор: Community
curl -fsSL https://vibebaza.com/i/ssh-mcp-server | bash
Готовый к продакшену сервер Model Context Protocol для автоматизации SSH с фоновым выполнением команд, передачей файлов и комплексной защитой от таймаутов. Включает структурированный вывод, отслеживание прогресса и корпоративную инфраструктуру тестирования.
Установка
Из исходного кода с uv
git clone https://github.com/sinjab/mcp_ssh.git
cd mcp_ssh
uv sync
Запуск сервера
uv run mcp_ssh
Режим разработки
uv run mcp dev src/mcp_ssh/server.py
Конфигурация
Claude Desktop
{
"mcpServers": {
"mcp_ssh": {
"command": "uv",
"args": ["--directory", "/path/to/mcp_ssh", "run", "mcp_ssh"],
"env": {
"SSH_KEY_PHRASE": "your-passphrase",
"SSH_KEY_FILE": "~/.ssh/id_rsa"
}
}
}
}
Доступные инструменты
| Инструмент | Описание |
|---|---|
execute_command |
Выполнение команд в фоновом режиме на удаленных SSH хостах с отслеживанием процессов |
get_command_output |
Получение вывода фоновых команд с поддержкой разбивки на блоки |
get_command_status |
Проверка статуса фоновых команд без получения вывода |
kill_command |
Завершение запущенных фоновых процессов с корректным завершением и очисткой |
transfer_file |
Загрузка/скачивание файлов через SCP с отслеживанием прогресса |
get_security_info |
Получение текущей конфигурации безопасности и правил валидации |
Возможности
- Выполнение SSH команд с отслеживанием фоновых процессов
- Возможности передачи файлов через SCP с отслеживанием прогресса
- Переиспользование соединений и оптимизация производительности
- Комплексная обработка таймаутов предотвращает зависание операций
- Контроль безопасности с настраиваемой валидацией команд
- Отчеты о прогрессе и логирование в реальном времени
- Структурированный JSON вывод для программной интеграции
- Готовность к продакшену с 107 тестами и 87% покрытием
- Парсинг SSH конфигурации и поддержка зашифрованных ключей
Переменные окружения
Опциональные
MCP_SSH_MAX_OUTPUT_SIZE- Максимальный размер вывода перед разбивкой на блоки (по умолчанию: 50000 байт)MCP_SSH_QUICK_WAIT_TIME- Время ожидания завершения быстрых команд (по умолчанию: 5 секунд)MCP_SSH_CHUNK_SIZE- Размер блока по умолчанию для get_command_output (по умолчанию: 10000 байт)MCP_SSH_CONNECT_TIMEOUT- Таймаут SSH соединения в секундах (по умолчанию: 30)MCP_SSH_COMMAND_TIMEOUT- Таймаут выполнения SSH команды в секундах (по умолчанию: 60)MCP_SSH_TRANSFER_TIMEOUT- Таймаут передачи файлов в секундах (по умолчанию: 300)MCP_SSH_READ_TIMEOUT- Таймаут чтения вывода в секундах (по умолчанию: 30)MCP_SSH_CONNECTION_REUSE- Включить переиспользование соединений для лучшей производительности (по умолчанию: true)
Примеры использования
Выполнение команд на удаленных серверах с отслеживанием фоновых процессов
Передача файлов между локальными и удаленными хостами с использованием SCP
Мониторинг долго выполняющихся команд и получение их вывода блоками
Проверка статуса фоновых процессов без получения вывода
Завершение запущенных процессов с корректной очисткой
Ресурсы
Примечания
Требует Python 3.11+ и использует ~/.ssh/config для конфигурации SSH. Сервер включает комплексную QA валидацию со 100% успешностью по 47 индивидуальным MCP вызовам инструментов и обладает стабильностью продакшен-уровня с правильным управлением ресурсами.