MCP Server For EE turns your ExpressionEngine site into a secure Model Context Protocol server, so AI assistants like Claude, Cursor, and VS Code can browse channels, search entries, and manage content — always limited by each member’s native EE permissions. A built-in OAuth 2.1 authorization server with PKCE, dynamic client registration, EE Pro MFA support, and audit logging means your team’s AI assistants sign in with their own EE accounts and there are no API keys to hand out. Writes can never exceed the publish form: every field’s contract (upload directory, relationship targets, option lists, Grid and Fluid structure) is reported up front and enforced before save. Bulk passes are first-class: filter entries by field state, update up to 25 in one call with a per-item result, dry-run any change first, read an entry’s revision history, and see in the audit log exactly what each call touched. Coding assistants can even upload large files — 50–100 MB PDFs and videos — straight to your Files, without base64-encoding them through the model, and other add-ons can plug their own tools into the same server through a versioned plugin API. Optionally, any visitor’s AI agent can read your published content too — no account needed — through a separate, allowlisted, read-only public endpoint that’s off by default.
MCP Server For EE exposes your ExpressionEngine 7 site to AI assistants through the Model Context Protocol — the open standard used by Claude, Cursor, VS Code, Codex, and a fast-growing list of AI tools. Connect your editor or assistant once, sign in with your EE member account, and it can discover channels, search and edit entries, manage categories, and work with files. Every tool call is checked against the member’s native EE role and channel permissions, so AI access never exceeds what that member could already do in the Control Panel.
get_channel reports each field’s contract — the upload directory a file field accepts, the channels and statuses a relationship field may point to, a text field’s maximum length, an option field’s choices, a Grid’s columns and row limits, a Fluid field’s allowed children — and create_entry/update_entry refuse a mismatch before anything is saved, with a message that names the field and what is allowed. An assistant plans from one call and never writes what an editor could not have picked in the Control Panel.update_entries applies up to 25 updates in one call with a per-item result — a failed item never stops the rest, so a partial batch is retried by entry id. dryRun: true runs every check and shows exactly what would change without writing a thing, returnFields keeps write responses down to what you need, and list_entry_revisions/get_entry_revision show what an entry held at each save (for channels with versioning on) when a field is empty and nobody knows why.mcp:read, mcp:write, mcp:admin) layer on top of native EE role and channel permissions — enforced on every single tool call — and tools/list is filtered per member, so an assistant is only ever shown the tools that member could actually use. Reads follow the publish form too: a member who may only edit their own entries in a channel only sees their own there. Choose which member roles may connect at all, with a per-member deny or allow for the odd exception, and revoke any connected client in one click (its live tokens stop at once).upload_file returns a single-use upload URL plus a ready-to-run shell command, so a coding assistant streams the file straight to your site — 50–100 MB PDFs and videos included — without base64-encoding it through the model. A tiny-file base64 fallback is also provided. Uploads run EE’s own content validation (type sniffing, executable-extension blocks, per-destination limits), with optional in-place replace that preserves the file ID entries reference.delete_entry and delete_file ship off by default, so an agent can’t remove content until you explicitly turn that on.?ACT= action URLs that work on any host. The control panel checks that AI clients can actually find your site’s sign-in, says so plainly when they cannot, and fixes it in one click on Apache (it even creates the .htaccess when a site has none), or hands you a ready-to-paste snippet for Nginx / LiteSpeed.entry:197, file:1181) — filter it to one entry in the CP, or let a Super Admin’s assistant read it over MCP with list_audit_log to answer “what touched this entry?” — and opt-in debug logging with secrets automatically redacted and a one-click download, ready to attach to a support request.initialize-handshake revisions back to 2025-03-26 — so today’s clients and tomorrow’s connect without configuration. Every tool carries MCP annotations (read-only, destructive, idempotent), so clients can run reads without prompting and confirm the rare destructive call. Advertises server icons (your site favicon), description, and website URL, so your brand shows up as clients adopt icon support..well-known server-card discovery (plus a <link rel="mcp-server"> tag) so clients can find it automatically.encryption_key in your EE config (EE sets one on install)$99 per license. One license covers a single production site plus one related staging/development site; each additional production site needs its own license. Commercial-use license — you may modify the add-on for your licensed site, but it may not be resold or redistributed. See the full license terms linked from the listing.
Full documentation is linked from this listing. If something isn’t working, flip on debug logging in the add-on settings, reproduce, and use the one-click Download Debug Log button for redacted, shareable diagnostics (it never contains passwords, tokens, keys, or content); the Control Panel also keeps an audit log of every mutating tool call. Questions? Reach out to [email protected].
Packet Tide owns and develops ExpressionEngine. © Packet Tide, All Rights Reserved.