Page buildersPro
GoBuildWP Oxygen integration: requirements and coverage
The Oxygen MCP abilities below work on Oxygen 6's own records: the _oxygen_data canvas on each post, four template post types with their settings, selectors, variables and global settings in oxygen_ option rows, and form entries. Loops, dynamic data and class bindings each write to a specific property path, and this reference names that path so you know what a call will leave behind.
On the Resources page, list every topic category that has posts, each linking to its archive.
wppilot/oxygen-create-templateConfirm firstCreates an oxygen_block post to hold the repeated item, because the loop element itself cannot contain children.
wppilot/oxygen-set-contentConfirm firstWrites the item into the block: a heading with a link inside it. Confirmed before saving.
wppilot/oxygen-list-dynamic-data-fieldsReadLists the dynamic-data fields this install offers, so the term name and term archive URL fields are taken from the live list rather than guessed.
wppilot/oxygen-apply-dynamic-dataWriteBinds the term name to the heading text and, where the list offers a term link field, the term archive URL to the link, one call per control under the installed ability and approval policy. Without these bindings the loop would repeat static text; if no term link field is offered, the agent says so instead of leaving a dead link.
wppilot/oxygen-add-elementConfirm firstAdds a TermLoopBuilder element to the Resources page canvas.
wppilot/oxygen-set-loopConfirm firstSets taxonomy to category with hide_empty on, and points content.repeated_block.global_block at the new block. A posts-loop input on a term loop would be rejected.
- Edition
- Pro
- Abilities
- 37
- Requires
- WordPress 6.9+, PHP 8.0+, Oxygen 6.0.0+
Requirements and coverage
What this integration needs, and where the detail lives
- Edition
- Pro
- WordPress and PHP
- 6.9+ and 8.0+
- Version floor
- Oxygen 6.0.0+
- Abilities
- 37, listed in the reference
Oxygen MCP guide: setup and worked tasks Oxygen ability reference (oxygen)
Worked example
Wiring a term loop for a category index
Expected outcome to verify on the installed stack; this sequence has not been recorded as a runtime test.
One heading per non-empty category, rendered from a block you can edit in one place. Each page and block write can be rolled back; trashing the block later would leave the loop pointing at nothing.
Create reusable templates with disabled:true and review activation separately; default activation can expose a dormant template. Bind the actual dynamic term label and URL, then inspect the rendered links.
oxygen-create-templateCreates an oxygen_block post to hold the repeated item, because the loop element itself cannot contain children.
oxygen-set-contentWrites the item into the block: a heading with a link inside it. Confirmed before saving.
oxygen-list-dynamic-data-fieldsLists the dynamic-data fields this install offers, so the term name and term archive URL fields are taken from the live list rather than guessed.
oxygen-apply-dynamic-dataBinds the term name to the heading text and, where the list offers a term link field, the term archive URL to the link, one call per control under the installed ability and approval policy. Without these bindings the loop would repeat static text; if no term link field is offered, the agent says so instead of leaving a dead link.
oxygen-add-elementAdds a TermLoopBuilder element to the Resources page canvas.
oxygen-set-loopSets taxonomy to category with hide_empty on, and points content.repeated_block.global_block at the new block. A posts-loop input on a term loop would be rejected.
Data model
Oxygen 6's canvas and where templates keep their rules
Oxygen 6 shares Soflyy's engine with Breakdance but saves under its own prefix: the canvas is _oxygen_data post meta, template rules sit in _oxygen_template_settings, and global options are oxygen_ rows. GoBuildWP reads the prefix from the plugin rather than assuming it. The editable template types are oxygen_template, oxygen_header, oxygen_footer and oxygen_block; popups are not part of that set in Oxygen mode.
Three bindings are properties, not children. A class attaches by adding the selector's stable id to properties.meta.classes. Dynamic data is a breakdance_dynamic shortcode written into the control's value at a dotted path such as content.content.text. A loop has no child slot: its repeated item is an oxygen_block post referenced at content.repeated_block.global_block, so the item must be built as a block first. A template only enters request matching when its settings carry a ruleGroups key; an empty list means it applies wherever its type matches.
Limits
What the Oxygen module will not do
- It needs Oxygen 6.0 or later. Oxygen Classic stores pages as shortcodes and is not supported.
- Oxygen's template post types are hidden from the WordPress admin, so a trashed template is restored from Oxygen's own Templates manager or by rolling back the change.
- Deleting a template or block does not remove pointers to it from other templates' parentId, their rule values, or canvases that embed it.
- Destructive and critical calls require confirmation. Ordinary dynamic-data and class bindings follow the configured ability and approval policy; bindings that execute code have separate allow_code_elements gates.
Other plugins
Oxygen's own AI route and the Classic companions
- Oxygen publishes its own Build with AI route for MCP agents. It is a separate connection; check which Oxygen generation and document model it targets before comparing results.
- The Oxygen Classic Gutenberg and WooCommerce companions do not work on Oxygen 6. check-setup reports them as warnings, and GoBuildWP's block editor and WooCommerce modules cover that ground instead.
Questions
Oxygen questions
Why must an Oxygen loop item be a separate block?
Oxygen 6 loops repeat a global block referenced at content.repeated_block.global_block; any children placed inside the loop element are ignored. Building the item as an oxygen_block post first is the only arrangement that renders.
Where does dynamic data go in an Oxygen element?
Into the control's own value as a breakdance_dynamic shortcode. A sibling key ending in _dynamic_meta is ignored by the renderer, which is why oxygen-apply-dynamic-data writes the value path itself.
Is a new Oxygen template live immediately?
It is seeded with an empty rule list, which means it applies wherever its type matches. Pass disabled in settings to keep it dormant, then narrow it with set-template-conditions.
Oxygen offers its own MCP route for agent-driven building. Check the supported Oxygen generation, document model and installed version before treating two servers as interchangeable. Oxygen's Build with AI documentation
Where these facts come from
GoBuildWP behaviour is taken from the plugin source and the ability reference; third-party details from the vendor documentation below, checked by the GoBuildWP team.
Oxygen is a separate product; no partnership or endorsement is implied.