SEO suitesFree + Pro
AIOSEO MCP for its custom tables, not post meta
All in One SEO stores per-post data in its own tables rather than post meta, and that shapes everything this AIOSEO MCP integration does. An AI client can read and edit post and term titles, descriptions, robots and social previews, switch the default schema graph on or off, and manage redirects on AIOSEO Pro. Writes go through AIOSEO's models. GoBuildWP Free covers one post's title, description and robots and can undo that edit; everything else here is Pro, and Pro's writes are logged as irreversible.
Noindex our old Careers archive page but keep its links followed, and give it a proper Facebook title.
wppilot/aioseo-check-setupReadConfirms AIOSEO is active and whether it is Pro, and lists the post types whose SEO can be managed.
wppilot/aioseo-get-post-seoReadShows the page on index default, meaning it inherits all robots settings, plus its current Open Graph fields.
wppilot/aioseo-edit-post-seoWriteSends robots index noindex with follow, which switches the page to explicit robots, and a facebook title; nested blocks merge field by field.
wppilot/aioseo-get-post-seoReadReads the stored robots and social values back to confirm both took.
- Edition
- Free 2 + Pro 10
- Abilities
- 12
- Requires
- WordPress 6.9+, PHP 8.0+, AIOSEO 4.0+
Data model
aioseo_posts, aioseo_terms and the options layers
Per-post SEO (focus keyphrase, title, description, canonical, robots, social fields) is a row in the aioseo_posts table; term SEO is in aioseo_terms, and Pro redirects in aioseo_redirects. Writing post meta changes nothing AIOSEO prints, so the abilities use AIOSEO's own models, which also keep its redirect lookup cache and URL hashes consistent.
Global settings are JSON in the aioseo_options and aioseo_options_dynamic options, but title and description templates also have a localized layer that AIOSEO renders from. A raw update_option on aioseo_options would be silently lost; get-settings shows the keys, and the agent changes them through aioseo()->options followed by a save.
Robots is all or nothing. Index default makes a post inherit every robots directive from the global or post-type setting, so to put nofollow or noarchive on one post, index must be set to index or noindex explicitly.
Limits
Where AIOSEO writes stop
- GoBuildWP Pro logs its post SEO, term SEO, schema and redirect writes as irreversible because AIOSEO keeps them in its own tables, and bulk SEO writes on an AIOSEO site are marked the same way. Free's narrower aioseo-edit-post-seo keeps its own before-image of the title, description and robots columns, and rollback-change writes them back through AIOSEO's model; on a site running Pro, Pro's copy answers instead.
- Free's edit takes no focus keyphrase, canonical, pillar flag, advanced robots or social fields, so the example below, with its Facebook title, needs Pro.
- Term SEO and redirects need AIOSEO Pro. On the free edition the term abilities return aioseo_pro_required and the redirect abilities are not registered.
- edit-post-schema can only enable or disable the default graph, whose type the post type fixes (BlogPosting for posts, WebPage for pages). Adding a Recipe or FAQPage graph is an execute-php task, and existing custom graphs are left alone.
- One redirect per source URL: create refuses a duplicate, so edit the existing one by id. Needs AIOSEO 4.0 or later.
Abilities
AIOSEO abilities by effect
Inspect6
Create and change5
Destructive1
Reference: /docs/reference/aioseo
Documented source abilities; live registration can be narrower. Edition and effect labels describe the source catalogue. The installed schema, dependency versions, licence, WordPress capability, safety profile and per-ability policy determine availability; labels alone do not prove confirmation or recovery.
Worked example
Request noindex while updating the share card
Expected outcome to verify on the installed stack; this sequence has not been recorded as a runtime test.
Saved settings request noindex/follow and update the social title. Verify emitted tags separately; crawling, indexing, link treatment and preview refresh are not guaranteed. GoBuildWP cannot roll this back, so the first read is the record of the old values; setting index back to default restores inheritance.
aioseo-check-setupConfirms AIOSEO is active and whether it is Pro, and lists the post types whose SEO can be managed.
aioseo-get-post-seoShows the page on index default, meaning it inherits all robots settings, plus its current Open Graph fields.
aioseo-edit-post-seoSends robots index noindex with follow, which switches the page to explicit robots, and a facebook title; nested blocks merge field by field.
aioseo-get-post-seoReads the stored robots and social values back to confirm both took.
AIOSEO's own AI tools
AIOSEO's built-in abilities and its MCP route
All in One SEO registers abilities of its own with the WordPress Abilities API, and the free MCP Adapter plugin turns them into an MCP server. AIOSEO's guide gives ready-made configurations for Claude Desktop, Claude Code, Cursor, VS Code and Gemini CLI, each signing in with an application password shown once and revocable later; ChatGPT needs a different sign-in route. Its free edition exposes post, settings, notification, robots.txt and audit abilities. Term and redirect work require AIOSEO Pro; Search Statistics requires Elite, and Link Assistant requires its add-on. Those are the vendor's prerequisites, separate from GoBuildWP's own edition split.
That is broader than GoBuildWP's AIOSEO integration. Audit findings, Search Statistics data, Link Assistant and robots.txt rules come straight from the plugin that produces them, and AIOSEO keeps its scope to its own SEO data rather than the wider site.
GoBuildWP's AIOSEO abilities stay with post and term SEO, the default schema graph and Pro redirects, written through AIOSEO's models. AIOSEO's guide describes no revert or confirmation step. GoBuildWP Pro logs each of those writes as irreversible because the data sits in AIOSEO's tables, while GoBuildWP Free's per-post title, description and robots edit can be rolled back through AIOSEO's own model. What GoBuildWP adds is one connection that also serves the rest of the site, a safety profile deciding what may run, confirmation for destructive calls such as deleting a redirect, and a ledger row for every write.
AIOSEO at site scale
Finding the posts AIOSEO is quietly templating
An empty title or description in aioseo_posts is not an error. It means AIOSEO falls back to the post type template, and on most sites that is the right answer for the bulk of the archive. The useful question is which posts should not be on the template, and one-post reads cannot answer it. GoBuildWP Pro's plugin-neutral seo-bulk-get-meta can: it reads title, description, focus keyword, canonical, robots and Open Graph text for many posts at once from AIOSEO, with filters for missing descriptions, missing title overrides and duplicate effective titles.
Run it per post type with status publish. A filtered read inspects at most a thousand posts and says truncated when there were more, so a large blog needs several passes or a narrower post type. Duplicate titles are compared with smart tags unexpanded, so two posts both set to #post_title #separator_sa #site_title do not count as duplicates, but two that share the same typed override do. Before changing any of it, read the templates themselves with aioseo-get-settings scope titles, because a weak template is a one-line fix where hundreds of per-post overrides are not.
Bulk title and description changes without an undo
seo-bulk-update-meta writes through AIOSEO's own per-post writer, up to a hundred posts a call, with shared values or per-item values. On most SEO plugins each post's ledger row can be rolled back. On AIOSEO the rows are marked irreversible, because the data lives in aioseo_posts rather than the post row, and the ledger note says how to recover: re-run the bulk update with the before values from that batch.
So the order of work matters more here than on a meta-based plugin. Ask for dry_run true first, which returns each post's before and after and writes nothing, and keep that output. It holds the previous value of every field the call would change, which is what you would write back by hand if the change has to be reversed; it is not an automatic undo, and it does not cover edits anyone makes after the run. Then send the real call with confirm true and check the per-post results, since one failing post never stops the rest. A field AIOSEO does not store through this path fails that post with wppilot_seo_field_unsupported instead of being skipped silently.
- Robots in bulk follow the same all-or-nothing rule: setting index back to default also resets follow, and sending only nofollow to an inheriting post flips its index to index.
- Leave smart tags in place where a template already does the job; overriding a title with plain text freezes it.
- Keep batches small enough to spot-check in the page source before the next one.
Redirect housekeeping on AIOSEO Pro
Old AIOSEO Pro redirect tables pick up temporary 302s that became permanent, chains where a target was itself redirected later, and regex rules nobody remembers writing. aioseo-list-redirects returns compact rows with type, regex and enabled flags, newest first, up to five hundred per page, and its total respects the search filter, so an agent can page through a whole table and build a list of candidates without writing anything.
Fix candidates one at a time with aioseo-edit-redirect, which changes only the fields you send. Disabling a rule by sending enabled false is a gentler first step than aioseo-delete-redirect, which is permanent and asks for confirmation. Test a regex rule against the real URLs it is meant to catch before saving it, because a loose pattern can swallow paths you did not intend.
Pro also creates redirects on its own when a published post's slug changes, and AIOSEO Pro is one of the stores it can write to. Providers are tried in a fixed order, starting with the Redirection plugin, so on a site running both plugins the slug-change redirect may land in Redirection rather than in AIOSEO's table. Check which store holds it before assuming it is missing.
Questions
AIOSEO questions
Can GoBuildWP undo an AIOSEO change?
Only Free's per-post title, description and robots edit, which records the AIOSEO columns it changes and restores them through AIOSEO's model. Pro's writes to aioseo_posts, aioseo_terms and aioseo_redirects go beyond what the change log can snapshot, so they are recorded and flagged as irreversible.
Do AIOSEO smart tags survive an AI edit?
Yes. Tags such as #post_title, #separator_sa and #site_title are plain text, stored as written and filled in by AIOSEO when it renders.
Can the agent create AIOSEO redirects on the free plugin?
No. The Redirection Manager is an AIOSEO Pro feature, and the redirect abilities register only when it is present. GoBuildWP's automatic slug-change redirects then use another available store or WordPress's own old-slug handling.
AIOSEO documents a native MCP connection. GoBuildWP exposes its own suite-specific metadata and settings abilities; verify the target post or term and avoid enabling two overlapping bulk-edit workflows. AIOSEO MCP server guide
Where these facts come from
GoBuildWP behaviour is taken from the plugin source and the ability reference; third-party details from the vendor documentation below, checked by the GoBuildWP team.
- AIOSEO: Redirection Manager
- AIOSEO: Selecting the redirect method
- AIOSEO: Connecting an AI assistant with AIOSEO's MCP server
AIOSEO is a separate product; no partnership or endorsement is implied.