328 lines
10 KiB
Markdown
328 lines
10 KiB
Markdown
# Tool Reference — All 123 Tools
|
||
|
||
## Scopes
|
||
|
||
| Scope | Access |
|
||
|---|---|
|
||
| `read` | Read-only operations |
|
||
| `write` | Create / update / delete |
|
||
| `admin` | Plugin mgmt, CLI, raw SQL, options |
|
||
| `elementor` | Elementor page builder |
|
||
| `woo` | WooCommerce |
|
||
|
||
---
|
||
|
||
## Post Tools (`read` / `write`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `get_post` | Get single post by ID (any post type) |
|
||
| `list_posts` | List posts with filters (type, status, search, page) |
|
||
| `create_post` | Create new post with meta, terms, featured image |
|
||
| `update_post` | Update existing post fields and meta |
|
||
| `delete_post` | Trash or permanently delete a post |
|
||
| `get_post_meta` | Get all meta for a post |
|
||
| `update_post_meta` | Set a meta key value |
|
||
| `delete_post_meta` | Delete a meta key |
|
||
| `get_post_revisions` | List revision history |
|
||
| `restore_revision` | Restore a post to a revision |
|
||
| `get_post_types` | List all registered public post types |
|
||
| `count_posts` | Count posts by status |
|
||
|
||
---
|
||
|
||
## Page Tools (`read` / `write`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `get_page` | Get page by ID |
|
||
| `list_pages` | List pages with filters |
|
||
| `create_page` | Create new page |
|
||
| `update_page` | Update page status, title, content |
|
||
| `delete_page` | Delete page |
|
||
|
||
> **Note:** Never pass `page_template` to `wp_update_post()`. Set template via `update_post_meta($id, '_wp_page_template', 'slug')` after publish. See `docs/05-KNOWN-ISSUES.md`.
|
||
|
||
---
|
||
|
||
## Media Tools (`read` / `write`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `upload_media` | Upload file from URL into media library |
|
||
| `get_media` | Get media item by ID |
|
||
| `list_media` | List media with filters |
|
||
| `update_media` | Update alt, caption, title, description |
|
||
| `delete_media` | Delete media item |
|
||
| `set_featured_image` | Assign featured image to a post |
|
||
|
||
---
|
||
|
||
## User Tools (`read` / `admin`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `list_users` | List users with role filter |
|
||
| `get_user` | Get user by ID |
|
||
| `create_user` | Create new WP user |
|
||
| `update_user` | Update user fields |
|
||
| `delete_user` | Delete user (with reassign option) |
|
||
|
||
---
|
||
|
||
## Comment Tools (`read` / `write`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `list_comments` | List comments with filters |
|
||
| `get_comments` | Get comments for a post |
|
||
| `get_pending_comments` | Get all pending comments |
|
||
| `approve_comment` | Approve a pending comment |
|
||
| `spam_comment` | Mark comment as spam |
|
||
| `trash_comment` | Move comment to trash |
|
||
| `delete_comment` | Permanently delete comment |
|
||
|
||
---
|
||
|
||
## Menu Tools (`read` / `write`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `get_menus` | List all navigation menus |
|
||
| `get_menu_items` | Get items for a menu |
|
||
| `create_menu_item` | Add item to a menu |
|
||
| `update_menu_item` | Update existing menu item |
|
||
| `delete_menu_item` | Remove menu item |
|
||
| `reorder_menu_items` | Reorder items by passing ID array |
|
||
|
||
---
|
||
|
||
## Taxonomy Tools (`read` / `write`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `get_categories` | List all categories |
|
||
| `get_tags` | List all tags |
|
||
| `list_terms` | List terms in any taxonomy |
|
||
| `get_taxonomies` | List all registered taxonomies |
|
||
| `create_term` | Create a term |
|
||
| `update_term` | Update term name/slug/description |
|
||
| `delete_term` | Delete a term |
|
||
| `add_post_terms` | Assign terms to a post |
|
||
| `get_term_meta` | Get term meta |
|
||
| `update_term_meta` | Set term meta |
|
||
| `delete_term_meta` | Delete term meta |
|
||
|
||
---
|
||
|
||
## Option Tools (`read` / `admin`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `get_option` | Get a WP option by key |
|
||
| `update_option` | Update a WP option |
|
||
| `list_options` | List options matching a prefix |
|
||
|
||
---
|
||
|
||
## Site Tools (`read` / `admin`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `get_site_info` | Site URL, title, admin email, WP version |
|
||
| `get_health` | Run WP site health checks |
|
||
| `get_active_theme` | Active theme name, version, parent |
|
||
| `get_permalink_structure` | Current permalink structure |
|
||
| `update_permalink_structure` | Update permalink structure |
|
||
| `get_custom_css` | Get theme custom CSS |
|
||
| `update_custom_css` | Update theme custom CSS |
|
||
| `get_theme_mods` | Get all Customizer settings |
|
||
| `update_theme_mod` | Update a single theme_mod |
|
||
|
||
---
|
||
|
||
## Plugin Tools (`admin`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `list_plugins` | List all installed plugins with status |
|
||
| `get_plugins` | Same as list_plugins |
|
||
| `activate_plugin` | Activate a plugin by slug |
|
||
| `deactivate_plugin` | Deactivate a plugin |
|
||
|
||
---
|
||
|
||
## Theme Tools (`read` / `admin`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `list_themes` | List installed themes |
|
||
| `get_themes` | Same as list_themes |
|
||
| `switch_theme` | Activate a different theme |
|
||
|
||
---
|
||
|
||
## Theme Discovery Tools (`read`) — WoodMart + Elementor specific
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `theme_woodmart_elements` | List WoodMart Elementor widgets with name/category |
|
||
| `theme_page_templates` | List all registered page templates |
|
||
| `theme_taxonomies` | List public taxonomies from theme + plugins |
|
||
| `theme_custom_post_types` | List registered CPTs |
|
||
| `theme_widget_areas` | List all registered widget areas (sidebars) |
|
||
| `theme_elementor_support` | What Elementor features the theme supports |
|
||
| `theme_elementor_tokens` | Global Elementor Kit colors + typography CSS vars |
|
||
|
||
---
|
||
|
||
## SEO Tools (`read` / `write`) — Yoast + RankMath
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `get_seo_meta` | Get SEO meta for a post |
|
||
| `update_seo_meta` | Update SEO title, description, robots, focus keyword |
|
||
| `get_post_seo_meta` | Alias of get_seo_meta |
|
||
| `update_post_seo_meta` | Alias of update_seo_meta |
|
||
|
||
---
|
||
|
||
## WooCommerce Tools (`woo`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `wc_list_products` | List products with filters |
|
||
| `wc_get_product` | Get product by ID |
|
||
| `wc_create_product` | Create new product |
|
||
| `wc_update_product` | Update product fields |
|
||
| `wc_get_store_stats` | Revenue, orders, product counts |
|
||
| `wc_list_orders` | List orders with filters |
|
||
| `wc_get_order` | Get order by ID |
|
||
| `wc_update_order_status` | Update order status |
|
||
| `wc_list_customers` | List customers |
|
||
| `wc_get_customers` | Get customers with filters |
|
||
| `wc_create_coupon` | Create coupon |
|
||
| `wc_get_coupon` | Get coupon by ID or code |
|
||
| `wc_update_coupon` | Update coupon |
|
||
| `wc_delete_coupon` | Delete coupon |
|
||
| `wc_get_coupons` | List coupons |
|
||
| `wc_get_coupon_count` | Count by status |
|
||
| `wc_empty_coupon_trash` | Permanently delete trashed coupons |
|
||
| `wc_get_product_attributes` | List global attributes |
|
||
| `wc_create_product_attribute` | Register new global attribute |
|
||
| `wc_get_attribute_terms` | List terms for an attribute |
|
||
| `wc_set_product_attributes` | Assign attributes to variable product |
|
||
| `wc_get_product_variations` | List all variations |
|
||
| `wc_get_variation` | Get single variation |
|
||
| `wc_create_variation` | Create variation |
|
||
| `wc_update_variation` | Update variation |
|
||
| `wc_delete_variation` | Delete variation |
|
||
| `wc_batch_update_variations` | Batch create/update/delete variations |
|
||
|
||
---
|
||
|
||
## Email Tools (`write`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `send_email` | Send email via wp_mail |
|
||
|
||
---
|
||
|
||
## File Manager Tools (`admin`) — sandboxed to `uploads/`
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `list_files` | List files in uploads dir |
|
||
| `read_file` | Read file contents |
|
||
| `write_file` | Write file to uploads |
|
||
| `delete_file` | Delete file from uploads |
|
||
| `fs_list_dir` | List directory |
|
||
| `fs_read_file` | Read file |
|
||
| `fs_uploads_info` | Get uploads path, URL, disk usage |
|
||
| `fs_delete_file` | Delete file |
|
||
| `fs_delete_dir` | Delete directory |
|
||
|
||
---
|
||
|
||
## CLI Tools (`admin`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `run_cli` | Run WP-CLI command (allowlisted + escapeshellarg + --allow-root) |
|
||
| `cli_available` | Check WP-CLI is installed and runnable |
|
||
|
||
---
|
||
|
||
## Raw SQL Tools (`admin`) — disabled by default
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `sql_query` | Run SELECT-only query via wpdb |
|
||
| `sql_describe_table` | Describe table columns |
|
||
| `sql_list_tables` | List all DB tables with row count and size |
|
||
|
||
Enable in: **WP Admin → AskTam MCP → Settings → Allow Raw SQL**.
|
||
|
||
---
|
||
|
||
## Transient Tools (`read` / `write`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `get_transient` | Get transient value |
|
||
| `set_transient` | Set transient with expiry |
|
||
| `delete_transient` | Delete a transient |
|
||
| `transient_list` | List transients matching prefix |
|
||
| `transient_flush_expired` | Delete all expired transients |
|
||
|
||
---
|
||
|
||
## Widget Tools (`read` / `write`)
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `list_widget_areas` | List all widget areas |
|
||
| `widget_list_areas` | Alias |
|
||
| `widget_list_registered` | List all registered widget types |
|
||
| `widget_get_area` | Get widgets in a specific area |
|
||
| `widget_update_area` | Reorder / set widget list for an area |
|
||
| `widget_remove` | Remove a specific widget from an area |
|
||
|
||
---
|
||
|
||
## Elementor Tools (`elementor`) — 30 tools
|
||
|
||
| Tool | Description |
|
||
|---|---|
|
||
| `elementor_create_page` | Create new WP page with Elementor enabled |
|
||
| `elementor_add_container` | Add flex/grid container (root or nested) |
|
||
| `elementor_add_heading` | Add heading widget (h1–h6, color, typography) |
|
||
| `elementor_add_text` | Add text/HTML widget |
|
||
| `elementor_add_button` | Add button (color, hover, border, radius, padding) |
|
||
| `elementor_add_image` | Add image widget |
|
||
| `elementor_add_widget` | Add any Elementor widget by type name |
|
||
| `elementor_get_page` | Get full Elementor JSON for a page |
|
||
| `elementor_get_page_outline` | Get simplified structure (containers + widget types) |
|
||
| `elementor_update_element` | Update element settings by element_id |
|
||
| `elementor_update_container` | Update container settings |
|
||
| `elementor_update_widget` | Update widget settings |
|
||
| `elementor_update_page_settings` | Update page-level Elementor settings |
|
||
| `elementor_delete_items` | Delete elements by ID |
|
||
| `elementor_duplicate_element` | Duplicate any element |
|
||
| `elementor_move_element` | Move element to different parent/position |
|
||
| `elementor_replace_text` | Find/replace text across all widgets on a page |
|
||
| `elementor_clone_page` | Duplicate entire page |
|
||
| `elementor_delete_page_content` | Clear all Elementor content from a page |
|
||
| `elementor_import_template` | Import from template library |
|
||
| `elementor_export_page` | Export page as JSON |
|
||
| `elementor_save_as_template` | Save page to template library |
|
||
| `elementor_apply_template` | Apply template to page |
|
||
| `elementor_list_templates` | List saved Elementor templates |
|
||
| `elementor_get_global_colors` | Get kit global color palette |
|
||
| `elementor_get_global_fonts` | Get kit font groups |
|
||
| `elementor_get_kit_settings` | Full Elementor kit settings |
|
||
| `elementor_get_element` | Get single element by ID |
|
||
| `elementor_add_line` | Add line/divider widget |
|
||
| `elementor_add_block` | Add block widget |
|