Elementor Ultra
официальныйСоздавайте сайты Elementor с помощью ИИ-агентов — ~90 инструментов для нативных, редактируемых страниц Elementor V4 через REST, с валидацией, резервным копированием, откатом и типизированным JSX-компилятором. MIT.
Что можно делать с Elementor Ultra MCP?
- Список страниц — Запросите список всех страниц Elementor и их структуру с помощью инструментов
elementor.page.*. - Создание страницы — Запросите создание новой страницы Elementor из макета с проверкой на стороне сервера и резервным копированием.
- Конвертация HTML — Запросите преобразование HTML-фрагмента в дерево элементов Elementor с помощью конвертера HTML→Elementor.
- Рефакторинг живого сайта — Запросите изменение виджетов, дизайна или шаблонов на живом сайте с автоматическим резервным копированием и откатом.
- Проверка без сохранения — Запросите проверку предлагаемого дерева элементов без сохранения, чтобы атомарно выявлять ошибки.
Документация
Elementor Ultra MCP
Поверхность управления агентами для Elementor. Сервер Model Context Protocol + сопутствующий плагин WordPress, которые позволяют ИИ-агентам читать, собирать, рефакторить и управлять реальными сайтами Elementor так, как инженеры выпускают программное обеспечение — сначала атомарные элементы Editor V4, с откатом к классике V3 — с авторитетной серверной валидацией, диффами, резервными копиями и откатом при каждой записи.
packages/server— TypeScript MCP-сервер: 91 инструмент (elementor.page.*,widget,design,templates,media,nav,pro.*, конвертация HTML→Elementor), транспорты stdio + HTTP, профили инструментов lean/full.plugin/elementor-ultra-mcp— плагин WordPress, предоставляющий авторитетный REST-шов (/wp-json/elementor-ultra/v1/*): каждая запись проходит через собственныеDocument::save()Elementor со снапшотами резервных копий, оптимистичной конкурентностью (base_hash), идемпотентным (op_id) воспроизведением, авторитетным валидатором и обязательной подготовкой CSS.packages/shared— замороженная контрактная поверхность: реестр REST-маршрутов, таксономия ошибок, зеркала JSON-schema, золотые фикстуры. Побайтово идентичноspec/contracts/schemas(защищено CI).spec/— полная инженерная документация: контракты, вердикты спайков и рабочие пакеты, на основе которых построена система.
В паре с elementor-jsx — компилятором JSX→Elementor, чей деплой использует REST-шов этого плагина.
Быстрый старт (использование с агентом)
- Установите сопутствующий плагин на ваш сайт WordPress (zip из Releases; требует Elementor ≥ 4.1) и создайте пароль приложения.
- Подключите сервер к вашему MCP-клиенту (
.mcp.json):
{
"mcpServers": {
"elementor-ultra": {
"command": "node",
"args": ["/path/to/elementor-ultra-mcp/packages/server/dist/index.js"],
"env": {
"WP_URL": "https://your-site.com",
"WP_USER": "admin",
"WP_APP_PASSWORD": "xxxx xxxx xxxx xxxx xxxx xxxx",
"ULTRA_TOOLS": "full",
},
},
},
}
- Попросите агента вывести список страниц, выполнить сухой прогон дерева, собрать страницу. Каждая мутация валидируется собственными серверными парсерами Elementor до сохранения; недействительные деревья отклоняются атомарно с кодом ошибки из таксономии.
Лицензирование
- TypeScript-пакеты (
packages/*): MIT © 2026 Algorismus - Плагин WordPress (
plugin/elementor-ultra-mcp): GPL-2.0-or-later (соглашение WordPress)
Не связан с Elementor Ltd и не одобрен ею — «Elementor» является их товарным знаком; это независимая интеграция, нацеленная на их формат страниц.
Предварительные требования
| Инструмент | Версия | Примечания |
|---|---|---|
| Node.js | ≥ 20 LTS | .nvmrc закрепляет 20. Обязательно engine-strict=true. |
| pnpm | 9.x | Менеджер пакетов; lockfile закоммичен. |
| Docker | запущен | Требуется для @wordpress/env (wp-env) для разработки WP-сайта. |
| PHP | ≥ 7.4 (в контейнере) | Предоставляется контейнером wp-env Docker — хост-PHP не нужен. |
| Composer | (в контейнере) | Настройка Composer/PHPCS плагина предоставляется WP-P01. |
Вам не нужен PHP или Composer на хосте; PHP-инструменты работают внутри контейнера wp-env.
Установка и сборка
pnpm install # installs all workspace deps; writes/uses pnpm-lock.yaml
pnpm build # turbo: compiles packages/shared + packages/server (strict TS)
pnpm lint # eslint (typescript-eslint, recommended-type-checked) across the workspace
pnpm format:check # prettier --check
pnpm test:unit # turbo: vitest run in each package
Запуск серверного бинарника (без подключённых инструментов)
После pnpm build серверный бинарник находится в packages/server/dist/index.js. Без установленных переменных окружения
он выводит понятное сообщение и завершается чисто (код выхода 0):
node packages/server/dist/index.js
# -> elementor-ultra-mcp: missing required environment variable(s): WP_URL, WP_USER, WP_APP_PASSWORD. ...
При настройке он читает следующие переменные окружения:
| Переменная | Обязательно | Значение |
|---|---|---|
WP_URL | да | Базовый URL целевого сайта WordPress. |
WP_USER | да | Имя пользователя WordPress (владелец Application Password). |
WP_APP_PASSWORD | да | Application Password WordPress (HTTP Basic auth). |
MCP_TRANSPORT | нет | stdio (по умолчанию) или http (Streamable HTTP). |
ULTRA_TOOLS | нет | lean (по умолчанию) или full профиль инструментов. |
Реальные транспортная привязка и реестр инструментов добавляются WP-T01 в
packages/server/src/server.ts. Бинарник (index.ts) ленивоimport()./server.jsи выводит "server core not yet wired", пока этот модуль не существует — поэтому бинарник компилируется и запускается автономно на этом каркасе.
Локальный сайт WordPress для разработки (wp-env)
Сайт для разработки использует @wordpress/env и закрепляет
Elementor 4.1.1 + Elementor Pro 4.1.0 точно через локальные zip-архивы плагинов (не по слагу wp.org,
который подтягивает последнюю версию и вообще не содержит Pro).
Где лежат zip-архивы плагинов (и куда нужно поместить Pro)
.wp-env.json ссылается на два локальных zip-архива в .wp-env-plugins/ (каталог исключённый из git):
.wp-env-plugins/
├─ elementor.4.1.1.zip # Elementor free 4.1.1
└─ elementor-pro.4.1.0.zip # Elementor Pro 4.1.0 (licensed; not on wp.org)
Эти zip-архивы не коммитятся (это лицензированные бинарники, они в gitignore). После свежего клонирования вы должны разместить их самостоятельно:
mkdir -p .wp-env-plugins
cp /path/to/elementor.4.1.1.zip .wp-env-plugins/elementor.4.1.1.zip
cp /path/to/elementor-pro.4.1.0.zip .wp-env-plugins/elementor-pro.4.1.0.zip
Точные имена файлов выше должны соответствовать путям в .wp-env.json.
Запуск / остановка
pnpm wp-env:start # boots WordPress + Elementor 4.1.1 + Pro 4.1.0; mounts the companion plugin
pnpm wp-env:stop
.wp-env.json также монтирует ./plugin/elementor-ultra-mcp как плагин. Содержимое этого каталога
(загрузчик, composer.json, phpcs.xml.dist, readme.txt и includes/) создаются
WP-P01; после их появления сопутствующий плагин становится активируемым на сайте wp-env. Собственная
конфигурация Composer/PHPCS плагина также предоставляется WP-P01.
Структура монорепозитория
elementor-ultra-mcp/
├─ packages/
│ ├─ server/ # TS MCP server (bin: elementor-ultra-mcp)
│ └─ shared/ # shared types + JSON Schemas + fixtures
├─ plugin/
│ └─ elementor-ultra-mcp/ # companion WP plugin (PHP) — populated by WP-P01
├─ spec/ # frozen architecture + contracts + work packages
├─ .wp-env.json # pins Elementor 4.1.1 + Pro 4.1.0 (local zips) + mounts the plugin
└─ (root tooling: pnpm-workspace.yaml, turbo.json, tsconfig.base.json, eslint, prettier)
Фиксация MCP SDK (LOCKED)
packages/server закрепляет @modelcontextprotocol/sdk ^1.29 с zod как обязательным пиром.
Никогда не добавляйте пакеты @modelcontextprotocol/* 2.x — в 1.x, inputSchema/outputSchema являются
картами ZodRawShape, а транспорты — глубокие .js импорты. CI защищает от появления зависимости 2.x
в lockfile (WP-F07).