Tools reference
Every WordPress and WooCommerce tool the SAR Intelligence plugin offers, as your AI app sees it, generated from the runtime's own catalog.
359 tools in 21 areas
What each approval level means
- None
- Reads, or makes a draft nobody sees: no approval once changes are allowed.
- Approval once live
- Changes a draft at once; on a live page it waits for your approval.
- Approval
- Waits for a person to approve that exact change in SAR.
- Approval and password
- Approved in SAR with your password: it can affect the whole site.
- Depends on the change
- The site checks each change first and says whether it needs approval.
Page builders
49 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_get_builder_textsTexts on a page-builder page | The texts of a page built with Elementor, Bricks, Beaver Builder, Breakdance, Divi 4 or 5, Kadence Blocks or GenerateBlocks, and (plugin 0.14.0, beta) WPBakery (also in WoodMart, Porto, Impreza, The7), Avada, Enfold or Flatsome, and (0.15.0, beta) Oxygen 6, BeTheme or SeedProd (headings, paragraphs, buttons, tabs), each with the element (on block pages the block's position, like b0-2; on shortcode pages the tag and its number, like vc_custom_heading-1) and field to change it by; also the texts of theme elements (Divi Theme Builder layouts, GeneratePress and Kadence Elements, from wordpress_list_theme_elements). wordpress_get_post says which builder a page uses. | Reads | None |
wordpress_list_elementor_widgetsElementor widgets | The Elementor widgets this site has (names to use in a layout), and whether Elementor Pro is active.Needs: Elementor | Reads | None |
wordpress_get_elementor_layoutElementor layout of a page | A page's whole Elementor layout (sections, containers, columns and widgets with their settings) and an outline of it, to change and save with wordpress_save_elementor_layout.Needs: Elementor | Reads | None |
wordpress_save_elementor_layoutSave an Elementor layout | Replace a page's whole Elementor layout: elements is the list of top-level sections or containers, in Elementor's own format, using widgets from wordpress_list_elementor_widgets.Needs: Elementor | Changes | Approval once live |
wordpress_publish_elementor_draftPublish an Elementor draft over a live page | Put the layout of a draft copy made by wordpress_save_elementor_layout on the live page it was made from, then remove the copy.Needs: Elementor | Changes | Approval |
wordpress_list_elementor_templatesElementor theme templates | Elementor Pro theme-builder templates (headers, footers, single and archive templates, 404 pages, popups, sections): each one's type, status, conditions and, in words, where it shows.Needs: Elementor Pro | Reads | None |
wordpress_save_elementor_templateSave an Elementor theme template | Create a theme-builder template (header, footer, single, single-page, single-post, archive, search-results, error-404, popup or section; all but section need Elementor Pro) or change an existing one's layout (id).Needs: Elementor Pro | Changes | Depends on the change |
wordpress_set_template_conditionsShow an Elementor template | Set where an Elementor Pro template shows and publish it, e.g. ["include/general"] for the whole site, ["include/singular/page"] for every page, or add "exclude/singular/page/12".Needs: Elementor Pro | Changes | Approval and password |
wordpress_get_elementor_style_schemaElementor 4 style properties | The style properties Elementor 4's atomic widgets accept: all names, or details (type, options) for some names or those starting with a prefix, e.g. prefix: font.Needs: Elementor | Reads | None |
wordpress_list_bricks_elementsBricks elements | The Bricks elements this site has (names to use in a layout) and its template types.Needs: Bricks | Reads | None |
wordpress_get_bricks_layoutBricks layout of a page | A page's or Bricks template's whole layout (Bricks' flat list of elements with their settings) and an outline of it, to change and save with wordpress_save_bricks_layout.Needs: Bricks | Reads | None |
wordpress_save_bricks_layoutSave a Bricks layout | Replace a page's whole Bricks layout: elements is Bricks' flat list, each with a 6-character id, name (from wordpress_list_bricks_elements), parent (0 at the top), children and settings.Needs: Bricks | Changes | Depends on the change |
wordpress_publish_bricks_draftPublish a Bricks draft over a live page | Put the layout of a draft copy made by wordpress_save_bricks_layout on the live page it was made from, then remove the copy.Needs: Bricks | Changes | Approval |
wordpress_list_beaver_modulesBeaver Builder modules | The Beaver Builder modules this site has (slugs to use in a layout), the post types it is on for, and whether Beaver Themer is active.Needs: Beaver Builder | Reads | None |
wordpress_get_beaver_layoutBeaver Builder layout of a page | A page's or Themer layout's whole Beaver Builder layout (its map of rows, column groups, columns and modules by node id) and an outline of it, to change and save with wordpress_save_beaver_layout.Needs: Beaver Builder | Reads | None |
wordpress_save_beaver_layoutSave a Beaver Builder layout | Replace a page's whole Beaver Builder layout: nodes maps node ids (6+ lowercase letters or digits) to rows (top), column groups (in rows), columns (in column groups) and modules (in columns, settings.type from wordpress_list_beaver_modules), each with parent and position.Needs: Beaver Builder | Changes | Depends on the change |
wordpress_publish_beaver_draftPublish a Beaver Builder draft over a live page | Put the layout of a draft copy made by wordpress_save_beaver_layout on the live page it was made from, then remove the copy.Needs: Beaver Builder | Changes | Approval |
wordpress_set_beaver_locationsPlace a Beaver Themer layout | Set where a Beaver Themer layout (header, footer, part) shows: location rules like general:site (the whole site), general:404, archive:post or post:page:12.Needs: Beaver Builder | Changes | Approval and password |
wordpress_list_shortcode_elementsShortcode builder elements | The elements a shortcode page builder offers on this site (beta): WPBakery, Flatsome, Avada, Enfold or Divi, with which are containers, which carry text, where each may sit, and which are refused in new layouts (raw HTML or code).Needs: WPBakery, Flatsome, Avada, Enfold, Divi 4 | Reads | None |
wordpress_get_shortcode_layoutShortcode layout of a page | The layout of a page built with WPBakery, Flatsome, Avada, Enfold or Divi 4 (beta) as a tree: each element's id (e.g. 0.2.1:vc_column_text), tag, settings and text.Needs: WPBakery, Flatsome, Avada, Enfold, Divi 4 | Reads | None |
wordpress_save_shortcode_layoutSave a shortcode layout | Save a whole new layout for a WPBakery, Flatsome or Avada page (beta), as a tree of elements: {tag, attrs, content} or {tag, attrs, children}; an element left as it was is {keep: "<id>"} (its exact original is kept, including theme shortcodes), {keep, children} keeps its tags with new insides, and {html} is text between elements.Needs: WPBakery, Flatsome, Avada, Enfold, Divi 4 | Changes | Approval once live |
wordpress_publish_shortcode_draftPublish a shortcode draft over a live page | Put a draft copy made by wordpress_save_shortcode_layout onto its live page (beta): the live page takes the copy's layout and the copy is removed.Needs: WPBakery, Flatsome, Avada, Enfold, Divi 4 | Changes | Approval |
wordpress_list_breakdance_elementsBreakdance or Oxygen elements | The elements this site's Breakdance or Oxygen 6 offers (beta), and which are refused in new layouts (code, HTML, shortcodes).Needs: Breakdance, Oxygen 6 | Reads | None |
wordpress_get_breakdance_layoutBreakdance or Oxygen layout of a page | A page's Breakdance or Oxygen 6 layout (beta): its element tree with each element's id, type and text, and the full tree to build on.Needs: Breakdance, Oxygen 6 | Reads | None |
wordpress_save_breakdance_layoutSave a Breakdance or Oxygen layout | Save a whole Breakdance or Oxygen 6 layout (beta) as the tree wordpress_get_breakdance_layout gives ({root: {id, data, children}}), using only the site's element types; ids stay unique, code and custom attributes are refused (what the page holds already passes unchanged, with plugin 0.24.0).Needs: Breakdance, Oxygen 6 | Changes | Depends on the change |
wordpress_publish_breakdance_draftPublish a Breakdance or Oxygen draft over a live page | Put a draft copy made by wordpress_save_breakdance_layout onto its live page (beta).Needs: Breakdance, Oxygen 6 | Changes | Approval |
wordpress_get_block_layoutDivi 5 layout of a page | A Divi 5 page's layout (beta): its blocks with positions (b0-2), names and text, the full block markup, and the divi/* blocks this site offers.Needs: Divi 4 | Reads | None |
wordpress_save_block_layoutSave a Divi 5 layout | Save a whole Divi 5 layout (beta), as block markup (content) or as blocks ({name, attrs, innerHTML, innerBlocks}, or {keep: "b0-1"} for a block left as it was).Needs: Divi 4 | Changes | Depends on the change |
wordpress_publish_block_layout_draftPublish a Divi 5 draft over a live page | Put a draft copy made by wordpress_save_block_layout onto its live page (beta).Needs: Divi 4 | Changes | Approval |
wordpress_list_formsForms | The site's forms across its form plugins (Contact Form 7, WPForms, Fluent Forms, Gravity Forms, Forminator, Ninja Forms, with plugin 0.24.0 Breakdance's forms in beta, and with plugin 0.25.0 JetFormBuilder, which keeps entries only for forms with its Save Form Record action), with how many entries each has and whether the plugin keeps a copy of entries at all (Contact Form 7 only emails them unless Flamingo is installed; WPForms Lite keeps none).Needs: Contact Form 7, WPForms, Fluent Forms, Gravity Forms, Forminator, Ninja Forms, Breakdance, JetFormBuilder | Reads | None |
wordpress_list_form_entriesForm entries | A form's entries, masked on the site before they leave it: names as first name and initial, emails and phones shortened, addresses, IP addresses and payment details left out, free text with any email or phone inside masked.Needs: Contact Form 7, WPForms, Fluent Forms, Gravity Forms, Forminator, Ninja Forms, Breakdance, JetFormBuilder | Reads | None |
wordpress_get_form_entryA form entry | One form entry, masked as in list_form_entries, with its wp-admin link.Needs: Contact Form 7, WPForms, Fluent Forms, Gravity Forms, Forminator, Ninja Forms, Breakdance, JetFormBuilder | Reads | None |
wordpress_breakdance_html_to_draftBreakdance or Oxygen layout from HTML | The best way to build a new Breakdance or Oxygen 6 layout (beta): semantic HTML with its CSS in a <style> block becomes an element tree of Breakdance's core elements (section → Section; div, header, article… → Div; h1–h6 → Heading; p → Text, or Rich Text when it has links or bold; img → Image; a → Button (class btn or button), Text Link, or a Wrapper Link around other elements; ul → Basic List; svg → Icon; bd-columns → Columns).Needs: Breakdance, Oxygen 6 | Changes | Depends on the change |
wordpress_breakdance_edit_elementsChange Breakdance or Oxygen elements | The best way to change an existing Breakdance or Oxygen 6 layout (beta), element by element, without sending the whole tree: up to 100 operations in order, all or nothing. insert {parent_id, position, element: {type, properties, children}}, update {id, properties} (merged into what is there: an object key by key, an explicit null removes a key, a list or value replaces), move {id, parent_id, position}, delete {id}, duplicate {id, parent_id?, position?}.Needs: Breakdance, Oxygen 6 | Changes | Depends on the change |
wordpress_get_breakdance_element_schemasBreakdance or Oxygen element properties | The properties element types take (beta), read from Breakdance's own control definitions on this site: each property's path under data.properties, its control type and choices, whether it is per breakpoint or has a hover state, and a note where it can be bound to dynamic data (with the return type it takes).Needs: Breakdance, Oxygen 6 | Reads | None |
wordpress_get_breakdance_design_systemBreakdance or Oxygen design system | The site's Breakdance or Oxygen 6 design system (beta): global settings (colors, typography, buttons, containers), presets, variables and their collections, selectors (classes: in Breakdance 3 and Oxygen 6 the Oxygen selectors store, with properties per breakpoint; in Breakdance 2 its classes), the breakpoints and the global CSS files.Needs: Breakdance, Oxygen 6 | Reads | None |
wordpress_save_breakdance_selectorsChange Breakdance or Oxygen classes | Add, change or remove the site's Breakdance or Oxygen 6 classes (beta) without touching the others: each change names one selector, and its properties are merged into what it has, breakpoint by breakpoint and key by key (null removes a key), never replacing the whole set.Needs: Breakdance, Oxygen 6 | Changes | Approval and password |
wordpress_save_breakdance_variablesChange Breakdance or Oxygen variables | Add, change or remove the site's Breakdance or Oxygen 6 variables (beta), matched by id or by their exact CSS name (Brand-Ink and brand-ink are two names): a new one needs css_name, type and value.Needs: Breakdance, Oxygen 6 | Changes | Approval and password |
wordpress_save_breakdance_global_settingsChange Breakdance or Oxygen global settings | Change the site's Breakdance or Oxygen 6 global settings (beta): settings is merged into what is there, key by key (null removes a key; a list replaces the list), as wordpress_get_breakdance_design_system shows them under settings.Needs: Breakdance, Oxygen 6 | Changes | Approval and password |
wordpress_list_breakdance_templatesBreakdance or Oxygen templates | The site's Breakdance or Oxygen 6 templates (beta): templates (single, archive, WooCommerce product, shop, cart and the like), headers, footers, popups, global blocks and parts, each with live (whether it applies now: Breakdance keeps templates published and switches them with disabled), type, rule groups (where it applies), priority and its data's state, and the template types the site has.Needs: Breakdance, Oxygen 6 | Reads | None |
wordpress_create_breakdance_templateNew Breakdance or Oxygen template | Make a new Breakdance or Oxygen 6 template, header, footer or part switched off (beta), so it applies nowhere until the user switches it on: kind, title, its type (headers and footers default to everywhere) (from wordpress_search_condition_values: all-singles, page, product, product-archive, cart… WooCommerce's where the shop has them), where it applies (conditions: rule groups [[{ruleSlug, operand, value}]], any group applying, all rules of a group), priority, and optionally its layout from HTML as in wordpress_breakdance_html_to_draft.Needs: Breakdance, Oxygen 6 | Changes | None |
wordpress_set_breakdance_template_conditionsWhere a Breakdance or Oxygen template applies | Change where a Breakdance or Oxygen 6 template, header, footer or popup applies (beta): conditions as rule groups [[{ruleSlug, operand, value}]] (checked against the site's conditions; values from wordpress_search_condition_values; a single value becomes a list where the condition takes several), its type, priority, disabled (false switches it on; Breakdance keeps templates published, so this switch decides whether one applies), and a popup's triggers [{slug, options}].Needs: Breakdance, Oxygen 6 | Changes | Depends on the change |
wordpress_search_condition_valuesBreakdance or Oxygen conditions and their values | Without condition: the conditions a kind of Breakdance or Oxygen 6 template can use (slug, label, category, operands, how the value is given) and the template types.Needs: Breakdance, Oxygen 6 | Reads | None |
wordpress_create_breakdance_popupNew Breakdance popup | Make a new Breakdance popup switched off (beta; Oxygen 6 has none of its own): title, triggers [{slug: page_load|exit_intent|scroll|…, options}], where it applies (everywhere unless conditions narrow it, as for templates) and its content from HTML.Needs: Breakdance | Changes | None |
wordpress_create_breakdance_global_blockNew Breakdance or Oxygen global block | Make a new Breakdance global block (an Oxygen 6 component) (beta): title and its content from HTML, to place on pages with a Global Block element; it shows nowhere until placed.Needs: Breakdance, Oxygen 6 | Changes | None |
wordpress_check_breakdance_dataCheck Breakdance or Oxygen data | Which posts and templates have Breakdance or Oxygen 6 data that is not valid JSON (the page shows nothing; Breakdance's own MCP has left pages so), and whether each can be repaired or which revisions still have valid data, and which have a stale or missing CSS cache.Needs: Breakdance, Oxygen 6 | Reads | None |
wordpress_repair_breakdance_dataRepair Breakdance or Oxygen data | Make a page's corrupted Breakdance or Oxygen 6 data readable again (beta): the layout still inside it is kept and written again as the builder writes it, or (revision_id from wordpress_check_breakdance_data) a revision's data is put back; then its CSS is rebuilt.Needs: Breakdance, Oxygen 6 | Changes | Depends on the change |
wordpress_regenerate_breakdance_cssRebuild Breakdance or Oxygen CSS | Rebuild the generated CSS of one Breakdance or Oxygen 6 page (post_id) or of the global styles (globals), as the builder does, with each CSS file's size before and after.Needs: Breakdance, Oxygen 6 | Changes | None |
wordpress_get_media_sizesAn image's sizes | The image sizes an attachment really has (the files WordPress made: slug, width, height, address), largest first, and the site's sizes it lacks; for picking an image size in a builder or a theme. | Reads | None |
Forms
5 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_get_formA form | One form: its fields, its messages (confirmation, errors), its email notifications (who receives them, from which address, subject and body; addresses outside the site's domain are masked) and its spam protection.Needs: Contact Form 7, WPForms, Fluent Forms, Gravity Forms, Forminator, Ninja Forms, Breakdance, JetFormBuilder | Reads | None |
wordpress_form_entry_statsForm entry totals | How many entries a form received over the last days (1 to 365, default 30), by day and by status (new, read, spam, trash), and its spam rate.Needs: Contact Form 7, WPForms, Fluent Forms, Gravity Forms, Forminator, Ninja Forms, Breakdance, JetFormBuilder | Reads | None |
wordpress_update_form_messagesChange a form's messages | Change the texts a form shows visitors (the confirmation after sending, error and validation messages), using the keys get_form lists.Needs: Contact Form 7, WPForms, Fluent Forms, Gravity Forms, Forminator, Ninja Forms, JetFormBuilder | Changes | Approval |
wordpress_update_form_notificationChange a form's email notification | Change one of a form's email notifications (ids from get_form).Needs: Contact Form 7, WPForms, Fluent Forms, Gravity Forms, Forminator, Ninja Forms, JetFormBuilder | Changes | Depends on the change |
wordpress_set_form_entry_statusMark a form entry | Mark one form entry as read or unread, spam or not spam, or move it to or from the trash.Needs: Contact Form 7, WPForms, Fluent Forms, Gravity Forms, Forminator, Ninja Forms, JetFormBuilder | Changes | Approval |
Backups
3 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_backup_statusBackups | Which backup plugin the site uses (UpdraftPlus, BackWPup, Duplicator, All-in-One WP Migration, WPvivid; BlogVault and Jetpack are managed by their service), when the last successful backup was and how old it is, whether one is running, recent backups, and the site's backup policy for risky changes. | Reads | None |
wordpress_backup_nowTake a backup | Queue a full backup (database and files) with the site's backup plugin, e.g. before a risky change.Needs: UpdraftPlus, BackWPup, Duplicator, All-in-One WP Migration | Changes | Approval |
wordpress_get_backup_jobA backup's progress | Whether a backup started with backup_now is queued, running, done or failed.Needs: UpdraftPlus, BackWPup, Duplicator, All-in-One WP Migration | Reads | None |
Security
6 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_security_statusSecurity status | What the site's security plugin reports (Wordfence, Solid Security, Really Simple Security, All In One WP Security, Sucuri): firewall on or off and its mode, last and next scan, open issues by severity, active modules, whether it is licensed.Needs: Wordfence, Solid Security, Really Simple Security, All-In-One Security, Sucuri | Reads | None |
wordpress_security_issuesSecurity issues | The open issues from the security plugin's last scan (changed core files, vulnerable plugins, malware signatures and the like), with severity and the file or plugin concerned.Needs: Wordfence, Solid Security, Really Simple Security | Reads | None |
wordpress_login_activity_summaryLogin attacks | Failed logins, lockouts and blocked addresses over the last days, totals only, with the busiest networks shortened to /24.Needs: Wordfence, Solid Security, All-In-One Security | Reads | None |
wordpress_start_security_scanStart a security scan | Start a Wordfence scan in the background (it takes minutes; read security_issues afterwards).Needs: Wordfence | Changes | Approval |
wordpress_block_ipBlock an IP address | Block one IP address in Wordfence for 1 to 720 hours (default 24), e.g. one hammering the login page.Needs: Wordfence | Changes | Approval |
wordpress_unblock_ipUnblock an IP address | Remove a Wordfence block on one IP address.Needs: Wordfence | Changes | Approval |
Translations
14 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_list_languagesSite languages | Which translation plugin the site uses and how it works: WPML and Polylang keep a separate page per language (kind post); TranslatePress translates the strings of each page (kind string); Weglot translates in its own service (read-only here). | Reads | None |
wordpress_get_translationsTranslations of a page | A page's, post's or product's language, its translations (with their status) and the languages it still lacks.Needs: WPML, Polylang | Reads | None |
wordpress_find_missing_translationsMissing translations | Published pages, posts or products in the default language that have no translation, per language, with how many are missing in each.Needs: WPML, Polylang | Reads | None |
wordpress_create_translation_draftCreate a translation draft | Create a DRAFT translation of a page, post or simple product in another language, linked to the original: give the translated title and content, or copy the original's content (copy_content) or its page-builder layout (copy_layout) and then translate the words with wordpress_update_builder_texts.Needs: WPML, Polylang | Changes | None |
wordpress_link_translationsLink translations | Link existing pages, posts or products as translations of each other (each must already be in the language given for it), so the language switcher and hreflang connect them.Needs: WPML, Polylang | Changes | Approval |
wordpress_list_translatable_stringsTranslatable strings | Strings the translation plugin translates outside posts (site title, tagline, widgets, theme and plugin strings it registers), with each language's translation or what is missing.Needs: WPML, Polylang | Reads | None |
wordpress_set_string_translationsTranslate strings | Set up to 50 string translations (by id, or name and context, from wordpress_list_translatable_strings).Needs: WPML, Polylang | Changes | Approval |
wordpress_prime_page_translationsPrepare a page for TranslatePress | TranslatePress only learns a page's strings when someone opens it in another language.Needs: TranslatePress | Changes | None |
wordpress_list_page_stringsA page's strings in TranslatePress | The strings of one page in one language with their translation and status (none, machine, reviewed).Needs: TranslatePress | Reads | None |
wordpress_untranslated_reportUntranslated strings | For TranslatePress: how many of the strings it has seen in a language are untranslated, machine translated or reviewed, site-wide or for one page, with the untranslated ones listed.Needs: TranslatePress | Reads | None |
wordpress_translate_page_stringsTranslate page strings | For TranslatePress: set up to 100 translations by string id (from wordpress_list_page_strings).Needs: TranslatePress | Changes | Approval |
wordpress_product_translation_healthA product's translations | For WPML with WooCommerce Multilingual: each translation of a product, its status, and whether it has as many variations as the original.Needs: WooCommerce, WooCommerce Multilingual | Reads | None |
wordpress_resync_product_translationsResynchronise a product's translations | Have WooCommerce Multilingual copy a product's variations, prices, stock and attributes to all its translations again, e.g. when a translation is missing options.Needs: WooCommerce, WooCommerce Multilingual | Changes | Approval |
wordpress_list_shop_currenciesShop currencies | WooCommerce Multilingual's currency setup: off, per language or independent; the default currency; each currency's rate, rounding and languages; automatic rates if switched on.Needs: WooCommerce, WooCommerce Multilingual | Reads | None |
Events and courses
10 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_list_eventsEvents | Events from The Events Calendar between two dates (YYYY-MM-DD), with venue, organizers, categories, cost and whether they recur.Needs: The Events Calendar | Reads | None |
wordpress_get_eventAn event | One event in full: description, dates and timezone, venue, organizers, recurrence (read only), ticket totals when Event Tickets is active, and preview and edit links.Needs: The Events Calendar | Reads | None |
wordpress_list_event_venuesEvent venues | The venues saved in The Events Calendar, with their address.Needs: The Events Calendar | Reads | None |
wordpress_list_event_organizersEvent organizers | The organizers saved in The Events Calendar, with their website (emails outside the site's domain masked).Needs: The Events Calendar | Reads | None |
wordpress_create_eventCreate an event draft | Create an event in The Events Calendar, always as a DRAFT: title, description, start and end ("YYYY-MM-DD HH:MM" in the event's timezone), all day or not, a saved venue (venue_id) or a new one, organizers, categories, cost and a link.Needs: The Events Calendar | Changes | None |
wordpress_update_eventChange an event | Change an event's fields (as in wordpress_create_event; only those given).Needs: The Events Calendar | Changes | Approval once live |
wordpress_publish_eventPublish an event | Publish an event draft so it shows in the calendar.Needs: The Events Calendar | Changes | Approval |
wordpress_trash_eventMove an event to the trash | Move an event to the trash (not deleted).Needs: The Events Calendar | Changes | Approval |
wordpress_event_ticket_summaryEvent tickets | An event's tickets from Event Tickets: price, capacity, sold and available, and attendees and check-ins as totals.Needs: Event Tickets | Reads | None |
wordpress_list_coursesCourses | Courses from the site's learning plugin (Tutor LMS, LearnPress, Sensei, LearnDash) with students enrolled, completions where the plugin counts them, lessons and price.Needs: Tutor LMS, LearnPress, Sensei LMS, LearnDash | Reads | None |
WooCommerce extensions
9 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_woo_list_subscriptionsSubscriptions | WooCommerce Subscriptions: each subscription's status, products, total, billing period, next payment and start date; the customer by first name and initial only.Needs: WooCommerce, WooCommerce Subscriptions | Reads | None |
wordpress_woo_subscription_summarySubscriptions summary | Subscriptions by status, monthly recurring revenue (MRR), renewals due in the next 30 days, failed renewals and churn in the last 30.Needs: WooCommerce, WooCommerce Subscriptions | Reads | None |
wordpress_woo_list_bookingsBookings | WooCommerce Bookings, day by day (up to 90 days ahead): bookings and persons per product and resource, with capacity where set.Needs: WooCommerce, WooCommerce Bookings | Reads | None |
wordpress_woo_get_bundleA product bundle | A WooCommerce Product Bundles bundle (beta) and its items: each product with its quantities (min, max, default), whether it is optional, priced or shipped on its own, its discount and title, and the bundle's price.Needs: WooCommerce, WooCommerce Product Bundles | Reads | None |
wordpress_woo_update_bundle_itemsChange a bundle's items | Set a product bundle's items (WooCommerce Product Bundles, beta) as the whole new list in order: items left out are removed, an item with its bundled_item_id from wordpress_woo_get_bundle is changed (fields not given stay), others are added.Needs: WooCommerce, WooCommerce Product Bundles | Changes | Approval |
wordpress_woo_get_wholesale_pricesWholesale prices | A product's wholesale prices (beta) through the shop's wholesale plugin: Wholesale Prices by Rymera (a price per wholesale role) or B2BKing (a regular and sale price per customer group), with the roles or groups there are; for a variable product, each variation's.Needs: WooCommerce, Wholesale Prices (Rymera), B2BKing | Reads | None |
wordpress_woo_set_wholesale_pricesSet wholesale prices | Set a simple product's or a variation's wholesale prices (beta), written as the wholesale plugin's own product screen writes them: prices per role (Wholesale Prices) or per group id (B2BKing, with sale_prices below the group's regular price); "" removes one.Needs: WooCommerce, Wholesale Prices (Rymera), B2BKing | Changes | Approval |
wordpress_woo_list_product_addonsProduct add-ons | WooCommerce Product Add-Ons (beta): a product's own add-ons (with product_id) and whether the global groups apply to it, and the global add-on groups with the categories they apply to; each add-on with its id, type, options and prices.Needs: WooCommerce, WooCommerce Product Add-Ons | Reads | None |
wordpress_woo_update_product_addonsChange product add-ons | Set the add-ons (WooCommerce Product Add-Ons, beta) of a product (product_id) or of a global group (group_id, which changes every product it applies to), as the whole new list in order; keep each add-on's id from wordpress_woo_list_product_addons, leave it out for a new one; [] removes them all. exclude_global (products only) stops the global groups applying.Needs: WooCommerce, WooCommerce Product Add-Ons | Changes | Approval |
Abandoned carts and email marketing
1 tool
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_create_mailpoet_listCreate a MailPoet list | Create an empty MailPoet list (name up to 90 characters, optional description).Needs: MailPoet | Changes | None |
Greek invoicing, couriers and marketplaces
3 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_gr_cod_rulesCash on delivery fees and limits | Cash on delivery (αντικαταβολή) as Smart COD or ATH COD keeps it (beta): the fee (fixed or a percentage, taxable or not), Smart COD's local pickup fee and where it is offered or not (postcodes, zones, countries, states, cities), ATH COD's fee rules and restrictions with their conditions (zones, shipping methods, countries, postcodes such as 84* or 85100...85199, order total, weight, quantity) and its maximum amount and weight.Needs: WooCommerce, Smart COD, ATH COD | Reads | None |
wordpress_gr_set_cod_rulesChange cash on delivery fees and limits | Change cash on delivery in Smart COD or ATH COD (beta), in the shape wordpress_gr_cod_rules shows.Needs: WooCommerce, Smart COD, ATH COD | Changes | Approval |
wordpress_gr_erp_sync_statusBusiness Cloud ERP sync status | How Business Cloud ERP Integration keeps the shop and the ERP in step (beta): connected or not, stock and price syncs (on, interval, last and next run, last full sync with products matched), and recent orders sent, failed (with the ERP's error, emails and long numbers masked), pending or skipped.Needs: WooCommerce, Business Cloud ERP | Reads | None |
Code snippets and custom fields
9 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_list_snippetsList code snippets | Code snippets in WPCode or Code Snippets: type, where they run, whether they are on, and which SAR wrote. | Reads | None |
wordpress_get_snippetGet a code snippet | One code snippet, with its code. | Reads | None |
wordpress_create_snippetCreate a code snippet | Add a PHP, HTML, CSS or JavaScript snippet through WPCode or Code Snippets. | Changes | None |
wordpress_update_snippetEdit a code snippet | Change a snippet's title, code or location. | Changes | Depends on the change |
wordpress_activate_snippetSwitch a code snippet on | Switch a CSS, JS or HTML snippet on so it runs on the site. | Changes | Approval and password |
wordpress_deactivate_snippetSwitch a code snippet off | Switch a snippet off. | Changes | None |
wordpress_trash_snippetMove a code snippet to the trash | Move a snippet to the trash, where it can be restored. | Changes | Approval |
wordpress_get_acf_fieldsAdvanced Custom Fields of a post | The post's Advanced Custom Fields: name, label, type, value and choices, and which can be set here. | Reads | None |
wordpress_set_acf_fieldSet an Advanced Custom Field | Set one simple Advanced Custom Fields field (text, number, select, true/false, image id, url, email, date, colour). | Changes | Approval once live |
Crocoblock (JetEngine and Jet plugins)
14 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_jetengine_overviewJetEngine overview | What this site's JetEngine defines (beta): its active modules, post types and taxonomies with their meta fields, Custom Content Types (with item counts), relations (parent and child objects such as posts::product or cct::agents, one_to_one / one_to_many / many_to_many), Query Builder queries, options pages (storage default or separate) and meta boxes, each field with its type, label and options; and whether JetEngine's own MCP server is on (an AI connection outside SAR's approvals and undo: mention it to the user).Needs: JetEngine | Reads | None |
wordpress_list_cct_itemsJetEngine CCT items | The items of one JetEngine Custom Content Type (beta), newest first, masked on the site like form entries: names as first name and initial, emails and phones shortened, addresses left out, free text with emails and phones hidden; option values, switches, numbers, dates and media ids as they are.Needs: JetEngine | Reads | None |
wordpress_get_cct_itemA JetEngine CCT item | One Custom Content Type item, masked as in wordpress_list_cct_items, with the type's fields described (type, options, what each takes) and its wp-admin link.Needs: JetEngine | Reads | None |
wordpress_create_cct_itemNew JetEngine CCT item | Add an item to a JetEngine Custom Content Type (beta) through JetEngine's own item handler, which runs its own checks and hooks: values by field name, each checked by its field's type (as wordpress_get_cct_item or wordpress_jetengine_overview describe them).Needs: JetEngine | Changes | Depends on the change |
wordpress_update_cct_itemChange a JetEngine CCT item | Change fields of one Custom Content Type item, or its status (publish or draft), through JetEngine's own item handler (beta).Needs: JetEngine | Changes | Approval |
wordpress_get_related_itemsJetEngine related items | The items one object is linked to through a JetEngine relation (beta): side children (object_id is the parent, the default) or parents (object_id is the child), with post and term titles; a user is shown by id only.Needs: JetEngine | Reads | None |
wordpress_set_relation_linksChange JetEngine relation links | Link or unlink items through a JetEngine relation (beta), with JetEngine's own relation calls: mode replace (the object's links become exactly ids; [] removes all), add or remove, on side children (object_id is the parent) or parents (object_id is the child).Needs: JetEngine | Changes | Approval |
wordpress_get_jetengine_optionsA JetEngine options page | One JetEngine options page (beta): its fields (type, label, options, what each takes), how it stores them (default: one option for the page; separate: an option per field) and their values, secrets hidden and addresses masked.Needs: JetEngine | Reads | None |
wordpress_update_jetengine_optionsChange a JetEngine options page | Change values of a JetEngine options page (beta) through the page's own save, in either storage mode: each value checked by its field's type; fields left out keep theirs; fields named like secrets (keys, tokens, passwords) are never changed.Needs: JetEngine | Changes | Approval |
wordpress_list_jet_bookingsJetBooking bookings | JetBooking's bookings (beta) from a day (default today) for 1 to 90 days (default 14): each with its booked post (resource) and unit, check-in, check-out and nights, by day and by resource.Needs: JetBooking | Reads | None |
wordpress_list_jet_appointmentsJetAppointment appointments | JetAppointment's appointments (beta) from a day (default today) for 1 to 90 days: each with its service, provider, date and time, by day and by provider.Needs: JetAppointment | Reads | None |
wordpress_list_smart_filtersJetSmartFilters filters | JetSmartFilters' filters (beta): each one's type, label, data source, taxonomy and query variable, and its indexer (on or off, automatic or not, rows indexed).Needs: JetSmartFilters | Reads | None |
wordpress_reindex_smart_filtersRebuild the JetSmartFilters index | Rebuild JetSmartFilters' index of counts with its own indexer (beta), as its Index button does, when its indexer is switched on; after changing many products or terms.Needs: JetSmartFilters | Changes | None |
wordpress_list_jet_templatesJetPopup, JetWooBuilder and JetThemeCore templates | Templates of JetPopup (popups and their display conditions), JetWooBuilder (single product, shop, archive, cart, checkout, thank-you and account templates, with where each is used) and JetThemeCore (headers, footers, single and archive templates and page templates, with their conditions) (beta).Needs: JetPopup, JetWooBuilder, JetThemeCore | Reads | None |
Content and site
48 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_list_postsList posts or pages | List posts or pages, newest change first, optionally filtered by status or a search term. | Reads | None |
wordpress_get_postGet a post or page | One post or page in full, including its content. | Reads | None |
wordpress_list_mediaList media | Images in the media library, with their alt text and ids to use as a featured image. missing_alt lists only images without alt text. | Reads | None |
wordpress_list_termsList categories or tags | Categories or tags, with their ids. | Reads | None |
wordpress_list_changesRecent changes | Changes SAR Intelligence made on this site, newest first, with ids that wordpress_undo_change accepts. | Reads | None |
wordpress_create_draftCreate a draft | Create a new post or page as a DRAFT. | Changes | None |
wordpress_update_postEdit a post or page | Change the title, content, excerpt, slug, categories, tags or featured image of a post or page. | Changes | Approval once live |
wordpress_publish_postPublish a post or page | Publish a draft now, or schedule it for a date and time. | Changes | Approval |
wordpress_trash_postMove a post or page to the trash | Move a post or page to the trash, where it can be restored. | Changes | Approval |
wordpress_add_media_from_urlAdd an image from a web address | Add a JPEG, PNG, GIF or WebP image to the media library from a public web address. | Changes | None |
wordpress_set_image_alt_textSet image alt text | Set the alternative text (what screen readers say and search engines read) of up to 50 images in one change. | Changes | Approval |
wordpress_create_termCreate a category or tag | Create a category or tag. | Changes | None |
wordpress_undo_changeUndo a change | Undo a change SAR Intelligence made, by its id from wordpress_list_changes, within 30 days. | Changes | Approval |
wordpress_seo_overviewSearch snippets | Search titles and meta descriptions of published pages or posts as the SEO plugin (Yoast SEO, Rank Math or SEOPress) stores them, each with what is worth fixing (missing, too long, too short; from plugin 0.10.0 also a Greek word in capitals that keeps its accent, Greek and Latin letters mixed in one word, and the same search title on several pages). only=problems lists just those. | Reads | None |
wordpress_get_seoGet a search snippet | The search title, meta description, focus keyword and noindex setting of one post or page. | Reads | None |
wordpress_update_seoEdit a search snippet | Change the search title, meta description or focus keyword of a post or page in its SEO plugin. | Changes | Approval once live |
wordpress_list_commentsList comments | Comments, newest first: those waiting for moderation by default. | Reads | None |
wordpress_delete_commentsDelete comments for good | Permanently delete up to 100 comments that are already in spam or the trash, each listed for the approver. | Changes | Approval and password |
wordpress_empty_spamEmpty the spam folder | Permanently delete spam comments older than some days (default 7, so a real comment caught by mistake has time to be noticed). | Changes | Approval |
wordpress_moderate_commentModerate a comment | Approve a comment, hold it back, mark it as spam or move it to the trash. | Changes | Approval |
wordpress_reply_to_commentReply to a comment | Post a public reply to a comment, as the WordPress user SAR is connected with. | Changes | Approval |
wordpress_list_menusList menus | Navigation menus, where each is shown and what links it holds (classic themes; block themes keep navigation in the site editor). | Reads | None |
wordpress_add_menu_itemAdd a menu link | Add a link to a menu: to a published post or page (post_id) or to a web address (url, with a title). | Changes | Approval |
wordpress_get_settingsSite settings | The site title, tagline, timezone, formats, permalink structure, whether search engines may index it, what the homepage shows and comment defaults. | Reads | None |
wordpress_update_settingsChange site settings | Change the site title, tagline, what the homepage shows, posts per page or whether new posts take comments. | Changes | Approval |
wordpress_show_page_to_userShow the user a page | Move the user's open wp-admin tab to a page of this site, e.g. the editor of a post SAR just changed (/wp-admin/post.php?post=12&action=edit) or a page (/about-us/). | Changes | None |
wordpress_replace_in_postReplace a passage | Replace one passage of a post or page's title, excerpt, content or a custom field (field: meta:<name>), only where it occurs exactly once; otherwise nothing changes and the number of matches is said. | Changes | Approval once live |
wordpress_get_post_metaCustom fields of a post | Every custom field (post meta) of a post, page or product, with secrets hidden, and which SAR may change. | Reads | None |
wordpress_set_post_metaSet a custom field | Set or delete one custom field of a post, page or product. | Changes | Approval once live |
wordpress_create_menuCreate a menu | Create an empty menu. | Changes | None |
wordpress_set_menu_locationPlace a menu | Show a menu in one of the theme's menu locations (from wordpress_list_menus), or empty a location with menu_id 0. | Changes | Approval |
wordpress_update_menu_itemChange a menu link | Change a menu link's text, address (links to addresses only), parent or position. | Changes | Approval |
wordpress_delete_menu_itemRemove a menu link | Remove a menu link; its sub-links move up a level. | Changes | Approval |
wordpress_update_termChange a category or tag | Rename a category or tag, or change its slug, description or parent. | Changes | Approval |
wordpress_delete_termDelete a category or tag | Delete a category or tag (never the default category). | Changes | Approval |
wordpress_list_widgetsWidget areas | The theme's widget areas (sidebars, footers) and what is in each. | Reads | None |
wordpress_add_svgAdd an SVG image | Add an SVG image (a logo, an icon, a simple illustration) to the media library from its markup. | Changes | None |
wordpress_add_unsplash_imageAdd a free photo | Add a photo found with sar_search_images to the media library, with its description as alternative text and the photographer credited in its caption. | Changes | None |
wordpress_get_preview_linkPreview link of a draft | A link that shows a draft, pending or scheduled post or page to anyone, without logging in, for an hour: to give the user, or to check with sar_screenshot_page or sar_visual_check before publishing. | Reads | None |
wordpress_consent_checkCheck cookie consent | What a first-time visitor meets: the site fetches its own home page, and a product page in a shop, with no cookies, and reports the consent plugin, the trackers that run before anyone agrees (Meta, TikTok, Skroutz Analytics, BestPrice, Clarity, Hotjar) and those held back, and whether Google's tags start with consent denied (Consent Mode v2). | Reads | None |
wordpress_replace_in_post_metaReplace inside a custom field | Replace one passage inside a custom field that holds JSON or serialized data (a builder's settings, a plugin's structured field), where it occurs exactly once (or at a path such as hero.title), keeping the field's format byte for byte; anything ambiguous is refused with where it occurs. | Changes | Approval once live |
wordpress_set_post_termsSet a post's terms in any taxonomy | Replace, add or remove the terms of any public taxonomy on a post, page or custom post type (e.g. a portfolio category, a product's brand or a custom taxonomy), using existing terms only (names, slugs or ids). | Changes | Approval once live |
wordpress_create_commentWrite a comment | Write a comment, as the site, on a published post that is open for comments, optionally as a reply to an approved comment. | Changes | Approval |
wordpress_list_redirectsRedirects | The site's redirects from one address to another, from where the site keeps them (the Redirection plugin, Rank Math's redirections, or SAR's own when neither is on), which the answer names; with their status and hits. | Reads | None |
wordpress_create_redirectAdd a redirect | Redirect an old address on this site (source, a path such as /old-page/) to a full address on this site (target) or to a post (post_id), with 301 (moved for good, the default) or 302 (for now), or answer 410 (gone) for a page removed for good. | Changes | Approval |
wordpress_delete_redirectRemove a redirect | Remove the redirect from an address (source, a path from wordpress_list_redirects); visitors then get whatever WordPress has there. | Changes | Approval |
wordpress_check_structured_dataCheck structured data | Read a published page as a visitor gets it (id of a post, page or product, or url on this site; the home page by default) and check every JSON-LD block: required and recommended properties of Product, Offer, AggregateRating, Article and BlogPosting, FAQPage, LocalBusiness, Organization, BreadcrumbList and Event, invalid JSON, and the same type printed by two plugins. | Reads | None |
wordpress_update_page_schemaChange a page's schema type | Change how a post or page describes itself in its SEO plugin's structured data.Needs: Rank Math, Yoast SEO | Changes | Approval |
Site Editor and themes
28 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_update_builder_textsChange texts on a page-builder page | Change up to 50 texts on a page built with Elementor, Bricks, Beaver Builder, Breakdance, Divi 4 or 5, Kadence Blocks, GenerateBlocks, WPBakery, Avada, Enfold, Flatsome, Oxygen 6, BeTheme or SeedProd, or on a theme element (Breakdance and Divi 4 need plugin 0.7.0; Divi 5, Kadence, GenerateBlocks and theme elements 0.9.0; WPBakery, Avada, Enfold and Flatsome 0.14.0, beta; Oxygen 6, BeTheme and SeedProd 0.15.0, beta), by element (widget) and field from wordpress_get_builder_texts. | Changes | Approval once live |
wordpress_get_draft_themeDraft theme | The live theme, and the draft theme SAR is building next to it (if any) with its files and its parent theme's files for reference. | Reads | None |
wordpress_create_draft_themeStart a draft theme | Start a draft theme to redesign the site without visitors seeing it: a child of the live theme, with the Site Editor's saved templates and styles carried over. | Changes | None |
wordpress_read_theme_fileRead a theme file | Read a file of the draft theme, or of its parent theme (from: parent) to see what to override, e.g. theme.json, templates/index.html, parts/header.html. | Reads | None |
wordpress_write_theme_fileWrite a theme file | Create or replace a file in the draft theme: theme.json (version 3), block templates (templates/*.html), parts (parts/*.html), patterns, style.css (keep its header), other CSS, or SVG images. | Changes | None |
wordpress_delete_theme_fileDelete a theme file | Delete a file from the draft theme (so the parent theme's version is used again). style.css cannot be deleted. | Changes | None |
wordpress_search_theme_filesSearch the theme | Find lines containing a text across the draft theme's files (or its parent's, from: parent), with the line before and after, at most 200. | Reads | None |
wordpress_outline_theme_fileOutline a theme file | The landmarks of one draft (or parent) theme file with line numbers: the blocks, template parts and headings of a template, the sections of theme.json, the rules and media queries of a stylesheet. | Reads | None |
wordpress_edit_theme_fileEdit a theme file | Replace one passage of a draft theme file that occurs exactly once, e.g. a color in theme.json or a block in a template, without rewriting the whole file. | Changes | None |
wordpress_get_theme_previewPreview the draft theme | A link that shows the site with the draft theme for one hour, to anyone who has it; not cached or indexed. | Reads | None |
wordpress_check_draft_themeCheck the draft theme before publishing | Check every PHP file SAR wrote in the draft theme (problems that block publishing, warnings) and try the draft on the site's main kinds of page (home, a page, a post, the shop, a product, search, 404), and say whether PHP in draft themes is allowed and where the draft is published (SAR, or wp-admin on a WordPress.org install). | Reads | None |
wordpress_publish_draft_themePublish the draft theme | Make the draft the live theme. | Changes | Approval and password |
wordpress_delete_draft_themeDelete the draft theme | Delete the unpublished draft theme and its files. | Changes | Approval |
wordpress_get_theme_settingsTheme settings | The active theme's Customizer settings (theme mods), with which SAR may change. | Reads | None |
wordpress_set_theme_settingChange a theme setting | Set or remove one Customizer setting of the active theme. | Changes | Approval |
wordpress_list_theme_elementsTheme elements | The parts of the theme that are not pages: Divi Theme Builder templates (with their header, body and footer layouts), GeneratePress Elements and Kadence Elements, each with where it shows (display rules), its hook and its builder. | Reads | None |
wordpress_list_site_templatesSite Editor templates | A block theme's templates and template parts (header, footer…): where each comes from (the theme's file or the Site Editor), whether SAR has a draft of it, and whether publishing it needs the user's approval or their password. | Reads | None |
wordpress_get_site_templateA Site Editor template | One template or template part's block markup, with SAR's draft of it and its preview link if there is one. | Reads | None |
wordpress_save_site_template_draftSave a Site Editor template draft | Save new block markup for a template or template part as a DRAFT, with a signed preview link that shows the whole site with it; nothing visitors see changes. | Changes | None |
wordpress_publish_site_template_draftPublish a Site Editor template draft | Put a template draft live. | Changes | Depends on the change |
wordpress_delete_site_template_draftDelete a Site Editor template draft | Throw away SAR's draft of a template; the live one is untouched. | Changes | None |
wordpress_get_global_stylesGlobal styles | A block theme's site-wide styles: colours, fonts, sizes, spacing and layout widths the Site Editor sets, the theme's defaults, and SAR's draft with its preview link if there is one. | Reads | None |
wordpress_save_global_styles_draftSave a global styles draft | Save changes to the site-wide styles as a DRAFT (theme.json shape: settings such as the colour palette and font sizes, styles such as text and background colours), merged into the current ones (null removes a key) or replacing them, with a signed preview link. | Changes | None |
wordpress_publish_global_stylesPublish the global styles draft | Put the global styles draft live: it changes every page, so it needs the user's password. | Changes | Approval and password |
wordpress_delete_global_styles_draftDelete the global styles draft | Throw away SAR's global styles draft; the live styles are untouched. | Changes | None |
wordpress_list_patternsPatterns | The site's patterns (reusable blocks): synced ones change everywhere they are used, and how many published pages use each. | Reads | None |
wordpress_get_patternA pattern | One pattern's block markup, whether it is synced, and the pages that use it. | Reads | None |
wordpress_update_patternChange a pattern | Change a pattern's block markup or title. | Changes | Depends on the change |
Administration and maintenance
60 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_get_site_statusSite status | What the connected WordPress site is (name, address, versions, whether WooCommerce is active) and what SAR Intelligence may do there, e.g. edit drafts but not publish. | Reads | None |
wordpress_site_healthSite health | What needs attention on the site: problems hurting visitors or search now (search engines blocked, no HTTPS, errors shown) and maintenance worth doing (updates, inactive plugins, old PHP), each with what to do. | Reads | None |
wordpress_list_pluginsList plugins | Installed plugins: name, version, whether active, and any update WordPress knows of. | Reads | None |
wordpress_list_themesList themes | Installed themes: which is active, versions, block theme or not, and any update. | Reads | None |
wordpress_clear_cacheClear caches | Clear the site's caches so recent changes show at once: WordPress's object cache, cache plugins (W3 Total Cache, WP Super Cache, WP Rocket, SiteGround, LiteSpeed, WP Fastest Cache, Autoptimize, Breeze, Nginx Helper, Hummingbird, Cache Enabler), Elementor's CSS, the Rank Math sitemap, and WP Engine's and Kinsta's caches. | Changes | None |
wordpress_list_scheduled_tasksScheduled tasks | The tasks WordPress has scheduled (backups, emails, cleanups), when each runs next and which are overdue. | Reads | None |
wordpress_activate_pluginTurn a plugin on | Turn on an installed plugin. | Changes | Approval and password |
wordpress_deactivate_pluginTurn a plugin off | Turn off an active plugin. | Changes | Approval and password |
wordpress_update_pluginUpdate a plugin | Install the update WordPress offers for a plugin (see wordpress_list_updates). | Changes | Approval and password |
wordpress_switch_themeSwitch the theme | Switch the site to another installed theme. | Changes | Approval and password |
wordpress_list_db_tablesDatabase tables | The site's database tables with row counts and sizes, for writing a wordpress_query_database query. | Reads | None |
wordpress_query_databaseQuery the database | Run one read-only SQL query (SELECT, WITH, SHOW, DESCRIBE or EXPLAIN) on the site's database, for questions no other tool answers. | Reads | None |
wordpress_search_replaceSearch and replace | Replace a piece of literal text everywhere in the site's database (posts, meta, options, other plugin tables), e.g. an old address or http:// links. | Changes | Approval and password |
wordpress_search_replace_statusSearch and replace progress | How far a search and replace has got: still running in the background, finished, or stopped, and how many values it changed. | Reads | None |
wordpress_set_permalink_structureChange how addresses look | Change the permalink structure (e.g. /%postname%/, /%year%/%monthnum%/%postname%/, or empty for plain ?p=123 links) and the category and tag bases. | Changes | Approval and password |
wordpress_move_site_addressMove the site to a new address | Change the site's address (e.g. http:// to https://, or a new domain already pointing at this server). | Changes | Approval and password |
wordpress_list_usersList users | The site's users: name, login, roles and when they joined. | Reads | None |
wordpress_list_rolesList roles | The roles the connected user may give, which of them can manage the whole site, and how many users have each. | Reads | None |
wordpress_get_user_metaA user's fields | A user's own fields (user meta), with secrets hidden and which of them SAR may change. | Reads | None |
wordpress_update_user_metaSet a user's field | Set or delete one of a user's fields (user meta), e.g. a billing phone or a plugin's profile field. | Changes | Approval |
wordpress_list_roles_and_capabilitiesRoles and capabilities | Every role with its capabilities, how many users have it, which roles can manage the whole site, and the default role. | Reads | None |
wordpress_change_role_capabilitiesChange what a role may do | Create a role (with capabilities), delete an unused one, or add or remove capabilities. | Changes | Approval and password |
wordpress_create_userInvite a user | Add a user with a role. | Changes | Depends on the change |
wordpress_change_user_roleChange a user's role | Give a user another role. | Changes | Depends on the change |
wordpress_change_user_emailChange a user's email | Change a user's email address; WordPress tells the old address. | Changes | Approval and password |
wordpress_send_password_resetSend a password reset | Send a user WordPress's own password reset email. | Changes | Approval and password |
wordpress_delete_userDelete a user | Delete a user, giving their posts and pages to another user. | Changes | Approval and password |
wordpress_read_site_logRead the error log | The end of the site's PHP error log (the last 64 KB, newest at the end), with secrets and email addresses hidden: what broke, in which file and plugin. | Reads | None |
wordpress_read_code_fileRead plugin or theme code | Read a plugin, theme or must-use plugin file (up to 64 KB) to understand an error, or list a folder: a path under wp-content such as plugins/woocommerce/ or themes/astra/functions.php. | Reads | None |
wordpress_get_optionsSite options | Site options by name (comma-separated) or by prefix, with secrets hidden and whether SAR may change each. | Reads | None |
wordpress_set_optionChange a site option | Change one site option, such as a plugin's setting. | Changes | Approval |
wordpress_list_transientsCached values | Values plugins cache in the database (transients): name, size and expiry, never their contents. | Reads | None |
wordpress_delete_transientsDelete cached values | Delete cached values by name, by prefix (4+ characters) or every expired one. | Changes | None |
wordpress_run_scheduled_taskRun a scheduled task now | Run one scheduled task now, by its hook, timestamp and key from wordpress_list_scheduled_tasks. | Changes | Approval |
wordpress_delete_scheduled_taskDelete a scheduled task | Remove one scheduled task, by its hook, timestamp and key. | Changes | Depends on the change |
wordpress_list_updatesAvailable updates | Every update WordPress knows of: WordPress itself, plugins and themes (from and to versions), whether a database update is pending, automatic updates, and whether file changes are allowed. force_check asks WordPress.org again (at most hourly). | Reads | None |
wordpress_search_pluginsSearch WordPress.org plugins | Find plugins on WordPress.org for a need (e.g. "contact form", "redirects"): each one's slug, active installs, rating, last update, tested WordPress version and whether this site has it. | Reads | None |
wordpress_install_pluginInstall a plugin | Install a plugin from WordPress.org by its slug (e.g. contact-form-7), optionally turning it on. | Changes | Approval and password |
wordpress_install_themeInstall a theme | Install a theme from WordPress.org by its slug, without switching to it. | Changes | Approval and password |
wordpress_update_themeUpdate a theme | Install the update WordPress offers for a theme, for the version given. | Changes | Approval and password |
wordpress_delete_pluginDelete a plugin | Delete an inactive plugin's files; its own uninstall routine may delete its data. | Changes | Approval and password |
wordpress_delete_themeDelete a theme | Delete a theme that is not in use. | Changes | Approval and password |
wordpress_update_wordpressUpdate WordPress | Update WordPress itself to the version given (from wordpress_list_updates). | Changes | Approval and password |
wordpress_update_statusWordPress update progress | How the last WordPress update went: queued, running, done or failed, the version now, and whether the site still loads. | Reads | None |
wordpress_update_databaseRun the database update | Run WordPress's database step after an update, when wordpress_list_updates says one is pending. | Changes | Depends on the change |
wordpress_verify_checksumsCheck files against WordPress.org | Compare WordPress's own files, or one WordPress.org plugin's (plugin), with WordPress.org's checksums, and name any changed or missing file: a sign of tampering or a broken update. | Reads | None |
wordpress_set_auto_updatesAutomatic updates on or off | Turn automatic updates on or off for a plugin, a theme, or major WordPress versions. | Changes | Approval |
wordpress_discover_abilitiesDiscover abilities | What the site's plugins can do through the WordPress Abilities API (WordPress 6.9 and newer): each ability's name, what it does, its approval tier, and whether SAR blocks it. | Reads | None |
wordpress_get_ability_infoAbility details | One ability's description and the input it takes (input_schema), before running it. | Reads | None |
wordpress_run_readonly_abilityRun a read-only ability | Run an ability its plugin marks read-only, to read something only that plugin knows. | Reads | None |
wordpress_run_abilityRun an ability | Run an ability that changes something on the site. | Changes | Depends on the change |
wordpress_rest_getRead from the site's REST API | Read anything the site's REST API offers that no other tool covers, e.g. WooCommerce shipping zones (/wc/v3/shipping/zones), tax rates (/wc/v3/taxes), reports (/wc-analytics/reports/…), or an SEO plugin's data. | Reads | None |
wordpress_replace_in_optionReplace inside a site option | Replace one passage inside a site option that holds JSON, serialized data or text (a theme's or builder's settings such as et_divi, generate_settings or kadence_global_palette), where it occurs exactly once or at a path, keeping its format. | Changes | Approval |
wordpress_patch_optionChange one value inside a site option | Set, add or remove one value at a path inside a structured site option (like wp option patch), keeping the other values, the option's format and the value's type. | Changes | Approval |
wordpress_clone_roleCopy a role | Make a new role with the same capabilities as an existing one (e.g. a "Shop editor" from Shop manager), to adjust afterwards with wordpress_change_role_capabilities. | Changes | Approval and password |
wordpress_flush_rewrite_rulesRefresh the address rules | Rebuild WordPress's address (permalink) rules, the usual fix when new pages or products answer "not found". | Changes | None |
wordpress_get_maintenance_modeIs the site in maintenance mode? | Whether visitors are kept out: WordPress's own .maintenance file during an update (and whether it is stuck), and coming-soon or maintenance plugins (SeedProd, LightStart, Maintenance, Under Construction, CMP and others, Elementor's and WooCommerce's coming-soon modes) that are switched on. | Reads | None |
wordpress_set_white_labelWhite label on or off | For agencies: show the agency's name (label, up to 60 characters) instead of SAR Intelligence in the site's wp-admin. | Changes | Depends on the change |
wordpress_get_backup_policyBackup policy for risky changes | Whether risky (password-confirmed) changes only warn about the last backup's age (warn) or are refused without a successful backup in the last N hours (require). | Reads | None |
wordpress_set_backup_policySet the backup policy | Set whether risky changes need a fresh backup first: mode warn or require, and hours (1 to 168) for how fresh. | Changes | Depends on the change |
Shop: catalogue
23 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_woo_list_productsList products | Products with prices and stock, optionally searched by name or SKU.Needs: WooCommerce | Reads | None |
wordpress_woo_get_productGet a product | One product in full.Needs: WooCommerce | Reads | None |
wordpress_woo_low_stockLow stock | Products at or below a stock level (the shop's low-stock setting by default).Needs: WooCommerce | Reads | None |
wordpress_woo_update_productChange a product | Change a product's name, description, regular or sale price, or stock; with plugin 0.13.0 also its SKU, weight and dimensions, shipping and tax class, whether it is featured, and where it shows (catalogue visibility); with plugin 0.23.0 also a scheduled sale (date_on_sale_from and date_on_sale_to, in the site's time; set the sale_price too), upsells and cross-sells (product ids), backorders, the low-stock amount and "sold individually".Needs: WooCommerce | Changes | Approval |
wordpress_woo_create_productCreate a product | Create a new simple product as a DRAFT: nobody can buy it until wordpress_woo_publish_product, which needs the user's approval.Needs: WooCommerce | Changes | None |
wordpress_woo_publish_productPublish a product | Put a draft product on sale in the shop.Needs: WooCommerce | Changes | Approval |
wordpress_woo_list_categoriesProduct categories | Product categories with their ids and how many products each has.Needs: WooCommerce | Reads | None |
wordpress_woo_list_variationsProduct variations | The variations of a variable product (sizes, colours): each one's id, attributes, price, stock and whether it is offered.Needs: WooCommerce | Reads | None |
wordpress_woo_update_variationChange a variation | Change one variation's price, sale price, stock, or whether it is offered (enabled); with plugin 0.23.0 also a scheduled sale and backorders.Needs: WooCommerce | Changes | Approval |
wordpress_woo_bulk_update_productsChange many products at once | Change prices or stock for up to 50 products or variations in one change the user approves once, e.g. a sale across a category; with plugin 0.23.0 also scheduled sale dates and backorders.Needs: WooCommerce | Changes | Approval |
wordpress_woo_list_attributesProduct attributes | The shop's global product attributes (size, colour…) with their values, used for filters and variations.Needs: WooCommerce | Reads | None |
wordpress_woo_create_attributeCreate a product attribute | Create a global product attribute (e.g. Μέγεθος) with its values.Needs: WooCommerce | Changes | None |
wordpress_woo_add_attribute_termsAdd values to an attribute | Add values to a global product attribute; existing ones are left as they are.Needs: WooCommerce | Changes | None |
wordpress_woo_create_variable_productCreate a variable product | Create a product with variations (sizes, colours) as a DRAFT, with its attributes.Needs: WooCommerce | Changes | None |
wordpress_woo_set_product_attributesSet a product's attributes | Replace a product's attributes and their values.Needs: WooCommerce | Changes | Approval once live |
wordpress_woo_generate_variationsMake a product's variations | Make the missing variations of a variable product from its attributes (every combination, at most 100 at a time), with a price and optionally stock.Needs: WooCommerce | Changes | Approval once live |
wordpress_woo_set_product_imagesSet a product's images | Set a product's main image and gallery from media ids (wordpress_list_media, wordpress_add_media_from_url).Needs: WooCommerce | Changes | Approval once live |
wordpress_woo_set_product_termsSet a product's categories, tags or brands | Replace a product's categories, tags or brands (each list given replaces that one; leave a list out to keep it).Needs: WooCommerce | Changes | Approval once live |
wordpress_woo_duplicate_productDuplicate a product | Copy a product, with its variations, as a new DRAFT, to make a similar one quickly.Needs: WooCommerce | Changes | None |
wordpress_woo_list_reviewsProduct reviews | Product reviews with their rating, product and status (approved, waiting, spam), newest first; reviewers shown by first name and initial.Needs: WooCommerce | Reads | None |
wordpress_woo_moderate_reviewModerate a review | Approve, hold, mark as spam or trash a product review.Needs: WooCommerce | Changes | Approval |
wordpress_woo_reply_to_reviewReply to a review | Reply to a product review as the shop; the reply is public.Needs: WooCommerce | Changes | Approval |
wordpress_woo_set_grouped_childrenSet a grouped product's products | Set the products a native grouped product lists on its page (each bought on its own), as the whole new list in order; [] empties it.Needs: WooCommerce | Changes | Approval |
Shop: orders and refunds
15 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_woo_list_couponsList coupons | Coupons: code, discount, expiry and how often each was used.Needs: WooCommerce | Reads | None |
wordpress_woo_create_couponCreate a coupon | Create a coupon code.Needs: WooCommerce | Changes | Approval |
wordpress_woo_list_ordersList orders | Orders, newest first: number, status, total and items.Needs: WooCommerce | Reads | None |
wordpress_woo_get_orderGet an order | One order: items, totals, payment method and country.Needs: WooCommerce | Reads | None |
wordpress_woo_set_order_statusChange an order's status | Move an order to processing, on-hold or completed, with an optional note.Needs: WooCommerce | Changes | Approval |
wordpress_woo_refund_orderRefund an order | Refund all or part of an order: an amount, or chosen lines and quantities, and shipping.Needs: WooCommerce | Changes | Depends on the change |
wordpress_woo_list_order_notesOrder notes | An order's notes: what happened to it (payments, status changes, emails) and what the shop or the customer wrote, with personal data hidden.Needs: WooCommerce | Reads | None |
wordpress_woo_add_order_noteAdd an order note | Add a note to an order.Needs: WooCommerce | Changes | Depends on the change |
wordpress_woo_cancel_orderCancel an order | Cancel a pending, processing or on-hold order, with an optional note.Needs: WooCommerce | Changes | Approval |
wordpress_woo_resend_order_emailSend an order email again | Send the customer one of the order's emails again: processing, completed, the invoice with a payment link, or a note (customer_note, with the note text).Needs: WooCommerce | Changes | Approval |
wordpress_woo_list_customersCustomers | Customers with their number of orders, total spent and first and last order, and only enough to tell them apart: first name and initial, a masked email and phone, city and country.Needs: WooCommerce | Reads | None |
wordpress_woo_get_customerA customer | One customer, masked as in wordpress_woo_list_customers, with their last ten orders.Needs: WooCommerce | Reads | None |
wordpress_woo_update_couponChange a coupon | Change a coupon: its discount, expiry, usage limits, minimum or maximum order, the products or categories it applies to, and whether it combines with others or gives free shipping.Needs: WooCommerce | Changes | Approval |
wordpress_woo_expire_couponEnd a coupon | Make a coupon stop working now (it expires today).Needs: WooCommerce | Changes | Approval |
wordpress_woo_set_coupon_startSet a coupon's first day | Set the first day a coupon works, as Y-m-d in the site's time, or "" to remove it.Needs: WooCommerce | Changes | Approval |
Shop: shipping and tax
8 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_woo_list_shipping_zonesShipping zones | The shop's shipping zones in the order WooCommerce checks them (the first that matches an address wins; "everywhere else" last), each with its countries, regions and postcodes and its methods (flat rate, free shipping, local pickup) with their costs.Needs: WooCommerce | Reads | None |
wordpress_woo_save_shipping_zoneSave a shipping zone | Create a shipping zone, or change one's name, order or locations (countries, regions, postcodes such as "84000...85999" or "84*").Needs: WooCommerce | Changes | Approval |
wordpress_woo_save_shipping_methodSave a shipping method | Add a method to a shipping zone, or change one (instance_id from wordpress_woo_list_shipping_zones): flat rate (cost, which may use WooCommerce's [qty] and [fee] formula), free shipping (requires: min_amount, coupon, either or both, with min_amount), or local pickup.Needs: WooCommerce | Changes | Approval |
wordpress_woo_delete_shipping_zoneDelete a shipping zone | Delete a shipping zone and its methods; addresses it covered fall to the next zone that matches.Needs: WooCommerce | Changes | Approval |
wordpress_woo_list_shipping_classesShipping classes | Shipping classes (e.g. bulky items) with how many products use each.Needs: WooCommerce | Reads | None |
wordpress_woo_create_shipping_classCreate a shipping class | Create a shipping class (e.g. "Ογκώδη").Needs: WooCommerce | Changes | None |
wordpress_woo_list_tax_ratesTax rates | The shop's tax settings (whether prices include tax, what tax is based on), tax classes, and its rates by country, region and postcode.Needs: WooCommerce | Reads | None |
wordpress_woo_save_tax_ratesSave tax rates | Add, change or remove tax rates, up to 50 rows at once, or add a preset: gr_vat (24% standard, 13% and 6% reduced) or gr_vat_islands_reduced (17/9/4%, ONLY for a business established on an island that keeps reduced VAT; a mainland shop charges island customers the normal rate).Needs: WooCommerce | Changes | Approval |
Shop: payments and settings
4 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_woo_list_payment_gatewaysPayment methods | The shop's payment methods: whether each is on, its title and description shown at checkout, its order, and whether it can refund.Needs: WooCommerce | Reads | None |
wordpress_woo_update_payment_gatewayChange a payment method | Change a payment method's title, description or position at checkout (the user's approval), or turn it on or off (the user's password: customers may suddenly be unable to pay).Needs: WooCommerce | Changes | Depends on the change |
wordpress_woo_get_store_settingsStore settings | The store's settings SAR can change: address, where it sells and ships, currency and number format, coupons, units, reviews, inventory, the sender of its emails, and each email's on/off, subject, heading and recipient (addresses masked).Needs: WooCommerce | Reads | None |
wordpress_woo_update_store_settingsChange store settings | Change up to 30 store settings at once, by the keys wordpress_woo_get_store_settings shows (e.g. email.customer_completed_order.subject).Needs: WooCommerce | Changes | Depends on the change |
Shop: reports and import
9 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_woo_sales_summarySales summary | Orders, revenue, average order and top products over the last N days (default 30).Needs: WooCommerce | Reads | None |
wordpress_google_merchant_feed_checkCheck the Google Shopping feed | Check the shop's Google Merchant Center product feed against Google's product data specification: id, title (150 characters at most), description, link, image_link, availability (in_stock, out_of_stock, preorder, backorder), price with its currency, condition, brand with GTIN or MPN (or identifier_exists), GTIN check digits, duplicate ids, links to another site, and price and availability matching the shop on a sample of products.Needs: WooCommerce | Reads | None |
wordpress_woo_sales_reportSales report | Sales by day, week or month over a period (up to two years): orders, gross, discounts, refunds, net, tax, shipping and average order, optionally broken down by category or product.Needs: WooCommerce | Reads | None |
wordpress_woo_tax_reportVAT report | VAT for the accountant, month by month and by rate: net and tax of sales and of shipping, refunds deducted (refunds given only as an amount are listed apart, since they carry no VAT).Needs: WooCommerce | Reads | None |
wordpress_woo_customer_reportNew and returning customers | How many customers bought in each period, how many were new and how many returning, and what each group spent.Needs: WooCommerce | Reads | None |
wordpress_woo_coupon_reportCoupon report | How often each coupon code was used over a period and how much discount it gave.Needs: WooCommerce | Reads | None |
wordpress_woo_export_productsExport products to CSV | Export products (never orders or customers) as a WooCommerce CSV: a signed download link valid for one hour, and the CSV itself when it is short.Needs: WooCommerce | Reads | None |
wordpress_woo_import_productsImport products from CSV | Import products from a CSV (WooCommerce's columns; comma, semicolon or tab; up to 1000 rows or 2 MB), every one as a DRAFT; existing products are never changed (a SKU that exists is skipped).Needs: WooCommerce | Changes | None |
wordpress_woo_import_statusProduct import progress | How far a product import has got: created, skipped and failed rows, and whether it is done.Needs: WooCommerce | Reads | None |
Shop: carts and email
5 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_abandoned_carts_summaryAbandoned carts | Abandoned-cart totals from CartFlows Cart Abandonment Recovery or Abandoned Cart Lite over the last days (default 30): carts abandoned, recovered, lost and in progress, their value, the recovery rate, the most abandoned products, and whether recovery emails are on.Needs: WooCommerce, CartFlows Cart Abandonment Recovery, Abandoned Cart Lite | Reads | None |
wordpress_list_cart_recovery_emailsCart recovery emails | The recovery emails the cart plugin sends: name, subject, body, on or off, and how long after the cart is left.Needs: WooCommerce, CartFlows Cart Abandonment Recovery, Abandoned Cart Lite | Reads | None |
wordpress_update_cart_recovery_emailChange a cart recovery email | Change a recovery email's subject, body (keep the plugin's merge tags, e.g. the cart link) or delay.Needs: WooCommerce, CartFlows Cart Abandonment Recovery, Abandoned Cart Lite | Changes | Approval |
wordpress_set_cart_recovery_email_activeSwitch a cart recovery email on or off | Switch one recovery email on or off; switched on, it goes to customers who leave a cart.Needs: WooCommerce, CartFlows Cart Abandonment Recovery, Abandoned Cart Lite | Changes | Approval |
wordpress_email_marketing_statusEmail marketing | Whether the site's email-marketing plugins are connected and syncing: Mailchimp for WooCommerce (sync progress and recent errors), Klaviyo, MailPoet (lists and subscriber counts), Omnisend (recent errors), Brevo.Needs: Mailchimp for WooCommerce, Klaviyo, MailPoet, Omnisend, Brevo | Reads | None |
Greek and Cypriot shops
36 tools
| Tool | What it does | Reads or changes | Approval |
|---|---|---|---|
wordpress_greek_store_auditCheck a Greek or Cypriot shop | For a Greek or Cypriot site or WooCommerce shop (market GR or CY; by default the country the shop sells from): what the law and the market there expect, checked from inside WordPress. | Reads | None |
wordpress_mydata_statusmyDATA status of orders | Which recent orders reached AADE's myDATA: orders with no MARK (the 15-digit number AADE gives each receipt or invoice), orders with a transmission error, and refunded orders that need a credit note.Needs: WooCommerce | Reads | None |
wordpress_skroutz_feed_checkCheck the Skroutz feed | Check the shop's marketplace XML feed.Needs: WooCommerce | Reads | None |
wordpress_greek_operationsHow orders are moving | For a Greek or Cypriot shop, from what its plugins keep on each order of the last days: Skroutz Smart Cart orders by state and revenue, paid orders still without a courier voucher after some hours, BOX NOW orders without a locker, the share of cash on delivery and how many carried a fee, how often each payment method fails, and invoice requests whose ΑΦΜ fails AADE's check digit.Needs: WooCommerce | Reads | None |
wordpress_draft_legal_pageDraft a legal page | For a Greek or Cypriot shop: a draft page, never published, of the terms, withdrawal and returns (with the «Πατήστε εδώ για υπαναχώρηση» button and a form that emails the customer the confirmation the law requires), the legal guarantee, an accessibility statement, or a cookie policy listing the trackers the site loads. | Changes | None |
wordpress_list_greek_slugsGreek-letter addresses | Published posts, pages and products whose address is in Greek letters (shared as %CE%…), each with the Greeklish address (ELOT 743) it would get, e.g. /kalokairines-prosfores/. | Reads | None |
wordpress_greeklish_slugsChange Greek addresses to Greeklish | Give up to 50 published posts, pages or products a Latin address: the ELOT 743 Greeklish of their current one (from wordpress_list_greek_slugs), or the one you give per id. | Changes | Approval and password |
wordpress_list_couriersCourier plugins | The courier plugins on the site, and which SAR can create vouchers through (BOX NOW, Geniki Taxydromiki through ATH's plugin, Courier Center, ACS) and whether each is set up; others are read only.Needs: WooCommerce | Reads | None |
wordpress_get_order_voucherAn order's courier voucher | An order's courier vouchers with their tracking links, which courier could make one and why not, and the order's link in wp-admin to print the label (labels carry the customer's details and are never shown here).Needs: WooCommerce | Reads | None |
wordpress_create_courier_voucherCreate a courier voucher | Create a courier voucher for an order through the courier's own plugin, or directly with the shop's courier account (acs_direct, geniki_direct, speedex_direct; one per order) (the shop is billed for it): parcels, weight and cash on delivery where the plugin allows, a BOX NOW locker as the customer chose.Needs: WooCommerce | Changes | Approval |
wordpress_cancel_courier_voucherCancel a courier voucher | Cancel an order's courier voucher before the courier collects it.Needs: WooCommerce | Changes | Approval |
wordpress_create_courier_vouchers_bulkCreate courier vouchers for several orders | Create vouchers for up to 20 orders at once, e.g. today's paid orders; the dry run says which are ready and why others are not.Needs: WooCommerce | Changes | Approval |
wordpress_close_geniki_pickup_listClose today's Geniki pickup list | For a shop that sends with Geniki Taxydromiki directly: close the pending vouchers into the day's pickup list, so the courier collects them.Needs: WooCommerce, geniki_direct | Changes | Approval |
wordpress_skroutz_get_orderA Skroutz order | One Skroutz Smart Cart order by its code (Skroutz offers no list of orders; the code comes from Skroutz's email or panel): state, items, pickup window and accept options, voucher and tracking, invoice needed or not.Needs: WooCommerce, skroutz_last_mile | Reads | None |
wordpress_skroutz_accept_orderAccept a Skroutz order | Accept a Skroutz order with a pickup location and window from its accept options, and the number of parcels.Needs: WooCommerce, skroutz_last_mile | Changes | Approval |
wordpress_skroutz_set_readyMark a Skroutz order ready | Tell Skroutz an accepted order is packed and ready for the courier (required before pickup).Needs: WooCommerce, skroutz_last_mile | Changes | Approval |
wordpress_skroutz_order_voucherA Skroutz order's voucher | The voucher and tracking link of a Skroutz order; for a pre-order without one yet, asks Skroutz for it.Needs: WooCommerce, skroutz_last_mile | Changes | Approval |
wordpress_omnibus_check30-day lowest price check | For products on sale: the price shown as the previous one against the lowest price of the 30 days before the discount (10 days for products sold for less than 30), from the shop's Omnibus plugin or SAR's own price history, flagged when the regular price was raised before the sale, when the history is too short, or when product pages do not show the lowest price.Needs: WooCommerce | Reads | None |
wordpress_set_lowest_price_displayShow the 30-day lowest price | Switch SAR's line under sale prices on or off: "Lowest price in the 30 days before the discount: X".Needs: WooCommerce | Changes | Approval |
wordpress_set_omnibus_exempt_categoriesPerishable categories for the price check | List the product categories or tags (slugs) the 30-day lowest price check skips, e.g. fresh food that is discounted as it nears its date.Needs: WooCommerce | Changes | Approval |
wordpress_check_vat_numberCheck an EU VAT number | Check a business customer's EU VAT number with the EU's VIES, as the shop does before selling without VAT: valid (with the name and address VIES holds, which some countries do not share), invalid, or unavailable when VIES or that country's register is down (which says nothing about the number; try later). | Reads | None |
wordpress_gr_payments_overviewGreek and Cypriot payment gateways | Which of the Greek and Cypriot gateways are installed and on (beta): Viva.com Smart Checkout and Papaki's Viva, EveryPay, Piraeus Bank (Papaki), ePay Paycenter, Eurobank, Alpha Bank, Nexi XPay, JCC and the IRIS plugins; each one's mode (live, test, or null when the plugin has no test switch), its checkout title, description and place at checkout, whether it takes IRIS, and its instalments as the plugin keeps them (tiers and flat maximum) with the maximum a customer may choose by order total.Needs: WooCommerce, Viva Smart Checkout | Reads | None |
wordpress_gr_set_instalmentsChange a gateway's instalments | Change how many instalments (δόσεις) customers may choose with a Greek or Cypriot gateway (beta), written in that plugin's own format: tiers (from this order total, up to this many) and/or max (one maximum), or enabled false to stop offering them.Needs: WooCommerce, Viva Smart Checkout | Changes | Approval |
wordpress_gr_set_gateway_test_modeSwitch a gateway to live or test | Switch a Greek or Cypriot gateway between live and test (beta), by the plugin's own test switch.Needs: WooCommerce, Viva Smart Checkout | Changes | Approval and password |
wordpress_gr_order_payment_detailsAn order's card payment | An order's payment as its Greek or Cypriot gateway keeps it (beta): the bank's reference and transaction id, status and response codes, the instalments chosen, and for Viva whether it went to the test environment; with the order's status, total and payment date.Needs: WooCommerce, Viva Smart Checkout | Reads | None |
wordpress_gr_afm_checkCheck a Greek ΑΦΜ | Check a Greek tax number (ΑΦΜ) in three steps (beta): its check digit; VIES with the EL prefix (registered for VAT); and, when the shop has entered its own AADE special access codes in wp-admin (SAR Intelligence → AADE lookup), AADE's register: name, trade name, ΔΟΥ, active or not, natural person or company, main activity. | Reads | None |
wordpress_gr_invoice_orders_checkCheck invoice orders | Recent orders that asked for an invoice (τιμολόγιο) and lack a valid ΑΦΜ, ΔΟΥ or company name (beta), read from the invoice fields of the shop's Greek checkout or invoicing plugin (Greek VAT & Invoices, BytePlugs, Timologia, Primer, Oxygen, Web Expert, Codihi or Skroutz orders); with verify, each ΑΦΜ is also asked of VIES and, with the shop's own AADE codes, AADE (at most 10 a call): not_in_vies, not_registered, inactive, name_differs, doy_differs.Needs: WooCommerce | Reads | None |
wordpress_skroutz_list_ordersSkroutz orders and returns | The Skroutz Smart Cart orders this site was told about by Skroutz's order updates (beta): each order's code, state (open, accepted, rejected, cancelled, expired, dispatched, delivered, returned…), when it was placed, its acceptance deadline (expires_at) and dispatch deadline (dispatch_until), the time left to accept or to dispatch (or how long overdue), and the updates received; the most urgent first, with counts by state, the orders close to a deadline, and the returns customers opened (return code, order code, state, updates).Needs: WooCommerce, skroutz_webhook | Reads | None |
wordpress_skroutz_reject_orderReject a Skroutz order | Reject an open Skroutz order (beta), as Skroutz's Orders API defines it: either line_items, each product with one of Skroutz's reason ids from the order's reject_options (wordpress_skroutz_get_order; by default 1 out of stock at the shop or supplier, 2 wrong price, 4 limited units, which needs available_quantity, 5 discontinued), or reason, a few words for the whole order.Needs: WooCommerce, skroutz_last_mile | Changes | Approval |
wordpress_skroutz_reschedule_pickupMove a Skroutz pickup to another day | Move an accepted Skroutz order's courier pickup to another day (beta), one of the days Skroutz offers for that order now (its reschedule_options, read fresh before the change).Needs: WooCommerce, skroutz_last_mile | Changes | Approval |
wordpress_skroutz_relocate_pickupMove a Skroutz pickup to another address | Move an accepted Skroutz order's courier pickup to another of the shop's pickup addresses (beta), one Skroutz offers for that order now (its relocate_options; a shop with one pickup address has none).Needs: WooCommerce, skroutz_last_mile | Changes | Approval |
wordpress_greek_search_checkCheck Greek search | Whether the site's search finds products and posts however Greek is typed: without accents (ά = α), with σ for a final ς, in capitals, without a diaeresis. | Reads | None |
wordpress_set_greek_search_foldingSwitch Greek search folding on or off | Make the site's search (its search box, the shop's product search, the REST API) and WooCommerce's product search in wp-admin match each Greek word with or without its accent and with ς or σ at its end, or switch that off. | Changes | Approval |
wordpress_greek_vocativeGreek names in the vocative | Greek first names in the vocative, for greetings in drafts and emails the AI writes: Γιώργος → Γιώργο, Αλέξανδρος → Αλέξανδρε, Ανδρέας → Ανδρέα, Γιάννης → Γιάννη, Γεώργιος → Γεώργιε; feminine names unchanged. | Reads | None |
wordpress_set_email_vocativeGreet customers in the vocative in emails | Make WooCommerce's customer emails greet customers in the vocative («Γεια σας Γιώργο,»), or switch that off: only the greeting's first name, in HTML and plain-text emails; the order, its addresses and the admin emails keep the name as typed.Needs: WooCommerce | Changes | Approval |
wordpress_cy_vat_presetCyprus VAT rates preset | Create or update WooCommerce tax rates for customers in Cyprus at 19% (Standard class), 9%, 5% and 3%, each in its tax class (by default reduced-rate, reduced-rate-5 and super-reduced-rate, made if missing; or give classes), after a before-and-after table.Needs: WooCommerce | Changes | Approval |
Beyond WordPress
SAR's own tools (sar_*), Google Analytics (ga4_*), Search Console (gsc_*) and outside SEO data (seo_*) work alongside these, with updates across several sites and adding a file from your device. Most only read; the few that change something say what they need.
SAR
sar_list_connected_resourcesList connected sourcessar_list_organizationsList organizationssar_select_organizationChoose an organizationsar_get_business_overviewBusiness overviewsar_get_store_performanceStore performancesar_channel_truthWhere sales really come fromsar_explain_traffic_changeExplain a traffic changesar_find_content_opportunitiesFind content opportunitiessar_group_greek_queriesGroup Greek search queriessar_greek_retail_calendarGreek retail calendarsar_check_site_healthCheck site healthsar_check_page_speedCheck page speedsar_accessibility_checkCheck accessibility (automated)sar_screenshot_pageScreenshot a pagesar_get_rendered_pageRead a page as visitors see itsar_visual_checkCheck a page visuallysar_search_imagesSearch free photossar_get_approval_statusApproval statussar_show_approvalShow an approvalsar_list_skillsList skillssar_get_skillGet a skillsar_save_skillSave a skillsar_delete_skillDelete a skill
Google Analytics
ga4_run_reportRun a reportga4_run_realtime_reportRealtime reportga4_run_conversions_reportConversions reportga4_run_funnel_reportFunnel reportga4_get_property_detailsProperty detailsga4_get_custom_dimensions_and_metricsCustom dimensions and metricsga4_list_google_ads_linksGoogle Ads linksga4_list_property_annotationsProperty annotationsga4_create_custom_dimensionCreate a custom dimensionApprovalga4_create_custom_metricCreate a custom metricApprovalga4_create_key_eventCreate a key eventApprovalga4_create_audienceCreate an audienceApproval
Search Console
gsc_get_performance_overviewPerformance overviewgsc_get_search_analyticsSearch analyticsgsc_get_advanced_search_analyticsSearch analytics with filtersgsc_get_search_by_page_queryQueries for one pagegsc_compare_search_periodsCompare two periodsgsc_check_indexing_issuesIndexing issuesgsc_inspect_url_enhancedInspect a URLgsc_batch_url_inspectionInspect several URLsgsc_get_sitemapsSitemapsgsc_list_sitemaps_enhancedSitemaps in detailgsc_get_sitemap_detailsOne sitemapgsc_get_site_detailsSite details
SEO
seo_serpGoogle results for a keywordseo_keyword_volumeKeyword search volumeseo_keyword_ideasKeyword ideasseo_ranked_keywordsKeywords a site ranks forseo_domain_overviewDomain overviewseo_competitorsOrganic competitorsseo_backlinks_summaryBacklinks summaryseo_referring_domainsReferring domainsseo_page_checkOn-page checkseo_balanceBalance and limits
WordPress
wordpress_list_fleet_updatesList updates across siteswordpress_start_fleet_updateUpdate sitesApproval and passwordwordpress_fleet_update_statusUpdate run statuswordpress_upload_from_deviceAdd a file from your devicewordpress_upload_statusUpload status
Start free
Install the plugin, add SAR to your AI and ask your first question within minutes. No card needed.