Divi 5 MCP tools
Available in EMCP 3.17.0. The Divi 5 integration covers three distinct jobs: page composition, Theme Builder templates and theme configuration. EMCP Pro exposes native module schemas and document trees for page work, plus dedicated tools for assignments and curated option updates.
Requirements and setup
Section titled “Requirements and setup”- Check installed versions. Divi 5.13.x. EMCP Pro is required.
- Enable the integration. Open EMCP Tools > Page Builders and select this standalone builder. Gutenberg and enabled block packs remain available.
- Connect and inspect. Reconnect your MCP client, read context and schemas, and enable the write tools needed for the task. Start with a draft and inspect the native editor.
Native workflow
Section titled “Native workflow”Create reusable library layouts or header, body and footer layouts for the Theme Builder. Inspect condition choices before assigning a template, and keep matching focused on the intended pages. Theme Options have their own schema and concurrency hash, so a page edit does not require replacing global configuration.
Inspect the three surfaces
Section titled “Inspect the three surfaces”Read module controls, Theme Builder templates and supported Theme Options.
Prepare the intended change
Section titled “Prepare the intended change”Edit page content or create a scoped header, body or footer layout and assignment.
Verify matching and output
Section titled “Verify matching and output”Read back page and template state, then check the Divi editor and frontend.
Tool reference
Section titled “Tool reference”All names use the emcp-tools/ namespace. Read the live input schema for optional fields, enums, limits and confirmation requirements; this table lists required inputs only.
| Tool | Access | Purpose | Required inputs |
|---|---|---|---|
divi-get-context | Read | Read Divi version, permissions, scope and storage contract. Start here. | None |
divi-list-elements | Read | Discover installed native modules and authoring support. | None |
divi-get-element-schema | Read | Read installed module attributes, native defaults and allowed parents. | type |
divi-list-pages | Read | List accessible pages and their builder state. | None |
divi-get-page | Read | Read a page, library item or Theme Builder layout as a native tree and content_hash. | post_id |
divi-create-page | Write | Create an empty Divi 5 draft page. | title |
divi-set-page-tree | Write | Replace a Divi 5 tree with a current expected_hash; preserves status and creates a revision. | post_id, expected_hash, tree |
divi-add-element | Write | Add a native module to a parent; read its schema first. | post_id, expected_hash, parent_id, type |
divi-update-element | Write | Merge attribute groups, replacing arrays; preserves unrelated attributes. | post_id, expected_hash, element_id, properties |
divi-move-element | Write | Move a module with descendants; refuses cycles and invalid nesting. | post_id, expected_hash, element_id, parent_id |
divi-remove-element | Write | Remove a module and its descendants. | post_id, expected_hash, element_id |
divi-list-library | Read | List accessible local Divi library layouts. | None |
divi-create-library-layout | Write | Create an unattached native library layout; edit with page tools. | title |
divi-get-design-system | Read | Read native global colors, variables, presets and breakpoint settings. | None |
divi-get-theme-options | Read | Read native option schema and safe values. Credentials and executable fields are redacted. | None |
divi-update-theme-options | Write | Apply validated partial settings, preserving unrelated options; expected_hash is settings_hash. | expected_hash, settings |
divi-get-theme-builder | Read | Read native templates, header/body/footer references, assignments and theme_builder_hash. | None |
divi-list-template-conditions | Read | Discover native assignment rules, including parameterized post/term conditions. | None |
divi-create-theme-layout | Write | Create an unattached header, body or footer layout; edit with page tools. | title, kind |
divi-create-template | Write | Create a disabled non-default template; attach layouts and assignments explicitly before enabling. | expected_hash, title |
divi-update-template | Write | Partially update title, layout references, enabled state and use_on/exclude_from conditions using native storage. | expected_hash, template_id, settings |
divi-remove-template | Write | Detach and trash one non-default template; shared layout posts are preserved. | expected_hash, template_id, confirm |
Example request
Section titled “Example request”Create a Divi 5 landing-page draft and a footer layout assigned only to that page. Inspect existing templates first and preserve the default header and assignments.
Read current state before editing and re-read after each save. If a hash is stale, inspect the changed document before rebuilding the request. A successful save is not proof of correct visual output: inspect the native editor and frontend.
Supported scope
Section titled “Supported scope”- Requires EMCP Pro and the supported active Divi 5 theme. Divi 4 shortcode layouts are not converted.
- Theme-management operations require the relevant capabilities and current hashes.
- Executable fields, credentials, payments, external-action forms and shared-instance modules are excluded from writes. Global presets are discovery-only.
Troubleshooting
Section titled “Troubleshooting”If tools are missing, check versions, dependencies, integration selection, tool switches and user capabilities. Reconnect long-lived MCP clients after plugin updates or selection changes. If output differs after saving, inspect the native document and styles before retrying; do not bypass the adapter with direct metadata writes.
See the Divi 5 integration overview, builder setup guide and agent skills.
