Обзор

Инструменты (tools)

MCP сервер предоставляет AI-модели набор инструментов (tools) для управления платформой Dockhost. Ниже tools сгруппированы по сущностям. Для работы большинства tools требуется projectId или ID соответствующей сущности — узнать ID проекта можно через project_list.

Ограничить набор доступных tools можно через scope — см. Ограничение доступа (scope). Колонка «Категория» соответствует категориям scope: Чтение = read, Изменение = write, Удаление = delete.

Проекты

Tool Описание Категория
project_list Список всех проектов пользователя Чтение
project_get Получить проект по ID (projectId) Чтение
project_create Создать проект (name, опционально dnsNameservers, timezone) Изменение
project_delete Удалить проект и все его ресурсы (projectId) Удаление
project_pause Поставить проект на паузу (enabled: true) или возобновить (enabled: false) Изменение

Проекты / DNS

Tool Описание Категория
project_dns_get Получить DNS-конфигурацию проекта: nameservers, TTL кэша, балансировка (projectId) Чтение
project_dns_update Обновить DNS-настройки проекта (nameservers, cache, loadBalance, опционально hosts) Изменение
project_dns_hosts Список DNS host-записей проекта (projectId) Чтение
project_dns_hosts_update Полная замена DNS host-записей проекта (projectId, hosts) Изменение

Обновление host-записей — всегда полная замена: записи, не включённые в запрос, удаляются. Перед вызовом project_dns_update или project_dns_hosts_update получите текущие записи через project_dns_hosts.

Контейнеры

Tool Описание Категория
container_list Список контейнеров проекта (projectId) Чтение
container_get Получить контейнер по ID (containerId) Чтение
container_create Создать контейнер из Docker-образа (projectId, name, image, cpu, memory и др.) Изменение
container_delete Удалить контейнер и его реплики (containerId) Удаление
container_reload Перезапустить контейнер, переприменив текущую конфигурацию (containerId) Изменение
container_update Изменить контейнер: конфигурацию, образ, количество реплик (containerId, image, cpu, memory и др.) Изменение
container_pause Поставить контейнер на паузу (enabled: true) или возобновить (enabled: false) Изменение
container_rescue_mode Включить rescue mode для отладки падающего контейнера (enabled: true) или выключить (enabled: false) Изменение
container_stats Текущее потребление ресурсов: CPU, память, сеть, рестарты (containerId) Чтение
container_replicas Список реплик контейнера со статусом, ресурсами, IP и ошибками (containerId) Чтение
container_logs Логи контейнера (containerId; опционально replicaId, tail, init, previous) Чтение
container_exec Выполнить команду внутри контейнера (containerId, cmd; опционально replicaId) Изменение

container_update имеет семантику полной замены конфигурации: image, cpu, memory обязательны, а пропущенные опциональные поля сбрасываются в значения по умолчанию (например, replicas → 1, variables/volumes/ports/configs → пустые массивы). Перед вызовом обязательно прочитайте текущую конфигурацию через container_get и передайте её полностью с применённым изменением.

Выполнение команды через container_exec ограничено 60 секундами. Избегайте длительных и блокирующих команд (sleep, tail -f, интерактивные оболочки) — используйте tool для диагностики (ls, cat, env, ps) и разовых проверок.

Сетевые домены и сертификаты

Tool Описание Категория
network_domain_list Список доменов проекта (projectId) Чтение
network_domain_get Получить домен по ID (domainId) Чтение
network_domain_create Создать домен (projectId, name, опционально внешний host) Изменение
network_domain_delete Удалить домен (domainId; маршруты и TLS-сертификаты перестают работать) Удаление
network_domain_certificate_list Список TLS-сертификатов домена: статус, срок действия (domainId) Чтение
network_domain_certificate_get Получить TLS-сертификат по ID (certificateId) Чтение

TLS-сертификаты выпускаются и продлеваются Dockhost автоматически — ручное создание не требуется.

Сетевые порты

Tool Описание Категория
network_port_list Список портов проекта (projectId) Чтение
network_port_get Получить порт по ID (portId) Чтение
network_port_create Создать порт — проброс внешнего трафика на сервис (projectId, name, serviceId, servicePort) Изменение
network_port_update Обновить порт: целевой сервис и порт (portId, serviceId, servicePort) Изменение
network_port_delete Удалить порт (portId; сервис становится недоступен снаружи через него) Удаление
network_port_reload Переприменить конфигурацию порта (portId) Изменение
network_port_waf_get Получить WAF-конфигурацию порта (portId) Чтение
network_port_waf_update Обновить WAF-конфигурацию порта: IP-правила (portId, ipRules) Изменение

Сетевые маршруты

Tool Описание Категория
network_route_list Список маршрутов проекта (projectId) Чтение
network_route_list_by_domain Список маршрутов конкретного домена (domainId) Чтение
network_route_get Получить маршрут по ID (routeId) Чтение
network_route_create Создать маршрут: префикс пути домена на сервис или внешний upstream (projectId, name, domainId, path, опционально serviceId, port, type, upstream, rewrites) Изменение
network_route_update Обновить маршрут: путь, целевой сервис, upstream (routeId, domainId, path, опционально serviceId, port, type, upstream, rewrites) Изменение
network_route_delete Удалить маршрут (routeId; путь перестаёт обслуживаться) Удаление
network_route_reload Переприменить конфигурацию маршрута (routeId) Изменение
network_route_waf_get Получить WAF-конфигурацию маршрута (routeId) Чтение
network_route_waf_update Обновить WAF-конфигурацию маршрута: ModSecurity, rate limiting, IP-правила, basic auth (routeId, ipRules и др.) Изменение

В network_port_waf_update и network_route_waf_update набор IP-правил (ipRules) заменяется полностью: сначала получите существующие правила через network_port_waf_get или network_route_waf_get и включите те, что нужно сохранить.

Сетевые сервисы

Tool Описание Категория
network_service_list Список сервисов проекта (projectId) Чтение
network_service_list_by_container Список сервисов, ведущих к контейнеру (containerId) Чтение
network_service_get Получить сервис по ID (serviceId) Чтение
network_service_create Создать сервис (projectId, containerIds, name, ports) Изменение
network_service_update Обновить сервис: состав контейнеров, порты (serviceId) Изменение
network_service_delete Удалить сервис (serviceId; порты и маршруты, ссылающиеся на него, перестают работать) Удаление
network_service_reload Переприменить конфигурацию сервиса (serviceId) Изменение

Репозитории Git и пайплайны

Tool Описание Категория
repository_list_by_project Список репозиториев проекта (projectId) Чтение
repository_get Получить репозиторий по ID (repositoryId) Чтение
repository_create Подключить Git-репозиторий к проекту (projectId, name, url, cpu, memory и др.) Изменение
repository_update Обновить конфигурацию репозитория (repositoryId, url и др.) Изменение
repository_delete Удалить привязку репозитория (repositoryId) Удаление
repository_build Запустить новую сборку с последнего коммита отслеживаемой ветки (repositoryId) Изменение
repository_last_pipeline Получить последний пайплайн репозитория (repositoryId) Чтение
repository_auto_update Включить (enabled: true) или выключить (enabled: false) отслеживание изменений ветки Изменение
repository_pipeline_list Список пайплайнов репозитория с пагинацией (repositoryId; опционально pageIndex, pageSize) Чтение
repository_pipeline_get Получить пайплайн по ID (repositoryId, pipelineId) Чтение
repository_pipeline_build Перезапустить существующий пайплайн (repositoryId, pipelineId) Изменение
repository_pipeline_cancel Отменить выполняющийся пайплайн (repositoryId, pipelineId) Изменение
repository_pipeline_output Полные логи сборки пайплайна (repositoryId, pipelineId) Чтение
repository_pipeline_errors Только ошибки пайплайна — для диагностики упавшей сборки (repositoryId, pipelineId) Чтение

Переменные окружения

Tool Описание Категория
environment_variable_list Список переменных окружения проекта (projectId) Чтение
environment_variable_get Получить переменную по ID (variableId) Чтение
environment_variable_create Создать проектную переменную (projectId, name, опционально value, global) Изменение
environment_variable_update Обновить переменную (variableId, опционально value, global) Изменение
environment_variable_delete Удалить переменную (variableId) Удаление

Создание проектной переменной через environment_variable_create не добавляет её в контейнеры автоматически. Чтобы переменная попала в контейнер, либо пометьте её глобальной (global: true), либо задайте переменную контейнера со ссылкой на неё (MY_VAR=$NAME) через container_update.

Файлы конфигурации

Tool Описание Категория
environment_config_list Список конфигурационных файлов проекта (projectId) Чтение
environment_config_get Получить конфигурационный файл по ID (configId) Чтение
environment_config_create Создать конфигурационный файл (projectId, name, опционально data) Изменение
environment_config_update Обновить содержимое конфигурационного файла (configId, data) Изменение
environment_config_delete Удалить конфигурационный файл (configId) Удаление

Создание конфига не монтирует его ни в один контейнер: чтобы смонтировать конфиг, укажите его имя в массиве configs при вызове container_create или container_update.

Сетевые диски и снапшоты

Tool Описание Категория
volume_list Список дисков проекта (projectId) Чтение
volume_get Получить диск по ID (volumeId) Чтение
volume_create Создать диск (projectId, name, type, size, mode) Изменение
volume_update Обновить диск: увеличить размер или изменить режим доступа (volumeId, опционально size, mode) Изменение
volume_delete Удалить диск (volumeId) Удаление
volume_copy Создать копию диска с новым именем (volumeId, name, type, mode) Изменение
volume_pause Поставить диск на паузу, остановив I/O (enabled: true), или возобновить (enabled: false) Изменение
volume_ftp Включить или выключить FTP-доступ к диску (volumeId, enabled; опционально ssl, uid, gid; только для режима rwm) Изменение
volume_ftp_get Получить FTP-конфигурацию диска: хост, порт, учётные данные, пассивные порты, SSL (volumeId) Чтение
volume_sftp Включить или выключить SFTP-доступ к диску (volumeId, enabled; опционально uid, gid; только для режима rwm) Изменение
volume_sftp_get Получить SFTP-конфигурацию диска: хост, порт, учётные данные (volumeId) Чтение
volume_snapshot_list Список снапшотов диска (volumeId) Чтение
volume_snapshot_create Создать ручной снапшот диска (volumeId) Изменение
volume_snapshot_delete Удалить снапшот (volumeId, snapshotId) Удаление
volume_snapshot_prune Удалить все снапшоты диска (volumeId) Удаление
volume_snapshot_rollback Откатить диск к снапшоту (volumeId, snapshotId) Удаление
volume_snapshot_config_get Получить конфигурацию снапшотов: расписание, лимит (volumeId) Чтение
volume_snapshot_config_update Обновить конфигурацию снапшотов (volumeId, scheduleEnable, scheduleCron, maxSnapshots) Изменение

volume_snapshot_rollback необратимо перезаписывает текущие данные диска состоянием снапшота, при этом диск должен быть на паузе (volume_pause с enabled: true).

volume_snapshot_config_update требует все поля сразу (полная замена конфигурации): сначала получите текущие значения через volume_snapshot_config_get и передайте их вместе с изменениями.

Назад
Ограничение доступа (scope)
В этой статье
Проекты
Проекты / DNS
Контейнеры
Сетевые домены и сертификаты
Сетевые порты
Сетевые маршруты
Сетевые сервисы
Репозитории Git и пайплайны
Переменные окружения
Файлы конфигурации
Сетевые диски и снапшоты

Мы используем файлы cookies

Продолжив работу с сайтом, вы соглашаетесь с   политикой использования файлов Cookies