Skip to content

Oxygen 6 MCP tools

Available in EMCP 3.17.0. Oxygen 6 support extends beyond editing a page tree. EMCP Pro exposes templates and matching conditions, header and footer layouts, component definitions and overrides, global design data, revisions and Design Library workflows. Each area has its own tools and permissions.

  1. Check installed versions. Oxygen 6.1.3 through 6.1.x in Oxygen mode. EMCP Pro is required.
  2. Enable the integration. Open EMCP Tools > Page Builders and select this standalone builder. Gutenberg and enabled block packs remain available.
  3. 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.

Discover exposed component properties, place instances and use supported overrides. Create or copy templates that remain disabled until explicitly enabled. Design transfers remap document and design dependencies, while separate hashes protect global selectors and variables from stale updates.

Read elements, components, template conditions, variables and selectors.

Create a draft, disabled template or component workflow using scoped tools.

Inspect assignments, revisions and native output before enabling a template.

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.

ToolAccessPurposeRequired inputs
oxygen-configure-design-libraryWriteUpdate sharing flags, registered provider URLs or password using the current library hash. Passwords are never returned.expected_hash
oxygen-browse-design-libraryReadFetch the catalog of a registered provider through safe HTTP.provider_index
oxygen-export-design-libraryReadExport selected local IDs and dependencies, with variables and selectors. Set provider_index for a remote set and template_ids for remote library record IDs. Up to 100 documents.post_ids
oxygen-import-design-libraryWriteImport an exported bundle with dependency and design ID remapping. Pages are drafts and templates disabled. Pass both target design hashes and a unique request_id; replay returns the original result, including any partial failure and recovery revisions. Class selectors are namespaced; global selectors require separate explicit design editing.bundle, bundle_hash, variables_hash, selectors_hash, request_id
oxygen-get-dynamic-schemaReadDiscover installed dynamic fields and interaction triggers/actions with native controls.None
oxygen-set-native-documentWriteSave a complete native tree including code, loops, interactions and installed extension elements. Requires unfiltered_html and full builder access; native schemas, nesting, references and revisions are checked. Executable controls run with the site privileges.post_id, expected_hash, tree
oxygen-manage-documentWriteRename, trash or restore a page or native library item. Requires the current document hash; get-page can read trashed records.post_id, expected_hash, operation
oxygen-get-design-stateReadRead an entire native design scope and its independent hash.scope
oxygen-get-global-schemaReadRead installed global controls, preferences and native selector CSS mapping.None
oxygen-save-design-stateWriteReplace a native global design scope, including collections. Requires current scope hash and unfiltered_html; affects all site usages and creates a complete prior-document revision.scope, data, expected_hash
oxygen-list-design-revisionsReadList complete prior design documents saved by EMCP, including collections and preferences.None
oxygen-restore-design-revisionWriteRestore a complete prior global document with the current scope hash. Creates a new revision before restoration.revision_id, expected_hash
oxygen-get-component-propertiesReadRead exposed properties and defaults from a component master.component_id
oxygen-define-component-propertyWriteExpose a native control or child visibility on a component element. Replaces the definition with the same key.post_id, expected_hash, element_id, key, path, label
oxygen-get-condition-valuesReadSearch native selectable values for a registered condition.slug
oxygen-list-revisionsReadRead native Oxygen revisions for an editable document.post_id
oxygen-restore-revisionWriteRestore a native tree revision belonging to this document. Optionally restore an EMCP template-settings snapshot; otherwise preserve current settings. Advanced trees require unfiltered_html.post_id, expected_hash, revision_id
oxygen-insert-componentWriteInsert an existing component with optional exposed-property overrides. Cyclic references are rejected.post_id, expected_hash, component_id
oxygen-get-template-schemaReadRead native template locations and supported settings for templates, headers and footers.None
oxygen-create-templateWriteCreate a native template, header, footer or component. Oxygen publishes library records; templates start disabled. Edit its tree with the page/element tools.title, kind
oxygen-update-template-settingsWritePatch location, priority, disabled state, ruleGroups and parentId using the page content_hash. Omitted settings are preserved. Enabling changes site-wide template matching.post_id, expected_hash, settings
oxygen-get-design-libraryReadRead registered design-set URLs and local library settings without revealing passwords or fetching remote sets.None
oxygen-copy-library-itemWriteCopy a readable local page, template, header, footer or component. Pages become drafts; Oxygen publishes library records. Template matching is disabled on the copy. Classes and component references remain shared.source_id, expected_hash, title
oxygen-get-contextReadRead installed version, permissions, breakpoints and supported workflow. Start here.None
oxygen-list-elementsReadList registered native element types and nesting rules. Use set-native-document for advanced elements.None
oxygen-get-element-schemaReadRead native controls, defaults and nesting rules for an exact namespaced type, e.g. OxygenElements\Text.type
oxygen-list-pagesReadList editable WordPress pages and their Oxygen status.None
oxygen-get-pageReadRead the native nested tree and content_hash for a page or existing template.post_id
oxygen-create-pageWriteCreate an empty draft using the native Oxygen tree format.title
oxygen-set-page-treeWriteReplace a page tree with root, _nextNodeId and nested nodes. Requires expected_hash; preserves template settings and page status.post_id, expected_hash, tree
oxygen-add-elementWriteAdd a childless native element, allocating a unique ID. Read schema/defaults first; default parent is root 1.post_id, expected_hash, type
oxygen-update-elementWriteRecursively merge named property groups while replacing lists and preserving other properties. Optional label changes its friendly name.post_id, expected_hash, element_id, properties
oxygen-move-elementWriteMove a node and descendants to a parent and sibling position; rejects cycles and invalid nesting.post_id, expected_hash, element_id, parent_id
oxygen-remove-elementWriteRemove a node and its entire subtree; root cannot be removed.post_id, expected_hash, element_id
oxygen-get-style-schemaReadRead supported native class style paths, value shapes and breakpoint layout.None
oxygen-save-classWriteCreate or replace one native CSS class. Requires full access, edit_theme_options and current design-system content_hash. Existing class changes affect every use.expected_hash, name, properties
oxygen-list-templatesReadList editable templates, headers, footers and components. Read get-page for native settings and tree.None
oxygen-get-design-systemReadRead global settings, native classes, variables, collections and breakpoints, plus content_hash for save-class.None

Inspect my Oxygen components and design tokens, then build a draft services page. Create a disabled footer template scoped to that page and show its conditions before enabling it.

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.

  • Requires EMCP Pro and supported Oxygen 6. Oxygen Classic and Breakdance mode use different data and are excluded.
  • Advanced native-document, global and import writes require additional capabilities. Executable controls are privileged.
  • Design transfer does not migrate media files, menus, custom fields or homepage settings. Review imported conditions before enabling templates.
  • Local export/import was tested through MCP; third-party provider imports were not live-verified for this release.

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 Oxygen 6 integration overview, builder setup guide and agent skills.