Skip to content

Query & Discovery

These tools never mutate state. They require edit_posts and are safe to call before any write operation. They’re how the AI figures out what exists before changing anything.

Returns every registered widget type with names, titles, icons, categories, and keywords. The AI uses this to discover which widgets are available (free + Pro + custom + third-party).

Returns: array of { name, title, icon, categories, keywords }.

Returns the curated params for a widget by default: the settings you actually need, with types and defaults. Pass a types array to inspect several widgets at once, or full: true for the complete auto-generated control schema. Used before add-free-widget / add-pro-widget to know which settings are valid.

Input: widget_type (e.g. "heading", "button", "form"). Returns: curated params object (or the full JSON Schema when full: true).

Returns the full element tree for an Elementor-enabled page: containers, widgets, nesting, IDs. The starting point for any “edit this page” workflow.

Input: post_id. Returns: tree of { id, elType, widgetType?, settings, elements: [...] }.

Returns the current settings of a specific element by ID.

Input: post_id, element_id. Returns: settings object.

Lists every Elementor-enabled page or post on the site.

Returns: array of { id, title, status, post_type, edit_url }.

Lists saved templates from the Elementor template library.

Returns: array of { id, title, type, date, author }.

Returns the active Elementor kit’s global settings: color palette, typography presets, spacing, default fonts.

Returns: kit settings object.

1. list-pages → find the target page
2. get-page-structure → understand existing layout
3. get-element-settings → inspect a specific element you want to modify
4. update-widget → apply changes

Reading before writing is the most reliable pattern for the AI. It prevents the “regenerate from scratch” failure mode and keeps existing content intact.