WP Manifestindependent plugin directory
manifest / ai / elementor-mcp

MCP Tools for Elementor (Digitizers fork)

MCP Tools for Elementor. A WordPress plugin that exposes Elementor's data, widgets, and page-design tools to AI agents over the Model Context Protocol.

by Digitizers · github.com/digitizers/elementor-mcp · website

0stars
31release downloads
≈20active sites
0forks

Install

The author publishes release zips, so WP-CLI can install straight from GitHub:

wp plugin install https://github.com/digitizers/elementor-mcp/releases/download/v1.34.0/elementor-mcp.zip

Readme

Elementor MCP — Digitizers fork

MCP Tools for Elementor. A WordPress plugin that exposes Elementor's data, widgets, and page-design tools to AI agents over the Model Context Protocol.

This is the Digitizers fork of msrbuilds/elementor-mcp (GPL). It keeps the original plugin's identity — the elementor-mcp slug, the Elementor_MCP_* classes, and the elementor-mcp/ MCP namespace — and takes it in its own direction: a correct Elementor 4.x atomic engine, a bundled MCP Adapter so it installs as a single plugin, net-new read-only inspection tools (list-media, list-global-classes, analyze-performance, scan-security), and a hardened, CI-tested security posture. It is the engine behind the SiteAgent Elementor Studio skill (Digitizers/siteagent-elementor-studio), which drives it to build and edit real Elementor pages.

Part of the Aura Design Engine

These are the skills behind Aura — one AI web-agency lifecycle you can run standalone or orchestrate across a whole client fleet from a single dashboard.

Stage Skill Role
🎨 Build siteagent-elementor-studio · elementor-mcp ← you are here Design & build sites inside Elementor — the recipes, and the MCP engine under them
🔎 Audit + Content wordpress-api-pro REST content ops, SEO & site audits
🖥 Host cloudways-mcp · hostinger-mcp Provision & operate the infrastructure
🚀 Deliver bunny-mcp CDN, storage & edge delivery
🛡 Govern aura-mcp Drive the control plane — approvals, snapshots, rollbacks — over MCP

→ Orchestrate all of it across your client fleet with Aura — governed agent ops with approvals and a full audit trail on top of these skills.

This fork is the engine of the Build row above. The Aura-branded recipe layer lives in the siteagent-elementor-studio skill, not in this artifact. The plugin keeps its own elementor-mcp identity and full @msrbuilds upstream credit (see Credits & attribution) — "Aura Design Engine" is Aura's narrative name for the role this fork plays, not a rename of the plugin.

The plugin extends the WordPress MCP Adapter so AI clients — Claude Code, Claude Desktop, Cursor, and other MCP-compatible tools — can create and manipulate Elementor page designs programmatically over HTTP with just a WordPress Application Password.

What this fork adds

Relative to upstream, and verified against CHANGELOG.md and the plugin source:

  • Elementor 4.x-correct atomic engine. Independent 4.0 GA work: atomic-element detection gating (is_v4 based on registered atomic types / active experiments, not the ELEMENTOR_VERSION string), correct atomic prop shapes, and working flex / padding / margin / colour / background / typography output — ahead of upstream on 4.x correctness.
  • Bundled WordPress MCP Adapter. The adapter ships inside the plugin (includes/vendors/mcp-adapter/), so it installs as one plugin. When a standalone MCP Adapter plugin is already active, the fork defers to it (no double-load).
  • Net-new read-only tools, ported and adapted for this fork:
    • list-media — query the site's own Media Library uploads.
    • list-global-classes — read Elementor 4.0's Class Manager (Global Classes), mapping opaque g-<hash> IDs to their names and the CSS each defines per breakpoint/state.
    • analyze-performance — read-only page + server + WordPress performance audit → scored (0–100 / A–F) report with ranked recommendations, with SSRF-guarded loopback fetches.
    • scan-security — read-only malware / core-integrity / hardening / outdated-software scan → scored report that returns path:line + snippet, never full file contents.
  • Security hardening + CI. A full F-001…F-027 regression suite (XSS / SVG-sanitiser / path-disclosure and other fixes) plus a committed PHPUnit CI workflow (.github/workflows/tests.yml) running PHP 8.0 (syntax lint) and PHP 8.1 / 8.2 (full suite: Security / Capabilities / Input / Functional / Regression / SEO / Unit).

This fork deliberately keeps the elementor-mcp identity and does not adopt upstream's later emcp-tools rename.

Requirements

Dependency Version
WordPress >= 6.9
PHP >= 8.0
Elementor >= 3.20 (container support required)
WordPress MCP Adapter 0.6.1, bundled (no separate install) — see the note below
WordPress Abilities API Bundled in WP 6.9+, or via Composer

A note on the bundled MCP Adapter

The adapter is bundled, so no separate install is needed. But if another plugin on the site also bundles a copy — WP Rocket, Imagify and Rank Math all do — then whichever loads first wins, by load order and not by version. Copies older than 0.6.0 carry no Jetpack Autoloader to arbitrate, so an older adapter can beat the one shipped here, and it does happen: on a site measured on 2026-08-26 four copies were present and the oldest was the one in force.

The plugin's connection screen reports the version actually loaded. To guarantee the newest one wins, install the standalone MCP Adapter 0.6.1 as a plugin — it loads as a real plugin and arbitrates in favour of the newest available classes.

Installation

  1. Install and activate Elementor (version 3.20+).
  2. Download the latest release zip from this fork's Releases page. (The SiteAgent Elementor Studio skill's installer pulls releases/latest automatically.)
  3. In WordPress, go to Plugins → Add New → Upload Plugin and upload the zip. The MCP Adapter is bundled — no separate plugin install is required.
  4. Activate the plugin through the Plugins menu.
  5. Open the new EMCP Tools top-level menu in the WordPress admin sidebar to configure tools and view connection info.

Connecting to the MCP server

Connect to your WordPress site from any AI client over HTTP. No proxy or Node.js needed — just a WordPress Application Password.

Prerequisites

  1. Create an Application Password at Users → Profile → Application Passwords.
  2. Base64-encode your credentials: echo -n "username:app-password" | base64
  3. Your MCP endpoint is: https://your-site.com/wp-json/mcp/elementor-mcp-server

Tip: The plugin's EMCP Tools → Connection admin screen can generate every client config automatically — just enter your username and Application Password.

Claude Code

Add as .mcp.json in your project root:

{
    "mcpServers": {
        "elementor-mcp": {
            "type": "http",
            "url": "https://your-site.com/wp-json/mcp/elementor-mcp-server",
            "headers": {
                "Authorization": "Basic BASE64_ENCODED_CREDENTIALS"
            }
        }
    }
}

Claude Desktop

Add to claude_desktop_config.json (%APPDATA%\Claude\ on Windows, ~/Library/Application Support/Claude/ on macOS):

{
    "mcpServers": {
        "elementor-mcp": {
            "type": "http",
            "url": "https://your-site.com/wp-json/mcp/elementor-mcp-server",
            "headers": {
                "Authorization": "Basic BASE64_ENCODED_CREDENTIALS"
            }
        }
    }
}

Cursor

Add to .cursor/mcp.json in your project root, or ~/.cursor/mcp.json for global config:

{
    "mcpServers": {
        "elementor-mcp": {
            "url": "https://your-site.com/wp-json/mcp/elementor-mcp-server",
            "headers": {
                "Authorization": "Basic BASE64_ENCODED_CREDENTIALS"
            }
        }
    }
}

Windsurf

Add to ~/.codeium/windsurf/mcp_config.json:

{
    "mcpServers": {
        "elementor-mcp": {
            "serverUrl": "https://your-site.com/wp-json/mcp/elementor-mcp-server",
            "headers": {
                "Authorization": "Basic BASE64_ENCODED_CREDENTIALS"
            }
        }
    }
}

WP-CLI stdio (local development)

For local development with WP-CLI available, use the stdio transport (no HTTP auth needed):

{
    "mcpServers": {
        "elementor-mcp": {
            "type": "stdio",
            "command": "wp",
            "args": [
                "mcp-adapter", "serve",
                "--server=elementor-mcp-server",
                "--user=admin",
                "--path=/path/to/wordpress"
            ]
        }
    }
}

Node.js proxy (remote sites or protocol compatibility)

For remote WordPress sites, environments without WP-CLI, or when your AI client needs a different MCP protocol version, use the Node.js proxy. Your AI client launches it as a local subprocess, so it must run on the machine with the client — not on the WordPress server.

Extract bin/mcp-proxy.mjs from the plugin ZIP, save it on the machine running your AI client, and point args at that local path (e.g. ["C:\\local\\path\\to\\mcp-proxy.mjs"]) — not at the copy inside wp-content/plugins/... on the server. Re-extract it after plugin updates to pick up proxy fixes.

Required environment variables (the proxy exits immediately if any is missing):

Variable Description
WP_URL Your WordPress site URL (e.g., https://example.com).
WP_USERNAME WordPress username.
WP_APP_PASSWORD An Application Password for that user.

Optional environment variables:

Variable Description
MCP_LOG_FILE Path to a debug log file (e.g., /tmp/elementor-mcp.log)
MCP_PROTOCOL_VERSION Override the protocol version in initialize responses (e.g., 2024-11-05). Use this if your client doesn't support 2025-06-18.

Testing with MCP Inspector

npx @modelcontextprotocol/inspector wp mcp-adapter serve \
  --server=elementor-mcp-server --user=admin --path=/path/to/wordpress

Tool overview

All tool names are prefixed with elementor-mcp/ in the MCP namespace (e.g. elementor-mcp/list-widgets); the MCP Adapter converts these to elementor-mcp-list-widgets for transport. The active tool count scales with the environment — some tools register only when Elementor 4.0 atomic elements, Elementor Pro, or WooCommerce are present.

  • Query & discovery — list widgets, inspect page structure, read element settings, list pages, browse templates, read global design tokens, list-media, list-global-classes.
  • Page management — create pages, update page settings, clear content, import/export templates.
  • Layout & structure — add/update flexbox containers, move/remove/duplicate elements, find elements, batch update, reorder children, read container schema.
  • Widgets — a universal add-widget / update-widget pair plus convenience shortcuts; Pro and WooCommerce widget tools register only when those plugins are active.
  • Atomic elements (Elementor 4.0+) — dedicated tools for the atomic system (flexbox, div-block, heading, paragraph, button, image, svg, youtube, video, divider) plus universal add-atomic-widget / update-atomic-widget and detect-elementor-version. These register only when atomic elements are actually available.
  • Templates & theme builder — save/apply templates; theme templates, display conditions, dynamic tags, and popups (Pro).
  • Global settings — update site-wide colour palette and typography.
  • Compositebuild-page: create a complete page from a declarative JSON structure in one call.
  • Stock images & SVG — search Openverse, sideload images into the Media Library, upload SVG icons.
  • Custom code — add element/page CSS, inject JavaScript, manage site-wide code snippets.
  • Auditsanalyze-performance (page + server + WP performance) and scan-security (malware / integrity / hardening / outdated software).

The full tool tables (per-category, with parameters) are available in-plugin under EMCP Tools, where individual tools can be toggled on/off.

Read the full README on GitHub →

Releases

TagPublishedAssetDownloads
v1.34.0 Sep 1, 2026 elementor-mcp.zip 10
v1.32.0 Aug 24, 2026 elementor-mcp.zip 16
v1.31.0 Aug 20, 2026 elementor-mcp.zip 5
v1.30.0 Aug 20, 2026 elementor-mcp.zip 0
v1.29.0 Aug 20, 2026 elementor-mcp.zip 0
v1.28.0 Aug 19, 2026 elementor-mcp.zip 0
v1.27.1 Aug 7, 2026 elementor-mcp.zip 0
v1.27.0 Aug 7, 2026
v1.26.0 Aug 3, 2026
v1.25.1 Jul 8, 2026
v1.25.0 Jul 8, 2026
v1.24.0 Jul 8, 2026
v1.23.0 Jul 7, 2026
v1.22.0 Jul 7, 2026
v1.21.0 Jul 7, 2026
v1.20.0 Jul 7, 2026
v1.19.0 Jul 7, 2026
v1.18.0 Jul 7, 2026
v1.17.0 Jul 7, 2026
v1.16.0 Jul 7, 2026
v1.15.0 Jul 7, 2026
v1.14.0 Jul 6, 2026
v1.13.0 Jul 6, 2026
v1.12.2 Jul 6, 2026
v1.12.1 Jul 3, 2026

Active-site estimate ≈20 comes from the v1.32.0 cohort. Method.