20 dedicated tools across the full Bricks design system: global classes, theme styles, color palette, typography, components, query loops, ACSS, page diagnostics, and one-call design-system export.
Respira gives AI coding agents a structure-aware way to read and write Bricks 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.
build_page now actually halts on a Bricks page that references a global class ID absent from the live registry. The registry-verification added in 8.0.3 was gated on a flag that build_page always set the wrong way, so a
Duplicate Bricks global class names are rejected instead of silently accepted. create_bricks_global_class (and update) now refuses an exact name collision with a 409 naming the existing ID, so two classes can no longer s
An unmapped Bricks global-class setting key is now flagged. create_bricks_global_class (and update) checks each key against every Bricks element's real control schema and returns an unmapped_keys array for anything that
site_id is now honoured on every Bricks and Elementor tool. Every tool handled in the main dispatch switch already resolved a per-call site_id override correctly. The Bricks and Elementor tools that fall through to the d
Bricks global classes no longer report success without persisting. Class creation reads the authoritative option value, invalidates WordPress's alloptions cache, verifies the new ID and every prior ID after the write, an
HTML-to-Bricks conversion preserves the expensive parts of the design. Source classes now use Bricks' _cssClasses, CSS Grid templates, grouped padding/margin, absolute offsets, and gaps map to native controls, and inline
Unsupported color-mix() degrades honestly. Functional colors inside border shorthand remain intact during parsing, are omitted before Bricks validation instead of aborting the import, and produce a visible warning with a
Duplicating a Bricks page didn't regenerate Bricks' own per-post CSS, so the copy could render visually broken (wrong corner-radius, colors, typography) because its CSS was still scoped to the original page's body.page-i
Bricks append lost a new html element's settings. inject_builder_content in append mode (and build_page) wrote a fresh type: "html" element with its markup stranded under settings.html/settings.content — keys Bricks' rea
Automatic.css (ACSS) detection + import: utility classes flow into the Bricks global class registry with source tagging (wordpress_bricks_detect_acss, _import_acss).
Query loop discovery across the site, filterable by post type (wordpress_bricks_query_loops).
Style profile learning: analyse a page's patterns and create matching content (wordpress_bricks_style_profile).
One-call design system export (wordpress_bricks_design_system) — classes, colors, styles, typography, components — for AI context.
HTML → native Bricks element-tree conversion for prototypes.
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.
Bricks Templates CPT supports first-class CRUD via PATCH / DELETE, but condition trees with deeply nested logic still need a human review pass.
Optimistic locking prevents concurrent overwrites; if two agents try to write the same page in parallel, the second is rejected — by design.
Bricks Pro license is detected but not validated by Respira. License-gated features are accessible if the Pro plugin says so on the site side.
Tools
25 Bricks-specific tools
Registered in mcp-server/src/bricks-tools.ts at MCP server build time. Each tool name is the canonical id you call from the MCP client.
Each one assumes Respira is connected to your WordPress site through the MCP server below. Copy a prompt, paste into your MCP client, run.
Export the design system for AI context
Call wordpress_bricks_design_system. Return the result so I can use it as context for the rest of this session.
Find every page using a specific global class
Search every Bricks page and template for elements using the global class "btn-primary-lg". Group results by page title.
Run a health check on the home page
Run wordpress_bricks_health_check on the home page. List orphaned elements, duplicate IDs, and heading hierarchy issues. Suggest fixes for the top 5.
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.