Developers

tranzly abilities reference

tranzly registers its actions with the WordPress Abilities API. The same abilities are MCP tools on the site's own server and REST routes under /wp-json/wp-abilities/v1. This page is generated from the plugin's own registry.

User guide: connect an AI app

Endpoints

MCP over HTTP (streamable)

https://example.com/wp-json/tranzly/v1/mcp

MCP over WP-CLI (standard input and output)

wp mcp-adapter serve --server=tranzly --user=<login>

REST: list the abilities

/wp-json/wp-abilities/v1/abilities?category=tranzly

REST: run an ability

/wp-json/wp-abilities/v1/abilities/<name>/run

Authentication and permissions

HTTP requests authenticate with a WordPress application password (HTTP Basic). Connecting to the MCP server needs the capability shown below; every ability then checks its own permission, per object. Read-only abilities run with GET and their input in the query string; the others with POST and a JSON body {"input": {…}}.

Examples

# REST: run an ability
curl -u your-username:your-application-password \
  "https://example.com/wp-json/wp-abilities/v1/abilities/tranzly/get-comments-setting/run"
# MCP (JSON-RPC over HTTP, after "initialize")
{"jsonrpc":"2.0","id":2,"method":"tools/call","params":{"name":"tranzly-get-comments-setting","arguments":{}}}

All abilities

Generated from the plugin's abilities.json, which is itself generated from a running site; a test fails when the two disagree.

AbilityWhat it doesEditionRESTPermissionParameters
tranzly/bulk-translate
tranzly-bulk-translate
Translate the whole site
Starts background translation jobs for every original of the given content types (all translated types when none are given): the missing translations, the out-of-date ones, or all of them. Returns the jobs started, one per language.
Pro editionPOST …/abilities/tranzly/bulk-translate/runedit_posts; publish_posts to publishlanguages: array (required), post_types: array, scope: missing|stale|all, engine: string, publish: boolean
tranzly/cancel-job
tranzly-cancel-job
Cancel a job
Stops a job; translations already made are kept.
Free editionPOST …/abilities/tranzly/cancel-job/runmanage_options (the REST route's own check)id: string (required)
tranzly/check-quality
tranzly-check-quality
Check a translation with AI
Has AI compare one translation with its original and score it, and stores the report on the translation. Uses the quality-check AI model set in Tranzly's workflow settings.
Pro editionPOST …/abilities/tranzly/check-quality/runedit_post on that translationid: integer (required)
tranzly/connect-support
tranzly-connect-support
Connect to support
Connects this site to Zinn Digital® support (name, email, consent).
Free editionPOST …/abilities/tranzly/connect-support/runmanage_options (the REST route's own check)email: string (required), name: string, consent: boolean (required)
tranzly/correct-segments
tranzly-correct-segments
Correct a translation
Saves corrected segments of a translation (segments: key to text); corrected text is protected from re-translation.
Free editionPOST …/abilities/tranzly/correct-segments/runedit_post (the REST route's own check)id: string (required), segments: object (required)
tranzly/create-job
tranzly-create-job
Start a translation job
Starts a background job translating listed posts (posts) or a whole post type into languages (langs).
Free editionPOST …/abilities/tranzly/create-job/runedit_posts (the REST route's own check)posts: array, post_type: string, langs: array (required), engine: string, status: publish|draft, force: boolean
tranzly/create-post-translation
tranzly-create-post-translation
Create an empty translation
Creates a draft translation of a post in a language (lang) to write by hand, without an engine.
Free editionPOST …/abilities/tranzly/create-post-translation/runthe REST route's own per-item permission checkid: string (required), lang: string (required), name: string, slug: string, description: string
tranzly/create-term-translation
tranzly-create-term-translation
Create a term translation by hand
Creates a term's translation in a language with a name, slug and description you give.
Free editionPOST …/abilities/tranzly/create-term-translation/runthe REST route's own per-item permission checkid: string (required), lang: string (required), name: string, slug: string, description: string
tranzly/disconnect-support
tranzly-disconnect-support
Disconnect from support
Disconnects this site from support.
Free editionPOST …/abilities/tranzly/disconnect-support/runmanage_options (the REST route's own check)none
tranzly/estimate
tranzly-estimate
Estimate a translation
Estimates characters and cost to translate posts (posts or post_type) into languages (langs) with an engine, before spending anything.
Free editionPOST …/abilities/tranzly/estimate/runedit_posts (the REST route's own check)posts: array, post_type: string, langs: array (required), engine: string
tranzly/estimate-bulk
tranzly-estimate-bulk
Estimate translating the site (Pro)
Estimates a whole-site translation in a language (post_types, scope, engine) before starting it.
Pro editionPOST …/abilities/tranzly/estimate-bulk/runedit_posts (the REST route's own check)post_types: array, scope: missing|stale|all, engine: string, lang: string (required), after: integer
tranzly/export-translation-file
tranzly-export-translation-file
Export a file for human translators
Returns an XLIFF or CSV file (as text) with the originals and their translations in one language, for a translator or a translation agency: the given posts, or a page of up to 100 originals of a content type in a state (missing, stale, translated or all; repeat with after). Import it back with tranzly/upload-translation-file.
Pro editionGET …/abilities/tranzly/export-translation-file/runedit_posts; each post is included only if the user may edit itlang: string (required), format: xliff|csv, posts: array, post_type: string, state: all|missing|stale|translated, after: integer
tranzly/fix-status
tranzly-fix-status
Translate what is missing
Queues translation of every missing (or out-of-date) item in a language and post type.
Free editionPOST …/abilities/tranzly/fix-status/runedit_posts (the REST route's own check)post_type: string, lang: string (required), state: missing|stale|quality (required)
tranzly/get-comments-setting
tranzly-get-comments-setting
Read comment handling (Pro)
Returns whether comments are shared across languages or kept per language.
Pro editionGET …/abilities/tranzly/get-comments-setting/runmoderate_comments (the REST route's own check)none
tranzly/get-deepl-usage
tranzly-get-deepl-usage
Read the DeepL usage
Returns the characters used and the limit of the saved DeepL key this month.
Free editionGET …/abilities/tranzly/get-deepl-usage/runmanage_options (the REST route's own check)none
tranzly/get-diagnostics
tranzly-get-diagnostics
Read the site diagnostics
Returns the diagnostics a support ticket would carry: versions, active plugins, limits and recent errors.
Free editionGET …/abilities/tranzly/get-diagnostics/runmanage_options (the REST route's own check)none
tranzly/get-display
tranzly-get-display
Read the display options
Returns the language switcher and credit display options.
Free editionGET …/abilities/tranzly/get-display/runmanage_options (the REST route's own check)none
tranzly/get-engine-settings
tranzly-get-engine-settings
Read the engine settings
Returns the default and fallback engine, per-language engines, each engine's state and this month's spend.
Free editionGET …/abilities/tranzly/get-engine-settings/runmanage_options (the REST route's own check)none
tranzly/get-glossary
tranzly-get-glossary
Read the glossary
Returns the words never translated, the fixed term translations and the tone per language.
Pro editionGET …/abilities/tranzly/get-glossary/runmanage_optionsnone
tranzly/get-integrations
tranzly-get-integrations
Read the integrations
Lists the SEO, WooCommerce, page-builder and form plugins Tranzly supports and which are active here.
Free editionGET …/abilities/tranzly/get-integrations/runmanage_options (the REST route's own check)none
tranzly/get-job
tranzly-get-job
Read a job's progress
Returns one job's progress and counts.
Free editionGET …/abilities/tranzly/get-job/runmanage_options (the REST route's own check)id: string (required)
tranzly/get-job-failures
tranzly-get-job-failures
Read a job's failures
Lists a job's failed items with the reason for each.
Free editionGET …/abilities/tranzly/get-job-failures/runmanage_options (the REST route's own check)id: string (required)
tranzly/get-legacy-import
tranzly-get-legacy-import
Read the Tranzly 2.x import
Returns the state and report of importing translations from Tranzly 2.x.
Free editionGET …/abilities/tranzly/get-legacy-import/runmanage_options (the REST route's own check)none
tranzly/get-licence
tranzly-get-licence
Read the licence
Returns this site's Tranzly plan, licence state, renewal date and what the plan includes.
Free editionGET …/abilities/tranzly/get-licence/runmanage_options (the REST route's own check)none
tranzly/get-menus
tranzly-get-menus
Read the menus per language
Returns which menu each language shows in each menu location.
Free editionGET …/abilities/tranzly/get-menus/runedit_theme_options (the REST route's own check)none
tranzly/get-post-group
tranzly-get-post-group
Read a post's translations
Lists a post's translation group: every language's member with its title, status and edit link.
Free editionGET …/abilities/tranzly/get-post-group/runedit_post and edit_term (the REST route's own check)id: string (required)
tranzly/get-quality-report
tranzly-get-quality-report
Read a quality report (Pro)
Returns a translation's AI quality report: score and the segments it flagged.
Pro editionGET …/abilities/tranzly/get-quality-report/runedit_post (the REST route's own check)id: string (required)
tranzly/get-segments
tranzly-get-segments
Read a translation side by side
Returns a translation's segments beside the original's, for review and correction.
Free editionGET …/abilities/tranzly/get-segments/runedit_post (the REST route's own check)id: string (required)
tranzly/get-shared-strings
tranzly-get-shared-strings
Read theme and plugin texts
Returns the theme and plugin texts (scope) in a language with their translations.
Free editionGET …/abilities/tranzly/get-shared-strings/runedit_theme_options (the REST route's own check)lang: string (required), scope: menus|site|templates|gettext.theme-twentytwentyfive|gettext.plugin-page-builder-sandwich|gettext.plugin-tranzly
tranzly/get-site-strings
tranzly-get-site-strings
Read the site's texts in a language
Returns the site title, tagline and widget texts in a language.
Free editionGET …/abilities/tranzly/get-site-strings/runmanage_options (the REST route's own check)lang: string (required)
tranzly/get-support-connection
tranzly-get-support-connection
Read the support connection
Says whether this site is connected to Zinn Digital® support, and as whom.
Free editionGET …/abilities/tranzly/get-support-connection/runmanage_options (the REST route's own check)refresh: boolean
tranzly/get-term-group
tranzly-get-term-group
Read a term's translations
Lists a category's or tag's translation group.
Free editionGET …/abilities/tranzly/get-term-group/runedit_post and edit_term (the REST route's own check)id: string (required)
tranzly/get-urls
tranzly-get-urls
Read the address settings
Returns how languages appear in addresses (folder, subdomain or domain), translated slugs and bases, and noindex for untranslated pages.
Free editionGET …/abilities/tranzly/get-urls/runmanage_options (the REST route's own check)none
tranzly/get-workflow-settings
tranzly-get-workflow-settings
Read the workflow settings (Pro)
Returns auto-translation on publish and on update, review before publish, and the AI quality check's threshold, provider and model.
Pro editionGET …/abilities/tranzly/get-workflow-settings/runmanage_options (the REST route's own check)none
tranzly/import-from-source
tranzly-import-from-source
Migrate from WPML, Polylang or TranslatePress (Pro)
Imports the next page of translations from another multilingual plugin (mode: dry-run or run; cursor).
Pro editionPOST …/abilities/tranzly/import-from-source/runmanage_options (the REST route's own check)source: string (required), mode: dry-run|run|undo, cursor: string
tranzly/import-translation-file
tranzly-import-translation-file
Write an imported file (Pro)
Writes the next page of posts from an uploaded translation file (repeat with after until done).
Pro editionPOST …/abilities/tranzly/import-translation-file/runedit_posts (the REST route's own check)token: string (required), after: integer
tranzly/link-post
tranzly-link-post
Link an existing post as a translation
Makes an existing post (target) the translation of this post in a language.
Free editionPOST …/abilities/tranzly/link-post/runedit_post and edit_term (the REST route's own check)id: string (required), lang: string (required), target: integer (required)
tranzly/list-engines
tranzly-list-engines
List translation engines
Lists the translation engines, whether each is set up, and which one is used when none is named.
Free editionGET …/abilities/tranzly/list-engines/runedit_postsnone
tranzly/list-import-sources
tranzly-list-import-sources
List plugins to migrate from (Pro)
Lists WPML, Polylang and TranslatePress data found on this site that can be imported.
Pro editionGET …/abilities/tranzly/list-import-sources/runmanage_options (the REST route's own check)none
tranzly/list-jobs
tranzly-list-jobs
List translation jobs
Lists background translation jobs, newest first, with progress.
Free editionGET …/abilities/tranzly/list-jobs/runedit_posts (the REST route's own check)none
tranzly/list-languages
tranzly-list-languages
List languages
Lists the site's languages. The first one is the language the original content is written in.
Free editionGET …/abilities/tranzly/list-languages/runedit_postsnone
tranzly/list-status-items
tranzly-list-status-items
List what is missing or out of date
Lists originals with their translation state in a language (state: missing, stale, current), page by page.
Free editionGET …/abilities/tranzly/list-status-items/runedit_posts (the REST route's own check)post_type: string, lang: string (required), state: all|missing|stale|translated|human|machine|review|quality, after: integer
tranzly/list-support-access
tranzly-list-support-access
List temporary support logins
Lists the temporary support users granted to our team and when each expires.
Free editionGET …/abilities/tranzly/list-support-access/runmanage_options (the REST route's own check)none
tranzly/list-theme-strings
tranzly-list-theme-strings
List theme and plugin text sources (Pro)
Lists the themes and plugins whose texts can be scanned for translation, and how many strings each has.
Pro editionGET …/abilities/tranzly/list-theme-strings/runmanage_options (the REST route's own check)none
tranzly/open-support-ticket
tranzly-open-support-ticket
Open a support ticket
Files a support ticket (subject, message, kind, email) with this site's diagnostics; access_days and credentials optionally grant our team temporary access.
Free editionPOST …/abilities/tranzly/open-support-ticket/runmanage_options (the REST route's own check)none
tranzly/retry-job-item
tranzly-retry-job-item
Retry or hand off a failed item
Retries a failed item (action: retry, optionally with another engine) or marks it for translating by hand (action: by-hand).
Free editionPOST …/abilities/tranzly/retry-job-item/runedit_post and manage_options (the REST route's own check)item: string (required), action: string (required), engine: string
tranzly/review-translation
tranzly-review-translation
Approve or reject a translation (Pro)
Approves a translation (and publishes it when the original is published) or sends it back (decision, note).
Pro editionPOST …/abilities/tranzly/review-translation/runedit_post (the REST route's own check)id: string (required), decision: approve|changes|pending (required), note: string
tranzly/revoke-support-access
tranzly-revoke-support-access
Revoke temporary support logins
Removes temporary support users now (ids).
Free editionPOST …/abilities/tranzly/revoke-support-access/runmanage_options (the REST route's own check)ids: array (required)
tranzly/run-legacy-import
tranzly-run-legacy-import
Import Tranzly 2.x translations
Runs the 2.x import: dry-run (report only), run, or undo.
Free editionPOST …/abilities/tranzly/run-legacy-import/runmanage_options (the REST route's own check)action: string (required)
tranzly/scan-theme-strings
tranzly-scan-theme-strings
Scan a theme or plugin for texts (Pro)
Scans the next page of a component's PHP files for translatable texts (repeat with after until done).
Pro editionPOST …/abilities/tranzly/scan-theme-strings/runmanage_options (the REST route's own check)component: string (required), after: integer
tranzly/schedule-quality-check
tranzly-schedule-quality-check
Check translations with AI (Pro)
Schedules the AI quality check of the next page of a language's translations (or the given posts).
Pro editionPOST …/abilities/tranzly/schedule-quality-check/runedit_posts (the REST route's own check)lang: string (required), post_type: string, posts: array, after: integer
tranzly/seo-audit
tranzly-seo-audit
Multilingual SEO audit (Pro)
Checks translations for missing SEO titles, descriptions, slugs and hreflang in a language, page by page.
Pro editionGET …/abilities/tranzly/seo-audit/runmanage_options (the REST route's own check)lang: string (required), after: integer
tranzly/set-comments-setting
tranzly-set-comments-setting
Change comment handling (Pro)
Shares comments across a post's translations or keeps them per language (mode).
Pro editionPOST …/abilities/tranzly/set-comments-setting/runmanage_options and moderate_comments (the REST route's own check)mode: off|show|translate (required)
tranzly/set-engine-key
tranzly-set-engine-key
Save an engine key
Saves the API key (and region for Microsoft) of DeepL, Google or Microsoft; empty removes it. Keys are stored encrypted and never returned.
Free editionPOST …/abilities/tranzly/set-engine-key/runmanage_options (the REST route's own check)engine: string (required), key: string (required), region: string
tranzly/set-menus
tranzly-set-menus
Set the menus per language
Assigns a menu per language per location (map).
Free editionPOST …/abilities/tranzly/set-menus/runedit_theme_options (the REST route's own check)map: object (required)
tranzly/set-protection
tranzly-set-protection
Protect or unlock a translation
Protects a translation from being overwritten by the engine (protected: true), or unlocks it.
Free editionPOST …/abilities/tranzly/set-protection/runedit_post (the REST route's own check)id: string (required), protected: boolean (required)
tranzly/set-shared-strings
tranzly-set-shared-strings
Correct theme and plugin texts
Saves corrected translations of theme and plugin texts (strings); they become protected.
Free editionPOST …/abilities/tranzly/set-shared-strings/runedit_theme_options (the REST route's own check)lang: string (required), scope: menus|site|templates|gettext.theme-twentytwentyfive|gettext.plugin-page-builder-sandwich|gettext.plugin-tranzly, strings: object (required)
tranzly/set-site-string
tranzly-set-site-string
Translate a site text
Saves one site text (key) in a language, e.g. the site title or tagline.
Free editionPOST …/abilities/tranzly/set-site-string/runedit_theme_options and manage_options (the REST route's own check)lang: string (required), key: string (required), translation: string (required)
tranzly/set-urls
tranzly-set-urls
Change the address settings
Sets the address mode (mode), per-language domains, translated bases and segments, noindex_untranslated and slug suggestions.
Free editionPOST …/abilities/tranzly/set-urls/runmanage_options (the REST route's own check)mode: string, segments: object, domains: object, bases: object, suggest: boolean, noindex_untranslated: boolean
tranzly/start-trial
tranzly-start-trial
Start the free Pro trial
Starts the 14-day Tranzly Pro trial for this site (no payment needed).
Free editionPOST …/abilities/tranzly/start-trial/runmanage_options (the REST route's own check)none
tranzly/translate-media-field
tranzly-translate-media-field
Translate an image's text
Saves an image's alt text, title or caption (field) in a language (lang).
Free editionPOST …/abilities/tranzly/translate-media-field/runedit_post (the REST route's own check)id: string (required), lang: string (required), field: alt|caption|title (required), translation: string (required)
tranzly/translate-post
tranzly-translate-post
Translate a post or page
Translates one post or page into one or more of the site's languages with a translation engine, creating each translation or updating it. New translations are drafts unless publish is true. A translation a person edited is skipped unless force is true.
Free editionPOST …/abilities/tranzly/translate-post/runmay translate that post (edit_post on it); edit_post on an existing translation; the type's publish capability to publishid: integer (required), languages: array (required), engine: string, publish: boolean, force: boolean
tranzly/translate-shared-strings
tranzly-translate-shared-strings
Translate missing theme and plugin texts
Translates the next page of untranslated theme and plugin texts in a language with the default engine (repeat with after until done).
Free editionPOST …/abilities/tranzly/translate-shared-strings/runedit_theme_options (the REST route's own check)lang: string (required), scope: menus|site|templates|gettext.theme-twentytwentyfive|gettext.plugin-page-builder-sandwich|gettext.plugin-tranzly, after: integer
tranzly/translate-site
tranzly-translate-site
Translate my site
A guided workflow: the agent checks the languages and engine, estimates the cost, and translates what is missing, asking before it spends or publishes.
Free editionPOST …/abilities/tranzly/translate-site/runedit_postslanguages: string (required)
tranzly/translate-term
tranzly-translate-term
Translate a category or tag
Translates one term (category, tag or product attribute) into a language (lang) with an engine, creating or updating its translation.
Free editionPOST …/abilities/tranzly/translate-term/runthe REST route's own per-item permission checkid: string (required), lang: string (required), engine: string, force: boolean, status: publish|draft
tranzly/translation-status
tranzly-translation-status
Translation status
With a post ID: each language's translation of that post, whether it is out of date, and who wrote it. Without one: how much of the site is translated, per language.
Free editionGET …/abilities/tranzly/translation-status/runedit_post on that post; edit_posts for the site summaryid: integer, post_type: string
tranzly/unlink-post
tranzly-unlink-post
Unlink a post from its translations
Takes a post out of its translation group; it keeps its language.
Free editionPOST …/abilities/tranzly/unlink-post/runedit_post and edit_term (the REST route's own check)id: string (required)
tranzly/update-display
tranzly-update-display
Change the display options
Changes the switcher (style, flags, names, placement) and the credit line.
Free editionPOST …/abilities/tranzly/update-display/runmanage_options (the REST route's own check)switcher: object, credit: boolean
tranzly/update-engine-settings
tranzly-update-engine-settings
Change the engine settings
Sets the default engine, a fallback engine and per-language engines (default, fallback, per_lang). Per-language engines and fallback are Pro.
Free editionPOST …/abilities/tranzly/update-engine-settings/runmanage_options (the REST route's own check)none
tranzly/update-glossary
tranzly-update-glossary
Update the glossary
Replaces the parts of the glossary you send (words never translated, term translations, tone); parts you leave out are kept. Used by every engine from the next translation on.
Pro editionPOST …/abilities/tranzly/update-glossary/runmanage_optionsdnt: array, terms: object, tone: object
tranzly/update-settings
tranzly-update-settings
Change languages and settings
Sets the site's languages (languages: list of code and name; the first is the original language), the front-end class prefix, and whether AI agents (MCP) are allowed.
Free editionPOST …/abilities/tranzly/update-settings/runmanage_options (the REST route's own check)prefix: string, mcp: boolean, languages: array
tranzly/update-workflow-settings
tranzly-update-workflow-settings
Change the workflow settings (Pro)
Sets on_update (off, stale, translate), on_publish, review, quality_threshold, quality_provider and quality_model.
Pro editionPOST …/abilities/tranzly/update-workflow-settings/runmanage_options (the REST route's own check)none
tranzly/upload-translation-file
tranzly-upload-translation-file
Import a translated file (Pro)
Uploads a Tranzly XLIFF or CSV file (content, filename) translated elsewhere; answers a token for tranzly/import-translation-file.
Pro editionPOST …/abilities/tranzly/upload-translation-file/runedit_posts (the REST route's own check)none