Element tree reads + writes for Breakdance Free and Pro. Knows the difference between Elements, Global Blocks, and Global Styles.
Respira gives AI coding agents a structure-aware way to read and write Breakdance content through a duplicate-first workflow. Page and element writes are snapshotted, and changes can be reviewed before going live.
Everything below is read from this repo at build time: tool registrations come from the MCP server adapter files; changelog entries are filtered from the same source the /releases timeline uses.
Design tokens now register on the other builders too, and the converted page references them. 8.3.2 did this for Gutenberg. Elementor, Bricks, Divi, Beaver Builder, Breakdance, Oxygen and Oxygen 6 now do it as well, each
Bounded coverage is explicit. Executable-file scans return partial after a time, file, or result limit, and known Breakdance generated-cache paths are labeled as observations whose contents were not independently verifie
batch_update on Oxygen 6 / Breakdance elements reported success but silently didn't persist a design (typography, spacing, layout) update, while the identical edit via a single update_element call worked correctly. batch
Oxygen 6: add_form now builds a native form with your actual fields instead of defaulting to Contact Form 7. When the "Breakdance Forms for Oxygen" companion plugin is present, a built form is a real native FormBuilder e
Oxygen 6: an update_element call that changed a structural field and a flat field in one request (e.g. a button's text and url together) silently dropped the flat field. The shared Breakdance update mapper only folds fla
Concrete features in the current MCP server release. Tool names link directly to the adapter.
Element tree reads return the actual Breakdance JSON, not just rendered HTML.
Per-element writes through the structure-aware patch path preserve children and attributes.
Global Blocks: list, insert by reference, swap underlying definition — references on every page auto-update.
Global Styles (colors, typography, sizes) read + write through Respira-managed options where Breakdance doesn't expose a native API.
Snapshot before every write; rollback through the standard recovery tools.
Breakdance Headers and Footers (theme builder) listed and assignment rules readable.
Known limits
Where you still need a human pass
Honest list of edges. If you hit one of these, the snapshot workflow gives you a clean rollback path.
Some Breakdance Pro display conditions (cookie-based, query-based) read but only the simple ones (logged-in, role, post type) write today.
WooCommerce-specific Breakdance elements work for content edits; deeper Woo product-loop tuning still goes through the Breakdance UI.
Form Builder submissions are visible through respira_list_custom_posts; the form configuration itself is read-only via the MCP.
Tools
Breakdance uses the universal toolset
Breakdance edits run through Respira's universal tools: respira_find_element, respira_update_element, respira_update_page (for full-page replacement only), respira_get_snapshot, and respira_create_page_duplicate. See the complete tool catalog.
Example prompts
Three prompts you can paste right now
Each one assumes Respira is connected to your WordPress site through the MCP server below. Copy a prompt, paste into your MCP client, run.
Audit Global Block usage
List every Breakdance Global Block on the site, what pages reference it, and how many times each is used. Output a markdown table.
Swap a Global Block site-wide
Replace every reference to Global Block "cta-old" with "cta-2026" across all published pages. Snapshot each page first and show me the diff.
Update a global color
Change the Breakdance global color "brand-primary" from its current value to #1f6feb. Tell me how many pages and Global Blocks will visually change.
Setup
Connect Respira's MCP server
Drop this into your MCP client config (Claude Desktop, Cursor, Codex, Windsurf — any MCP-compatible client). Generate an API key from your Respira dashboard first.
macOS Claude Desktop: this belongs in claude_desktop_config.json, not config.json. On some versions the "Edit Config" button opens config.json — a separate preferences file in the same folder that is not read for MCP servers — so the paste appears to do nothing. If the server doesn't show up after restarting, edit the right file directly: open -a TextEdit ~/Library/Application\ Support/Claude/claude_desktop_config.json
cookies. the legal kind. one click and i'll get out of your way.
what you'd actually be saying yes to
tune your cookie preferences
essentials stay on regardless. the rest is opt-in. nothing fires until you tap save.
essentials
the cookies that make logging in work and remember which partner sent you. switching these off would just break the site, so the law does not let me make you opt out.
first-touch source on a /respira_acq cookie, plus a flag if an ai chatbot referred you. helps me figure out what is working without turning you into a tracking pixel statue.
messaging
customer.io for in-app notes, chatwoot when you click the support bubble. off by default. on means i can actually answer you in the app.