Skip to content

Your EMCP guide

Answers from our docs

YOUR CHAT, YOUR CHOICE

Before we chat

MSR Builds processes your question and up to four recent messages on our server to answer from the EMCP docs. AI is optional and needs your separate permission.

The chat is kept in this page's memory, not saved as a conversation in our database or browser storage. Our hosting and security services process connection information, such as your IP address, to prevent abuse.

Cloudflare Turnstile checks your browser and connection to prevent automated abuse when you send a question. No login is required.

Please leave out personal, sensitive or confidential information, passwords and API keys.

You can withdraw consent and clear this page's chat at any time. This cannot undo a request already sent or erase provider/security records.

Chat privacy, retention & your rights ↗ · Privacy contact

Starting chat consents to this processing. You can browse our docs without using the chat.

Astra

New in v3.4.0. Astra stores its customizer settings in a single astra-settings option. EMCP Tools exposes a curated allowlist of that option over two dispatcher tools, so an agent can read and adjust your site’s theme design without you hand-editing the Customizer. Registers only when Astra is the active theme.

Both tools take { operation, arguments }. Omit operation to get back the list of available operations for that tool, useful for an agent discovering what it can do before calling anything.

Operation: get-settings. Reads curated Astra settings with their value plus type/label/group metadata.

Arguments: group (optional: colors, typography, layout, or header-footer) or keys (optional array of specific setting keys). Omit both to return everything on the allowlist.

Operation: update-settings. Writes settings by key.

Arguments: values, an object of { key: value } pairs.

The response has three parts: updated (the keys written), skipped (keys not on the allowlist) and rejected, an object of { key: reason } for values that failed the checks below. Nothing is written for a rejected key; the other keys in the same call are still saved.

Astra prints these settings into its dynamic CSS, and this write does not go through the Customizer, so each value is checked the way Astra’s Customizer checks it (since v3.20.0):

  • Colors: "" (reset), hex, rgb(), rgba(), or a palette variable such as var(--ast-global-color-0).
  • Font families: a font list such as "'Inter', sans-serif" or inherit, using only letters, digits, spaces, commas, hyphens, underscores, dots and quotes.
  • Font size (font-size-body): { desktop, tablet, mobile, desktop-unit, tablet-unit, mobile-unit }, sizes as numbers or "", units px, em, rem or % (default px).
  • Width (site-content-width): a whole number of pixels from 200 to 5000.
  • Layouts (select keys): a layout id of lowercase letters, digits, hyphens and underscores, e.g. header-main-layout-1.
KeyGroupType
theme-colorcolorscolor
text-colorcolorscolor
link-colorcolorscolor
link-h-colorcolorscolor
body-font-familytypographystring
font-size-bodytypographyresponsive size object
font-family-h1…font-family-h6typographystring
site-content-widthlayoutnumber (px)
site-layoutlayoutselect
header-layoutsheader-footerselect
footer-advheader-footerselect
footer-sml-layoutheader-footerselect

Call get-settings first, read the returned type/label for a key, then send the same shape back to update-settings.

Both tools are gated on edit_theme_options. Writing takes effect immediately: Astra’s dynamic CSS cache is cleared automatically so the change shows up without a manual “regenerate CSS.”

In 3.17.0, Spectra has its own tools and an independent switch on EMCP Tools → Page Builders. Theme configuration stays in Themes. The block plugin does not require the matching theme.

Both tools sit under EMCP Tools → Tools → Themes, in the Astra section. Astra Read is on by default and Astra Write ships off. While Astra is not the active theme, both cards carry a Needs Astra badge and cannot be switched on. After changing a switch, choose Save changes in the save bar and reconnect your AI client.