Modules
New in v3.1.0. Modules are substantial features you turn on and off from EMCP Tools → Modules. Unlike individual tool toggles, a module owns a whole feature, its admin surface, hooks, cron, and (where relevant) MCP tools, so disabling it is a true kill switch.
Each module boots only when active. Active module IDs live in a single option; each module keeps its own settings separately.
Available modules
Section titled “Available modules”| Module | Tier | Default | What it does |
|---|---|---|---|
| Image Optimization | Free | Off (opt-in) | Compress uploads + generate/serve WebP |
| SVG Uploads | Free | Off (opt-in) | Safely allow sanitized SVG uploads to the Media Library |
| Themer | Free | On | Builder-agnostic theme builder |
| Prompts | Free | On | The prompt library tab |
| Brand Kits | Free | On | Curated color + typography kits |
| EMCP Cloud | Free | On | Back up and sync this site to your EMCP Cloud account |
| Templates | Pro | On | The premium template library |
| AI Chat | Pro | On | In-editor AI chat (Elementor + Gutenberg) |
| GSAP Integration | Pro | Off (opt-in) | Local GSAP core plus all 24 plugins, stable WordPress handles, context controls, and MCP configuration |
| Agent Skills | Pro | On | Runtime skill exposure: the list-skills/get-skill Agent Skills tools + discovery-context catalog |
| Project Memory | Pro | On | Remembers your site across agent sessions and curates trusted guidance |
A module with a dedicated screen shows a Configure → link on its card; a lighter module shows an inline settings overlay.
Image Optimization
Section titled “Image Optimization”Free and opt-in (it mutates your uploads, so it ships off). When enabled it:
- Compresses generated image sub-sizes on upload and generates
.webpsiblings, using WordPress’s ownWP_Image_Editor, with no external binaries. - Serves WebP by rewriting
wp_get_attachment_*URLs. On the front end this is gated by the browser’sAccept: image/webpheader; in REST and WP-CLI it’s always served, so the MCP media tools (get-media,sideload-image,add-stock-image, …) resolve to WebP with no tool changes. - Preserves full-size originals (optionally trimmed by a max-dimension cap) and backs up every touched file under
uploads/emcp-originals/, so the whole thing is reversible. - Includes a resumable bulk optimizer (processes your existing library in batches) and a Restore originals companion.
- Adds an in-place image resizer and the
emcp-tools/resize-mediaMCP tool (new in v3.1.1). An AI agent can resize an existing Media Library image by ID, mid-build or after the fact.
Settings: compress on/off, WebP generation on/off, front-end WebP serving on/off (REST/CLI always serve WebP), quality (1–100, default 60), max dimension (0 = off), keep originals. Availability depends on your server’s image library supporting WebP output. The card disables the toggle and explains when it can’t.
emcp-tools/resize-media
Section titled “emcp-tools/resize-media”Resizes an existing Media Library attachment in place (added in v3.1.1). By default it scales the image to fit within the given width/height (aspect ratio preserved); pass crop: true for an exact width × height. The original is backed up under uploads/emcp-originals/ (reversible), all sub-sizes + WebP siblings are regenerated, and the attachment ID and URLs stay the same, so anything already pointing at the image keeps working. Registers only when the Image Optimization module is enabled. It always worked once enabled, but had no toggle of its own on the Tools screen until v3.13.0, which gave it its own Image Optimization section there.
| Input | Required | Notes |
|---|---|---|
attachment_id | yes | The Media Library image to resize. |
width | one of width/height | Target width in px (≥ 1). |
height | one of width/height | Target height in px (≥ 1). |
crop | no | true = crop to an exact width × height (both required); default scales to fit. |
SVG Uploads
Section titled “SVG Uploads”Free and opt-in (off by default — it’s a security surface). WordPress blocks SVG uploads out of the box because SVG is XML and can carry scripts. When enabled, this module adds the svg mime type for users who can upload_files, fixes the real-content MIME check so SVGs aren’t rejected on the REST/sideload path, and sanitizes every uploaded SVG with a bundled sanitizer library, fail-closed: an SVG that can’t be cleaned is rejected rather than saved unsanitized.
Mainly useful on sites without Elementor, since Elementor already allows SVG uploads for authorized users on its own. This is distinct from the SVG icon library tool: that’s about inserting an existing icon into a page; this module is about what’s allowed into the Media Library in the first place.
EMCP Cloud
Section titled “EMCP Cloud”Free and on by default. Connects this site to your EMCP Cloud account. Connect or disconnect from EMCP Tools → Connection; once connected, two things become available:
- Sandbox backup/sync — Save to Cloud, browse your Cloud Library across every connected site, and publish to (or update on) the Marketplace, all from the Sandbox screens (Blocks, Widgets, PHP Snippets).
- Settings sync (paid Cloud plan) — push a curated allowlist of this plugin’s own settings (tool toggles, active modules, Compact tool mode, and similar behavior preferences) to Cloud and pull them onto another connected site. Since v3.15.1 the bundle is account-scoped, so every site connected to that Cloud workspace can pull the latest pushed settings. Never secrets, API keys, or the connection itself.
Full detail, including the 7 MCP tools for backup/sync and the Marketplace, in EMCP Cloud & Marketplace.
Agent Skills
Section titled “Agent Skills”Pro and on by default. This module is the on/off switch for runtime skill exposure. It registers the read-only list-skills and get-skill tools and injects the ## Skills catalog into the MCP discovery context, so a connected agent can browse and load the bundled playbooks over the MCP connection. Turning it off removes those tools and the discovery injection (reclaiming their token footprint); it does not affect the local Skills download on the Skills tab. Full detail in Agent Skills.
GSAP Integration
Section titled “GSAP Integration”Pro and opt-in. Registers the locally bundled GSAP 3.15.0 core and complete 24-plugin distribution with stable WordPress handles. Its settings choose the frontend/admin/editor loading contexts and the plugin dependency closure to enqueue. The module also owns the gsap-read and gsap-write MCP dispatchers. See GSAP Integration for the catalog, handles, configuration, and Agent Skill.
AI Chat
Section titled “AI Chat”Pro and on by default. Owns the whole AI Chat feature: the AI Chat admin tab, the REST routes, the conversation store, and the floating chat panel in both page editors, Elementor and the WordPress block editor. Turning the module off is a true kill switch: the tab, the editor panels, the routes, and the cron all stop. Full detail, including how to use it and its web_fetch capability, in AI Chat.
Project Memory
Section titled “Project Memory”Pro and on by default. Lets the plugin remember your site across agent sessions: it captures what each session did, curates trusted guidance behind a human-approval gate, and feeds approved guardrails and facts back into every new agent session as a ## Project memory block in the discovery context. Turning the module off disables capture, injection, and the memory MCP tools.
Building your own
Section titled “Building your own”The framework is extensible: Pro units register modules through the plugin’s loader, and the emcp_tools_register_modules action lets code register a custom module. See Filters & hooks.