Elementor Ultra
resmiBangun situs Elementor dengan agen AI — sekitar 90 alat untuk halaman Elementor V4 native yang dapat diedit melalui REST, dengan validasi, cadangan, pemulihan, dan kompiler JSX bertipe. MIT.
Apa yang bisa Anda lakukan dengan Elementor Ultra MCP?
- Daftar halaman — Minta untuk mendaftar semua halaman Elementor beserta strukturnya melalui alat
elementor.page.*. - Bangun halaman — Minta untuk membuat halaman Elementor baru dari tata letak, dengan validasi sisi server dan cadangan.
- Konversi HTML — Minta untuk mengonversi cuplikan HTML menjadi pohon elemen Elementor menggunakan konverter HTML→Elementor.
- Refaktor situs langsung — Minta untuk memodifikasi widget, desain, atau templat di situs langsung, dengan cadangan otomatis dan pemulihan.
- Validasi uji-coba — Minta untuk memvalidasi pohon elemen yang diusulkan tanpa menyimpan, menangkap kesalahan secara atomik.
Dokumentasi
Elementor Ultra MCP
Permukaan kendali agen untuk Elementor. Server Model Context Protocol + plugin WordPress pendamping yang memungkinkan agen AI membaca, membangun, memfaktorkan ulang, dan mengatur situs Elementor nyata seperti cara insinyur mengirim perangkat lunak — elemen atomik Editor V4 terlebih dahulu, fallback klasik V3 — dengan validasi otoritatif sisi server, diff, cadangan, dan rollback pada setiap penulisan.
packages/server— Server MCP TypeScript: 91 alat (elementor.page.*,widget,design,templates,media,nav,pro.*, konversi HTML→Elementor), transport stdio + HTTP, profil alat lean/full.plugin/elementor-ultra-mcp— Plugin WordPress yang mengekspos jahitan REST otoritatif (/wp-json/elementor-ultra/v1/*): setiap penulisan melewatiDocument::save()milik Elementor sendiri dengan snapshot cadangan, konkurensi optimis (base_hash), idempotensi (op_id) replay, validator otoritatif, dan priming CSS wajib.packages/shared— permukaan kontrak yang dibekukan: registri rute REST, taksonomi kesalahan, cermin JSON-schema, fixture emas. Identik byte denganspec/contracts/schemas(dijaga CI).spec/— catatan rekayasa lengkap: kontrak, keputusan spike, dan paket kerja yang menjadi dasar sistem ini dibangun.
Berpasangan dengan elementor-jsx — kompiler JSX→Elementor yang deploy-nya berjalan di atas jahitan REST plugin ini.
Memulai cepat (gunakan dengan agen)
- Instal plugin pendamping di situs WordPress Anda (zip dari Releases; memerlukan Elementor ≥ 4.1) dan buat kata sandi aplikasi.
- Hubungkan server ke klien MCP Anda (
.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",
},
},
},
}
- Minta agen Anda untuk mendaftar halaman, dry-run pohon, membangun halaman. Setiap mutasi divalidasi oleh parser Elementor sendiri di sisi server sebelum apa pun disimpan; pohon yang tidak valid ditolak secara atomik dengan kode kesalahan taksonomi.
Lisensi
- Paket TypeScript (
packages/*): MIT © 2026 Algorismus - Plugin WordPress (
plugin/elementor-ultra-mcp): GPL-2.0-or-later (konvensi WordPress)
Tidak berafiliasi dengan atau didukung oleh Elementor Ltd — "Elementor" adalah merek dagang mereka; ini adalah integrasi independen yang menargetkan format halaman mereka.
Prasyarat
| Alat | Versi | Catatan |
|---|---|---|
| Node.js | ≥ 20 LTS | .nvmrc mengunci 20. engine-strict=true diberlakukan. |
| pnpm | 9.x | Manajer paket; lockfile dikomit. |
| Docker | berjalan | Diperlukan oleh @wordpress/env (wp-env) untuk situs WP pengembangan. |
| PHP | ≥ 7.4 (dalam kontainer) | Disediakan oleh kontainer Docker wp-env — tidak perlu PHP host. |
| Composer | (dalam kontainer) | Pengaturan Composer/PHPCS plugin disediakan oleh WP-P01. |
Anda tidak perlu PHP atau Composer di host; alat PHP berjalan di dalam kontainer wp-env.
Instal & bangun
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
Menjalankan bin server (belum ada alat yang terhubung)
Setelah pnpm build, bin server ada di packages/server/dist/index.js. Dengan tidak ada env yang diatur, ia
mencetak pesan yang jelas dan keluar dengan bersih (kode keluar 0):
node packages/server/dist/index.js
# -> elementor-ultra-mcp: missing required environment variable(s): WP_URL, WP_USER, WP_APP_PASSWORD. ...
Saat dikonfigurasi, ia membaca variabel lingkungan berikut:
| Variabel | Diperlukan | Arti |
|---|---|---|
WP_URL | ya | URL dasar situs WordPress target. |
WP_USER | ya | Nama pengguna WordPress (pemilik Application-Password). |
WP_APP_PASSWORD | ya | Application Password WordPress (otentikasi HTTP Basic). |
MCP_TRANSPORT | tidak | stdio (default) atau http (Streamable HTTP). |
ULTRA_TOOLS | tidak | lean (default) atau full profil alat. |
Pengikatan transport nyata + registri alat ditambahkan oleh WP-T01 di
packages/server/src/server.ts. Bin (index.ts) secara malasimport()s./server.jsdan mencetak "server core not yet wired" sampai modul itu ada — sehingga bin dapat dikompilasi dan boot secara mandiri pada kerangka ini.
Situs WordPress pengembangan lokal (wp-env)
Situs pengembangan menggunakan @wordpress/env dan mengunci
Elementor 4.1.1 + Elementor Pro 4.1.0 secara tepat melalui zip plugin lokal (bukan slug wp.org,
yang menarik versi terbaru dan tidak meng-host Pro sama sekali).
Tempat zip plugin berada (dan tempat Pro harus ditempatkan)
.wp-env.json merujuk dua zip lokal di bawah .wp-env-plugins/ (direktori gitignored):
.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 ini tidak dikomit (zip ini adalah biner berlisensi dan gitignored). Setelah klon baru, Anda harus menempatkannya sendiri:
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
Nama file persis di atas harus cocok dengan jalur di .wp-env.json.
Mulai / hentikan
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 juga memasang ./plugin/elementor-ultra-mcp sebagai plugin. Isi direktori itu
(bootstrap, composer.json, phpcs.xml.dist, readme.txt, dan includes/) dibuat oleh
WP-P01; setelah itu ada, plugin pendamping dapat diaktifkan di situs wp-env. Konfigurasi Composer/PHPCS
plugin itu sendiri juga disediakan oleh WP-P01.
Tata letak monorepo
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)
Pin SDK MCP (TERKUNCI)
packages/server mengunci @modelcontextprotocol/sdk ^1.29 dengan zod sebagai peer yang diperlukan.
Jangan pernah menambahkan paket @modelcontextprotocol/* 2.x — di 1.x, inputSchema/outputSchema adalah
peta ZodRawShape dan transport adalah impor .js yang dalam. CI menjaga agar dependensi 2.x
tidak muncul di lockfile (WP-F07).