Skip to main content
Glama

MCP-сервер для Plesk

Этот MCP-сервер для Plesk позволяет администраторам управлять своими серверами Plesk с помощью различных ИИ-агентов и приложений. Он построен на базе REST API Plesk и REST API WP Toolkit, предоставляя основные возможности администрирования, а также возможность управления сервером через команды оболочки и загрузку файлов на сервер.

MCP-сервер запускается локально на вашей машине, поэтому важная информация не покидает вашу среду.

Требования к Plesk

MCP-сервер должен поддерживать любую достаточно новую версию Plesk (строгих ограничений нет) и любую ОС (Linux или Windows), поддерживаемую Plesk. Однако он был протестирован только на Plesk Obsidian 18.0.76, поэтому предпочтительно использовать поддерживаемую версию Plesk.

Разумеется, доступ к API не должен быть отключен на сервере.

Требования к MCP-серверу

Для запуска сервера вам потребуется менеджер пакетов Python uv. Инструкции по установке см. в официальной документации.

Использование

Настройте сервер в файле mcp.json вашего VS Code или аналогичном файле (в других агентах или приложениях), используя конфигурацию вида:

{
    "servers": {
        "plesk": {
            "command": "uvx",
            "args": [
                "plesk-mcp@latest"
            ],
            "env": {
                // Base URL of your Plesk server. May include port.
                // If you don't have a valid TLS certificate or want to use HTTP,
                // add the --insecure flag to the args above.
                // However, this is not recommended as you credentials may be leaked as a result.
                "PLESK_HOST": "https://plesk.example.net:8443",
                // API key (recommended).
                // Create via `plesk bin secret_key --create -description 'Plesk MCP'` on the server.
                "PLESK_API_KEY": "00000000-0000-0000-0000-000000000000",
                // Alternatively, you can use username and password.
                "PLESK_USERNAME": "admin",
                "PLESK_PASSWORD": "passwd"
            }
        }
    }
}

Возможно, вы захотите использовать файл переменных окружения (например, через параметр "envFile"), если ваш агент или приложение это поддерживают. Это позволит избежать хранения учетных данных непосредственно в файле конфигурации.

Подробную информацию о доступных параметрах и переменных окружения см. в uvx plesk-mcp@latest --help.

Рекомендуемое использование

Для лучшей работы рекомендуется использовать этот MCP-сервер в сочетании с MCP-сервером документации. Выберите plesk-local-docs-mcp или plesk-remote-docs-mcp. Это позволит агенту получать более точную информацию об использовании Plesk при необходимости.

При необходимости вы также можете подключить несколько серверов Plesk одновременно (например, для управления несколькими серверами).

Пример конфигурации:

{
    "servers": {
        "plesk-docs": {
            "command": "uvx",
            "args": [
                "plesk-local-docs-mcp@latest"
            ],
            "env": {
                "OPENAI_API_KEY": "sk-..."
            }
        },
        "plesk1": {
            "command": "uvx",
            "args": [
                "plesk-mcp@latest"
            ],
            "env": {
                "PLESK_HOST": "https://plesk1.example.net:8443",
                "PLESK_API_KEY": "00000000-0000-0000-0000-000000000000"
            }
        },
        "plesk2": {
            "command": "uvx",
            "args": [
                "plesk-mcp@latest"
            ],
            "env": {
                "PLESK_HOST": "https://plesk2.example.net",
                "PLESK_USERNAME": "admin",
                "PLESK_PASSWORD": "passwd"
            }
        }
    }
}

Разработка

Команда запуска MCP-сервера:

uv run plesk-mcp --log-level debug --insecure

Перед коммитом:

uv run ruff format
uv run ruff check --fix
uv run mypy .

Публикация:

uv build --clear
uv publish
mcp-publisher publish

Тестирование

Использование Docker-образа Plesk

Если у вас нет экземпляра Plesk, но вы хотите протестировать этот MCP-сервер, вы можете использовать Docker-образ Plesk:

docker run -d --rm --tmpfs /tmp --tmpfs /run --tmpfs /run/lock -v /sys/fs/cgroup:/sys/fs/cgroup --cgroupns host -p 80:80 -p 443:443 -p 8880:8880 -p 8443:8443 --name plesk plesk/plesk

Запуск Docker-образа не происходит мгновенно, поэтому подождите около минуты, прежде чем пытаться подключиться.

Затем настройте MCP-сервер следующим образом:

{
    "servers": {
        "plesk": {
            "command": "uvx",
            "args": [
                "plesk-mcp@latest",
                "--insecure"
            ],
            "env": {
                "PLESK_HOST": "https://localhost:8443",
                "PLESK_PASSWORD": "changeme1Q**"
            }
        }
    }
}

Без сервера Plesk (демо-режим)

Альтернативно, запустите в демо-режиме из исходного кода (с имитацией ответов):

{
    "servers": {
        "plesk": {
            "command": "uv",
            "args": [
                "run",
                "plesk-mcp"
            ],
            "env": {
                "PLESK_HOST": "https://linux.demo.example.net",
                "PLESK_API_KEY": "-"
            }
        }
    }
}
Install Server
A
license - permissive license
A
quality
C
maintenance

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/FlayedOne/plesk-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server