Bricks MCP tools
Available in EMCP 3.17.0. A Bricks page is a flat list of elements linked by parents and children. EMCP Pro gives your MCP client access to that structure, the live element catalog and native controls, so a heading remains a Bricks heading you can edit in the builder.
Requirements and setup
Section titled “Requirements and setup”- Check installed versions. Bricks 2.3.13 through 2.3.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”Read global classes, variables, palettes, theme styles and breakpoints before building. Existing local templates can be inspected and their content, header or footer elements edited in the correct area. Global design data is available for reference; this adapter does not change it.
Inspect the Bricks schema
Section titled “Inspect the Bricks schema”Read the exact settings accepted by the installed heading, container and image elements.
Build a native draft
Section titled “Build a native draft”Add a flat element tree with valid IDs and parent-child relationships.
Verify the native save
Section titled “Verify the native save”Read the tree and inspect desktop and mobile layouts in Bricks before publishing.
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 |
|---|---|---|---|
bricks-get-context | Read | Read Bricks version, capabilities, breakpoints and the supported editing workflow. Start here. | None |
bricks-list-elements | Read | Discover registered Bricks elements, including addons, and their nesting support. | None |
bricks-get-element-schema | Read | Read runtime Bricks controls, defaults, control groups and nestable child presets. Use exact keys and value shapes from these controls. | name |
bricks-list-pages | Read | List editable WordPress pages with their Bricks editor status; includes drafts and pages ready for conversion. | None |
bricks-get-page | Read | Read raw page/template elements, their area and content_hash. Component definitions are not expanded. | post_id |
bricks-create-page | Write | Create an empty draft page for Bricks. Returns its ID and content_hash for adding elements. | title |
bricks-set-page-elements | Write | Replace all elements in the page/template area with a validated flat tree. Requires expected_hash; use [] to clear. Components and executable-code changes are unsupported. | post_id, expected_hash, elements |
bricks-add-element | Write | Insert one native element with id/name/parent/settings and no children. Use a unique six-character lowercase ID. Query its schema first. | post_id, expected_hash, element |
bricks-update-element | Write | Merge top-level settings keys, replacing nested values in full. Preserves other settings, internal classes and tree links. unset_settings removes named keys. | post_id, expected_hash, element_id, settings |
bricks-move-element | Write | Move an element and its subtree to a parent and sibling position. Cycles and non-nestable parents are rejected. | post_id, expected_hash, element_id, parent |
bricks-remove-element | Write | Remove an element and all descendants from its page/template. Requires the current content_hash. | post_id, expected_hash, element_id |
bricks-list-templates | Read | Discover editable local Bricks templates and their types. Read/edit existing template elements with the page tools; template creation and conditions are not included. | None |
bricks-get-design-system | Read | Read existing global classes, variables, palettes, theme styles and actual breakpoints. Reference existing class IDs; this tool does not modify global data. | None |
Example request
Section titled “Example request”Create a draft Bricks services page using native sections, headings and buttons. Reuse the existing palette, preserve global styles, and show me the draft and mobile preview.
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 the active Bricks theme, EMCP Pro and Bricks selected in Page Builders.
- Component instances, executable-code changes, template creation and conditions, and global design writes are outside this adapter.
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 Bricks integration overview, builder setup guide and agent skills.
