kvm-pilot — MCP-сервер для Claude Code: что делает и как установить
MCP-сервер для управления физическими серверами через KVM, BMC и SSH без установки софта на целевую машину.
claude mcp add --env KVM_PILOT_PROFILE=<KVM_PILOT_PROFILE> --env KVM_PILOT_MCP_READ_ONLY=<KVM_PILOT_MCP_READ_ONLY> --env KVM_PILOT_MCP_DRY_RUN=<KVM_PILOT_MCP_DRY_RUN> --env KVM_PILOT_MCP_ALLOW_POWER=<KVM_PILOT_MCP_ALLOW_POWER> --env KVM_PILOT_HOST=<KVM_PILOT_HOST> --transport stdio kvm-pilot -- uvx kvm-pilotЧто делает kvm-pilot
Сервер даёт ИИ-ассистентам доступ к голому «железу» через аппаратные IP-KVM (PiKVM, BliKVM, GL.iNet), контроллеры BMC с протоколами Redfish или IPMI, а также Intel AMT. Агент считывает видеопоток как кадры, распознаёт текущий экран и отправляет команды мыши или клавиатуры. На саму машину ставить агенты не требуется. Это позволяет проводить настройку в BIOS, работать с загрузчиком GRUB и вести установку операционной системы.
Кадры обрабатываются через Claude либо локальную мультимодальную модель в Ollama, LM Studio или vLLM. Если задействовать локальный VLM, видеоданные не покидают пределы закрытого контура. Для защиты от случайных сбоев деструктивные действия требуют подтверждения: запуск с флагом KVM_PILOT_MCP_READ_ONLY=1 полностью блокирует вмешательство в питание и ввод клавиш.
Какие задачи решает
- управлять сервером на этапах BIOS, GRUB и установки ОС
- контролировать питание хоста через IPMI и Redfish
- распознавать экраны ошибок и меню загрузчика через vision-модели
- вводить команды без запущенной ОС и сетевого подключения
Примеры запросов агенту
- Сделай снимок экрана сервера через KVM и определи, на каком шаге остановилась загрузка.
- Дождись появления меню GRUB на целевом хосте и нажми Enter.
- Проверь статус питания удалённой машины в безопасном режиме read-only.
Как установить kvm-pilot
Командой платформы
claude mcp add --env KVM_PILOT_PROFILE=<KVM_PILOT_PROFILE> --env KVM_PILOT_MCP_READ_ONLY=<KVM_PILOT_MCP_READ_ONLY> --env KVM_PILOT_MCP_DRY_RUN=<KVM_PILOT_MCP_DRY_RUN> --env KVM_PILOT_MCP_ALLOW_POWER=<KVM_PILOT_MCP_ALLOW_POWER> --env KVM_PILOT_HOST=<KVM_PILOT_HOST> --transport stdio kvm-pilot -- uvx kvm-pilotВместо <…> подставьте свои значения. Ещё 3 переменные окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from kvm-pilot <команда>
Командой платформы
codex mcp add kvm-pilot --env KVM_PILOT_PROFILE=<KVM_PILOT_PROFILE> --env KVM_PILOT_MCP_READ_ONLY=<KVM_PILOT_MCP_READ_ONLY> --env KVM_PILOT_MCP_DRY_RUN=<KVM_PILOT_MCP_DRY_RUN> --env KVM_PILOT_MCP_ALLOW_POWER=<KVM_PILOT_MCP_ALLOW_POWER> --env KVM_PILOT_HOST=<KVM_PILOT_HOST> -- uvx kvm-pilotВместо <…> подставьте свои значения. Ещё 3 переменные окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from kvm-pilot <команда>
Файл настроек
{
"mcpServers": {
"kvm-pilot": {
"command": "uvx",
"args": [
"kvm-pilot"
],
"env": {
"KVM_PILOT_PROFILE": "<KVM_PILOT_PROFILE>",
"KVM_PILOT_MCP_READ_ONLY": "<KVM_PILOT_MCP_READ_ONLY>",
"KVM_PILOT_MCP_DRY_RUN": "<KVM_PILOT_MCP_DRY_RUN>",
"KVM_PILOT_MCP_ALLOW_POWER": "<KVM_PILOT_MCP_ALLOW_POWER>",
"KVM_PILOT_HOST": "<KVM_PILOT_HOST>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 3 переменные окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from kvm-pilot <команда>
Файл настроек
{
"servers": {
"kvm-pilot": {
"type": "stdio",
"command": "uvx",
"args": [
"kvm-pilot"
],
"env": {
"KVM_PILOT_PROFILE": "<KVM_PILOT_PROFILE>",
"KVM_PILOT_MCP_READ_ONLY": "<KVM_PILOT_MCP_READ_ONLY>",
"KVM_PILOT_MCP_DRY_RUN": "<KVM_PILOT_MCP_DRY_RUN>",
"KVM_PILOT_MCP_ALLOW_POWER": "<KVM_PILOT_MCP_ALLOW_POWER>",
"KVM_PILOT_HOST": "<KVM_PILOT_HOST>"
}
}
}
}Вместо <…> подставьте свои значения. Ещё 3 переменные окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from kvm-pilot <команда>
Командой платформы
gemini mcp add -e KVM_PILOT_PROFILE=<KVM_PILOT_PROFILE> -e KVM_PILOT_MCP_READ_ONLY=<KVM_PILOT_MCP_READ_ONLY> -e KVM_PILOT_MCP_DRY_RUN=<KVM_PILOT_MCP_DRY_RUN> -e KVM_PILOT_MCP_ALLOW_POWER=<KVM_PILOT_MCP_ALLOW_POWER> -e KVM_PILOT_HOST=<KVM_PILOT_HOST> kvm-pilot uvx kvm-pilotВместо <…> подставьте свои значения. Ещё 3 переменные окружения — в README сервера. uvx запускает команду с именем пакета; если в README она другая — uvx --from kvm-pilot <команда>
По шагам, с командами для каждой платформы: Как подключить MCP-сервер: Claude Code, Codex, Cursor, VS Code, Gemini CLI и другие
Вопросы о kvm-pilot
Как установить kvm-pilot в Claude Code?
Выполните команду `claude mcp add --env KVM_PILOT_PROFILE=<KVM_PILOT_PROFILE> --env KVM_PILOT_MCP_READ_ONLY=<KVM_PILOT_MCP_READ_ONLY> --env KVM_PILOT_MCP_DRY_RUN=<KVM_PILOT_MCP_DRY_RUN> --env KVM_PILOT_MCP_ALLOW_POWER=<KVM_PILOT_MCP_ALLOW_POWER> --env KVM_PILOT_HOST=<KVM_PILOT_HOST> --transport stdio kvm-pilot -- uvx kvm-pilot`.
Что делает kvm-pilot?
Он предоставляет инструменты для управления физическими машинами через IP-KVM, BMC и SSH. Модель видит происходящее на мониторе через скриншоты и посылает аппаратные сигналы ввода.
Нужно ли устанавливать софт на управляемый сервер?
Нет, взаимодействие происходит полностью снаружи через платы видеозахвата, служебные чипы управления материнской платой или стандартный SSH после старта системы.