Aculect AI Companion
Aculect AI Companion is a secure MCP connector for WordPress. It lets approved AI apps such as ChatGPT, Claude, Grok, and other compatible clients work with your WordPress content, media, comments, and site information through permission-aware workflows. Instead of switching between WordPress admin screens, you can ask your AI assistant in plain English to draft a post, update a page, review comments, upload media, inspect safe site details, or prepare long-form content using WordPress blocks. WordPress remains the source of truth. Aculect AI Companion checks the connected WordPress user’s permissions before every action, lets administrators choose which optional abilities are available, keeps safe baseline read/discovery abilities default-active, and keeps risky write actions behind configurable controls. What is MCP for WordPress? MCP stands for Model Context Protocol. In Aculect AI Companion, MCP gives supported AI assistants a structured, permission-controlled way to request WordPress actions. The assistant does not receive direct database access. It can only use the enabled tools exposed by WordPress and approved by an administrator. Why use Aculect AI Companion? Connect WordPress to ChatGPT, Claude, Grok, and other MCP-compatible AI apps Create, update, and organize WordPress content through controlled AI workflows Audit internal linking, review link opportunities, and apply approved suggestions through MCP Work with posts, pages, custom post types, categories, tags, comments, and media Use block-aware content workflows instead of raw custom HTML Inspect Site Editor and admin menu surfaces before planning theme or settings work Review AI activity with sanitized audit logs Control access globally, by connection, by role, and by WordPress user permissions Use diagnostics to verify OAuth, MCP, endpoint, and environment readiness Setup is designed to be simple: Copy your connection URL from AI Companion > Connect. Choose ChatGPT, Claude, Grok, or another AI app for the right setup guide. Paste the URL when prompted by your AI app. Approve the connection on the screen that appears. After approval, Aculect AI Companion checks the connected WordPress user’s permissions before every action. You can also choose exactly what your AI assistant can do and disconnect assistants at any time. Features Create, edit, and publish posts, pages, and supported custom post types Plan and draft long-form block content for WordPress Audit internal linking, prepare reviewable link suggestions, and apply approved links through MCP Manage categories, tags, custom taxonomies, and content groups Moderate, reply to, and bulk-manage comments Upload, list, update, attach, detach, and safely rename media View safe site settings, active plugins, active themes, and diagnostics Connect, pause, review, and disconnect AI assistants Control which MCP abilities each assistant can use Supported AI Tools Aculect AI Companion keeps the primary setup surface focused on: ChatGPT custom apps. Developer Mode availability depends on your plan and workspace settings. Claude custom connectors through Customize > Connectors. Grok custom MCP connectors through https://grok.com/connectors. Grok must be able to reach your WordPress MCP endpoint over public HTTPS. Cursor remote MCP servers. Standards-compatible remote MCP clients. Your AI tool must be able to reach your WordPress site over HTTPS to complete OAuth approval and send MCP requests. Supported Abilities Admins can enable or disable optional abilities from AI Companion > Abilities after the first assistant connection is active. Baseline read/discovery abilities for core MCP guidance remain default-active and are not individually disableable, but WordPress capabilities, OAuth scopes, connection access, and execution-time policy checks still apply. Long-form content workflows: Prepare a post outline, section plan, taxonomy recommendations, media recommendations, and SEO recommendations Create a draft from validated serialized WordPress block content Update an existing post with block-safe content workflows Update Rank Math SEO title, description, and focus keywords when Rank Math is active Inspect recent Rank Math 404 Monitor entries and prepare safe Rank Math redirects when those modules are active Content: List readable content types, including custom post types List posts, pages, and custom content items with pagination Read one content item by ID Create a post, page, or custom content item with optional featured image, author, and taxonomy assignments Update title, content, excerpt, slug, status, featured image, author, or taxonomy assignments for an existing item Update SEO title, SEO description, and focus keywords for supported SEO plugins Internal linking with MCP: Audit supported content for internal-link gaps and discover relevant on-site content Map potential linking opportunities and prepare reviewable suggestions Review individual suggestions before applying them to supported content Apply approved suggestions only when the connected user’s WordPress permissions and configured MCP policy allow the change Aculect AI Companion keeps internal linking in the MCP content workflow instead of a separate Internal Links admin tab. It does not add links automatically when the plugin is activated or when an AI assistant connects. Redirects and 404 workflows: List bounded Rank Math redirection rules when Rank Math Redirections is active Validate proposed Rank Math redirects before saving them Create one or more Rank Math redirects with per-item results and dry-run support Review recent Rank Math 404 Monitor entries with query strings redacted Content groups: List available categories, tags, and custom content groups List terms for a supported taxonomy with pagination Create a category, tag, or custom content group Update a category, tag, or custom content group Assign or clear an image for supported taxonomy terms Comments: List comments for review with pagination Read one comment by ID Reply to a comment as the connected WordPress user Moderate comment content or status Bulk moderate multiple comments Media: List media library attachments with pagination Read, update, trash, and safely rename media items Upload media from a public URL with server-side request checks Attach media to posts or detach media from posts Site information: View safe, non-secret site settings View WordPress version, PHP version, active theme, and basic site metadata List installed plugins and active state for users who can manage plugins List installed themes and active state for users who can manage themes WordPress abilities: Discover supported public WordPress abilities registered by WordPress and plugins Inspect one supported public WordPress ability Run a supported public WordPress ability using the connected user’s permissions Third Party Services Aculect AI Companion does not send site data to an external service on activation, page load, cron, or without a site administrator connecting an AI assistant. When a site administrator copies the connection URL into an external AI assistant and approves the connection screen in WordPress, that assistant can request the enabled abilities. Depending on the enabled abilities and the connected WordPress user’s permissions, requested data may include post titles, post content, excerpts, slugs, statuses, authors, dates, permalinks, category and tag names, media metadata, comments, and safe site settings such as site name, description, URLs, locale, timezone, date format, time format, permalink structure, and active theme name. The external service that receives this data is the AI assistant selected and configured by the administrator. Aculect AI Companion’s built-in setup UI includes links for: ChatGPT by OpenAI: https://chatgpt.com/, terms at https://openai.com/policies/terms-of-use/, and privacy policy at https://openai.com/policies/row-privacy-policy/ Claude by Anthropic: https://claude.ai/, terms at https://www.anthropic.com/legal/consumer-terms, and privacy policy at https://www.anthropic.com/legal/privacy Cursor by Anysphere: https://cursor.com/, terms at https://cursor.com/terms-of-service, and privacy policy at https://cursor.com/privacy Gemini by Google: https://gemini.google.com/, terms at https://policies.google.com/terms, and privacy policy at https://policies.google.com/privacy Grok by xAI: https://grok.com/, terms at https://x.ai/legal/terms-of-service, and privacy policy at https://x.ai/legal/privacy-policy Administrators should review the terms and privacy policy for the AI assistant they connect. Aculect AI Companion controls the WordPress-side approval and permissions checks; it does not control how a connected external assistant processes data after the administrator authorizes access. Development The production package ships built assets and Composer dependencies. Development manifests such as composer.json, composer.lock, and package.json are intentionally excluded from release ZIP files. Generated files under build/ are not committed to the source repository; release automation generates them before packaging. For source code, build tooling, and exact dependency manifests, use the public GitHub repository: https://github.com/mehul0810/aculect-ai-companion Contributing guidelines: https://github.com/mehul0810/aculect-ai-companion/blob/main/CONTRIBUTING.md Security policy: https://github.com/mehul0810/aculect-ai-companion/security/policy From the repository checkout, use the Node.js version in .nvmrc and rebuild assets with: npm ci npm run build Composer dependencies for production releases are installed with: composer install --no-dev --prefer-dist --optimize-autoloader
Enable Abilities for MCP
Enable Abilities for MCP gives you full control over which WordPress Abilities are available to AI assistants through the MCP (Model Context Protocol) Adapter. WordPress 6.9 introduced the Abilities API, allowing external tools to discover and execute actions on your site. This plugin extends that functionality by registering a comprehensive set of content management abilities and providing a simple admin interface to toggle each one on or off. Connect from claude.ai with just a URL Since version 2.1 the plugin ships an embedded OAuth 2.1 server built for claude.ai custom connectors. Add your site in claude.ai → Settings → Connectors, log in with your WordPress user, approve the consent screen — connected. No Client ID, no Application Password, no local configuration. Works from the claude.ai web app, mobile apps, and Claude Desktop Each team member authenticates with their own WordPress account and role — a subscriber can never do what only an editor should Every ability execution lands in the activity log under the real user’s name Works on single sites, subdirectory installs, and multisite networks (network-activate so the main site serves the OAuth discovery documents for every subsite) Prefer tokens? Application Passwords (per-user) and a single-admin Bearer token connect Claude Desktop / Claude Code, OpenAI Codex CLI, and Google Antigravity — the Connection tab generates ready-to-paste configuration for each client, and fills in your credentials automatically. Features 102 abilities organized in 21 categories: Core, Read, Write, SEO (Rank Math), SEO (SEOPress), SEO (Yoast), Navigation Menus, Utility, Multilanguage, Custom Post Types, WooCommerce, The Events Calendar, Code Snippets, JetEngine Options Pages, JetEngine Query Builder, Elementor, LearnDash, Tutor LMS, AI Agent Readiness (llms.txt), FSE Block Templates, and Accessibility (WCAG) WooCommerce integration — dedicated abilities to manage products, orders, and customers using the native WooCommerce API (HPOS-compatible, formally declared) The Events Calendar integration — list, get, create, and update events with venue, organizer, and date filters claude.ai OAuth custom connector — connect from claude.ai (web, mobile, or desktop) with zero local setup: an embedded OAuth 2.1 server with Client ID Metadata Document (CIMD) support lets each user log in with their own WordPress account and role Admin dashboard with toggle switches for each ability Per-ability control — expose only what you need Third-party ability control — abilities registered by other MCP-ready plugins (e.g. Fluent Forms) appear in the same dashboard, grouped by plugin, with the same per-ability toggles; disabling one removes it from every MCP server on the site Secure by design — proper capability checks, input sanitization, and per-post permission validation WPCS compliant — fully passes WordPress Coding Standards (phpcs) MCP-ready — all abilities include show_in_rest and mcp.public metadata Available Abilities Read (safe, query-only): Get posts with filters (status, category, tag, search) Get single post details (content, SEO meta, featured image) Get categories, tags, pages, comments, media, and users Write (create & modify): Create, update, and delete posts Create categories and tags Create pages Moderate comments Reply to comments as the authenticated user Upload images from external URLs to the media library (with optional auto-assign as featured image) Duplicate any post, page, or custom post type item — including all post meta (ACF, SEO, featured image) and taxonomy terms; saved as a draft by default Assign a custom taxonomy’s terms to a post or page (e.g. a taxonomy registered by a companion plugin) SEO — Rank Math: Get full Rank Math metadata for any post/page (title, description, keywords, robots, Open Graph, SEO score) Update Rank Math metadata: SEO title, description, focus keyword, canonical URL, robots, Open Graph, primary category, pillar content SEO — SEOPress: Get full SEOPress metadata for any post/page (title, description, focus keyword, robots, canonical, Open Graph, Twitter Card) Update SEOPress metadata: SEO title, description, focus keyword, canonical URL, robots directives, Open Graph, Twitter Card SEO — Yoast SEO: Get full Yoast SEO metadata for any post/page (title, description, focus keyphrase, canonical, robots, Open Graph, Twitter Card) Update Yoast SEO metadata: SEO title, description, focus keyphrase, canonical URL, robots (noindex, nofollow, advanced), Open Graph, Twitter Card Get Yoast sitemap index — fetch and parse the sitemap index, returning all registered sitemap URLs with last modification date Custom Post Types: List all registered custom post types with configuration and taxonomies Get items from any CPT with filtering, search, and taxonomy queries Get full details of a CPT item including all meta fields (WooCommerce, ACF, JetEngine, etc.) Create, update, and delete CPT items with taxonomy and meta field support Get CPT taxonomies with their terms Assign taxonomy terms to CPT items Read term meta by exact key, or all meta for a term Write a term meta field by exact key Update a term’s core fields: name, slug, description, or parent WooCommerce: List products with price, SKU, stock status, categories, and type Get full product detail including gallery, attributes, and variations Update product price, sale price, stock quantity, and status List orders with customer, total, status, and date (HPOS-compatible) Get full order detail: line items, billing/shipping, totals, and notes Update order status with optional note List customers with email, name, total spent, and order count The Events Calendar: List events with start/end date, venue, organizer, and date range filter Get full event detail with resolved venue address and organizer contact Create new events with title, description, dates, venue, and organizer Update existing events Navigation Menus: List menus with item counts and theme locations, and get one menu’s full item hierarchy Create a new menu, and add pages, posts, categories, tags, or custom URLs as items (with parent and position) Update an item’s title, URL, parent, or position Remove an item, assign a menu to a theme location, or delete a menu entirely (opt-in — destructive) Tutor LMS: Read a lesson’s video source configuration (type, value, and runtime) Set a lesson’s video source (external URL, YouTube, Vimeo, HTML5, or a third-party source such as Bunny.net) using Tutor’s own storage function — avoids the string-only limitation of the generic Update Post Meta ability, which Tutor cannot read back List courses, and get a single course’s full detail with its topics/lessons hierarchy Get a user’s enrollment status and completion progress for a course Get a user’s quiz attempt results, optionally filtered to a single quiz Enroll a user in a course, and unenroll them (both opt-in, manage_options only) Multilanguage: Assign a language to an existing post via Polylang or WPML Link two posts as translations of each other in the same translation group Get the full translation map for a post: language, post ID, title, permalink, and status for each translation LearnDash: List courses with enrollment count, and get a single course’s full detail (lessons, topics, quizzes) Get a user’s enrollment status/progress and quiz results for a course Enroll or unenroll a user in a course (opt-in — write, manage_options) JetEngine Options Pages: List all registered Options Pages with their field schema Get all fields and current values for an Options Page by slug Update a single Options Page field, including repeater rows (opt-in — write) JetEngine Query Builder: List all Query Builder queries with id, name, and query type Get the full settings of one query by id Update an existing query’s name, type, or arguments — the missing counterpart to JetEngine’s own native “Add Query” MCP tool, which has no edit/get/list equivalent (opt-in — write) Elementor: Get a compact, read-only tree of an Elementor page/template (element ids, types, text preview) Update an Elementor element’s settings by id — single or batch edits (opt-in — write) Bind a widget setting to a dynamic tag: post title, or a JetEngine/meta field (opt-in — write) Code Snippets: Create a PHP code snippet via the Code Snippets plugin — always saved as inactive, activate manually from wp-admin. Validates PHP syntax and blocks dangerous functions (eval, exec, shell_exec, and more) AI Agent Readiness (llms.txt): Fetch and validate the site’s llms.txt against the llmstxt.org spec, with actionable issues Write llms.txt content — routes automatically to SEOPress Pro’s option when active, or serves it directly (opt-in — write) FSE Block Templates: List all wp_template and wp_template_part entries for the active theme, merging theme-file defaults with database overrides Get the full block markup for one template or template part by slug Write new block markup to a template or template part — creates a database override automatically when the target is still a theme default; rejects content with unbalanced block-comment delimiters (opt-in — write, edit_theme_options) Accessibility (WCAG): Scan the media library for images missing alt text (WCAG 1.1.1 Non-text Content), paginated Utility: Search and replace text in post content Site statistics overview (includes custom post type counts) Update any post meta field by exact key (with protected internal key blocklist) Requirements WordPress 6.9 or later (Abilities API) MCP Adapter plugin installed and configured PHP 8.0 or later