Browse documentation +
Getting startedInstallationConnect a clientSafety profilesWordPress ChatPro licensingAntigravity CLIAntigravity IDETroubleshootingOAuth 2.1 setupApplication PasswordsPage builder workflowsLedger and rollbackApprovals and memoryAbility reference
Pro module12 abilities

AIOSEO

These abilities register when AIOSEO is detected on the site and a Pro licence is active. If either is missing the module stays absent rather than failing at call time.

At a glance

AIOSEO registers 12 abilities: 6 that only read, 5 that write, and 1 marked destructive. That split is the practical answer to how much of this module can run unattended. Reads cost nothing and are safe to repeat, so discovery is the part to be generous with; the writes are where review belongs, and the destructive calls stop for an explicit confirmation every single time regardless of which profile is active.

What this module is for

Let an AI client inspect and edit AIOSEO post and term SEO data, post schema, redirects, and settings through typed operations.

Before you rely on it: SEO recommendations still need editorial judgment; validate schema and crawl redirect changes before release.

Typical workflows

  • Audit titles and descriptions before rewriting them
  • Review current schema before adding or changing types
  • Create a redirect only after checking the destination and chain

The AIOSEO integration page covers the same module from the workflow side, with the capability map and the questions worth asking before a first write.

Availability on your site

The AIOSEO module needs three things at once: WPPilot Free as the MCP foundation, an active Pro licence, and the companion plugin detected on the site. Miss any one and the module does not register, which is deliberate: an ability that appears in the tool list but fails at call time is worse than an ability that was never offered. What the connected agent can actually call is then narrowed twice more: by the safety profile active on the site, and by the WordPress capabilities of the user behind the credential. A read that succeeds for an administrator can be absent entirely for an editor.

Every write these abilities perform is recorded in the change ledger, and destructive calls can be routed through the approval queue so a person signs off before anything is applied. A successful tool result means the operation returned, not that the front end, the cache, and every dependent template are correct: that still needs a look.

Reads

Available in every safety profile, including Read Only. Inspection costs nothing and is not rate limited.

AbilityWhat it does
wppilot/aioseo-check-setupCheck AIOSEO SetupReports the All in One SEO environment: whether AIOSEO is active, its version, whether it is the Pro edition, which Pro-gated surfaces are available (term SEO and redirects need Pro), whether schema is available, and the public post types and taxonomies whose SEO can be managed. Pro-gated abilities (term SEO, redirects) check this. Call this first before any other AIOSEO ability.
wppilot/aioseo-get-post-schemaGet Post Schema (AIOSEO)Reads the All in One SEO schema (structured data) state for a post. Returns default_graph ("enabled" = the post emits its default schema graph, "off" = disabled), default_type (the schema.org type that default graph renders — the post-type default, e.g. BlogPosting for posts, WebPage for pages; AIOSEO fixes this and edit-post-schema cannot change it), custom_graphs (the schema.org types of any Schema-Generator custom graphs the post adds, which render in addition to the default), and has_custom_graphs (true when the post has any custom graphs — graphs / raw JSON-LD / block — which edit-post-schema leaves intact). Identify the post by post_id (alias: id).
wppilot/aioseo-get-post-seoGet Post SEO (AIOSEO)Reads the All in One SEO metadata for a single post or page in one friendly shape: focus_keyphrase, additional_keyphrases (Pro), seo_title, meta_description, canonical, pillar_content (cornerstone), robots (index: default|index|noindex, follow: follow|nofollow, advanced: list of noarchive/noimageindex/nosnippet/noodp/notranslate, plus the max_snippet / max_image_preview / max_video_preview SERP-preview limits on an explicit-robots post), facebook (Open Graph) and twitter previews, and schema (whether the post emits its default schema graph — "enabled" or "off"; use aioseo-get-post-schema for the full schema picture). AIOSEO gates per-post robots behind a "use defaults" flag: index "default" means the post inherits the global / post-type robots, NOT "indexed" — this ability maps it for you. Identify the post by post_id (alias: id). Never-set fields come back empty / default.
wppilot/aioseo-get-settingsGet AIOSEO SettingsReads a curated snapshot of the site-wide All in One SEO settings. scope selects the block(s) (default "all"): "general" = the title separator and the homepage title & meta-description templates; "titles" = the per-post-type and per-taxonomy title & description templates. Template strings use AIOSEO smart tags like #post_title, #separator_sa, #site_title. To CHANGE a setting use wppilot/execute-php and write through the aioseo()->options object then ->save(true) (e.g. aioseo()->options->searchAppearance->global->siteTitle = ...). Do NOT raw update_option('aioseo_options') for title/description templates: those fields are "localized" and AIOSEO renders (and this ability reads) from a separate localized layer the raw write does not touch, so the edit would be silently lost. This ability reveals the keys and current values.
wppilot/aioseo-get-term-seoGet Term SEO (AIOSEO)Reads the All in One SEO metadata for a single taxonomy term (category, tag, or custom-taxonomy term): seo_title, meta_description, canonical, pillar_content, robots (index: default|index|noindex, follow: follow|nofollow, advanced), and the facebook (Open Graph) and twitter previews. Term SEO requires AIOSEO Pro. index "default" means the term inherits the global / taxonomy default, NOT "indexed". Identify the term by term_id + taxonomy.
wppilot/aioseo-list-redirectsList Redirects (AIOSEO)Lists the All in One SEO redirects (requires AIOSEO Pro). Returns compact rows {id, source_url, target_url, type, regex, enabled}, newest first. Use limit (default 100, max 500), offset to paginate, and search to filter by source or target URL. total is the number of matching rows (it respects search), so you can paginate while offset + returned < total. Use the id with aioseo-edit-redirect / aioseo-delete-redirect.

Writes

Gated by the active profile and your WordPress capabilities. Rate limited to 120 per minute per credential.

AbilityWhat it does
wppilot/aioseo-create-redirectCreate Redirect (AIOSEO)Creates an All in One SEO redirect (requires AIOSEO Pro). source_url is the path/URL to redirect from; target_url is where it goes (required for 301/302/307; ignored for 410 Gone and 451). type is the HTTP status: 301 (permanent), 302/307 (temporary), 410 (gone), 451 (unavailable for legal reasons). regex treats source_url as a regular expression. Writes through AIOSEO's redirect model so the lookup cache and URL hashes stay correct. Fails if a redirect for the same source_url already exists (use aioseo-edit-redirect). Returns the created redirect.
wppilot/aioseo-edit-post-schemaEdit Post Schema (AIOSEO)Controls the All in One SEO default (primary) schema graph for a post. schema_type is "default" (the post emits its default schema graph) or "off" (disable it). AIOSEO ALWAYS renders the post-type's own default type for the default graph (e.g. BlogPosting for posts, WebPage for pages) and resets it at render time, so you cannot change the default graph's TYPE here — only enable or disable it. To add a SPECIFIC schema.org type that needs per-type properties (Recipe, Product, FAQPage, Event, HowTo, etc.), add a custom graph to schema.graphs[] with wppilot/execute-php (see the aioseo-integration skill for a recipe). Any custom graphs the post already has are left intact. Identify the post by post_id (alias: id). Returns the resulting schema state.
wppilot/aioseo-edit-post-seoEdit Post SEO (AIOSEO)Updates the All in One SEO metadata for a single post or page. Send only the fields to change — it is a partial merge; nested blocks (robots, facebook, twitter) merge field-by-field. Fields: focus_keyphrase, seo_title, meta_description (may use AIOSEO smart tags like #post_title #separator_sa #site_title), canonical, pillar_content (bool, cornerstone), robots {index: default|index|noindex, follow: follow|nofollow, advanced: list of noarchive/noimageindex/nosnippet/noodp/notranslate, plus SERP limits max_snippet (-1 unlimited, 0 none), max_image_preview (none|standard|large), max_video_preview}, facebook/twitter {title, description, image}. IMPORTANT: AIOSEO's robots is all-or-nothing — index "default" makes the post inherit ALL robots (the global / post-type setting); to set follow or advanced you must set index to "index" or "noindex". The friendly labels are mapped to AIOSEO's robots_default + per-flag columns for you. Identify the post by post_id (alias: id). Returns the full updated SEO.
wppilot/aioseo-edit-redirectEdit Redirect (AIOSEO)Updates an existing All in One SEO redirect by id (requires AIOSEO Pro). Send only the fields to change: source_url, target_url, type (301/302/307/410/451), regex, enabled. Writes through AIOSEO's redirect model so the lookup cache and URL hashes stay correct. Find the id with aioseo-list-redirects. Returns the updated redirect.
wppilot/aioseo-edit-term-seoEdit Term SEO (AIOSEO)Updates the All in One SEO metadata for a single taxonomy term (category, tag, or custom-taxonomy term). Requires AIOSEO Pro. Send only the fields to change — partial merge; robots/facebook/twitter merge field-by-field. Fields: seo_title, meta_description, canonical, pillar_content (bool), robots {index: default|index|noindex, follow: follow|nofollow, advanced: list of noarchive/noimageindex/nosnippet/noodp/notranslate, plus SERP limits max_snippet (-1 unlimited, 0 none), max_image_preview (none|standard|large), max_video_preview}, facebook/twitter {title, description, image}. As with posts, AIOSEO robots is all-or-nothing — index "default" makes the term inherit ALL robots; use "index"/"noindex" to set explicit robots. Identify the term by term_id + taxonomy. Returns the full updated SEO.

Destructive

Marked destructive in the source, so each call needs an explicit confirmation flag, every time.

AbilityWhat it does
wppilot/aioseo-delete-redirectDelete Redirect (AIOSEO)Permanently deletes an All in One SEO redirect by id (requires AIOSEO Pro). Writes through AIOSEO's redirect model so the lookup cache stays correct. Find the id with aioseo-list-redirects. Returns the deleted id.