30 days free. No credit card. Full access from the moment you connect your site.

Start free trial

Update Title And Meta Templates

seo/update-title-templates writes the SEO title and meta description templates for every post type, taxonomy, archive and special page.

They set the default for content that has no per-post override. They do not change any individual post.

At a glance

Abilityseo/update-title-templates
ToolsetYoast SEO — toolset/yoast-seo
GroupYoast SEO › Settings
RequiresYoast SEO, active on the site
Capabilitymanage_options
SafetyWrites data
RepeatableIdempotent — running it twice leaves the same result
Ships inAcrossAI Abilities Manager 0.0.34 and later

Defaults, and who overrides them

Yoast titles and descriptions are templates — patterns like %%title%% %%sep%% %%sitename%% expanded per page — rather than literal strings.

A post with its own SEO title ignores the template entirely. So on a site where the editorial process fills in per-post titles, changing a template changes nothing visible — and on a site where it does not, changing a template changes every page of that type at once.

Both are correct behaviours and they look identical from the settings screen, which is why checking a real page with seo/get-indexable afterwards is worth the call.

Templates are the only lever for the pages that have no per-page SEO at all: archives, author pages, the search results. For those, this is not a default — it is the title.

The variables are Yoast’s own. A typo in one does not error; it renders literally, so a template containing %%titel%% produces pages with that text in the title.

Yoast ships abilities of its own for single posts. This suite fills in what those cannot reach rather than duplicating them.

Idempotent.

Input

NameTypeRequiredWhat it is
settingsobjectYesA map of setting key to new value. Keys outside this area are refused.

What comes back

NameTypeWhat it is
updatedarrayThe keys that changed.
settingsobjectThe area after the write.
successbooleanWhether the call completed.
messagestringA one-line summary of what happened, suitable for showing a human.
error_codestringPresent only on failure — a stable machine-readable reason, such as a missing field, a wrong field type or an unmet confirmation.

Example

Ask your assistant:

Set the default title template for posts.

It resolves to one call:

{
  "ability": "seo/update-title-templates",
  "parameters": {
    "settings": { "title-post": "%%title%% %%sep%% %%sitename%%" }
  }
}

Worth knowing

  • Per-post overrides win. A template change can correctly appear to do nothing.
  • For archives and system pages the template is the whole title, not a default.
  • A mistyped variable renders literally rather than erroring.
  • Verify on a real page afterwards.

Related abilities


Get the plugins:
AcrossAI Abilities Manager · AcrossAI MCP Manager

Browse the rest: Every ability, by category


Keep reading