1e5f1bfccd
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Q8t9GEyyLZbUQu26na1JQg
115 lines
10 KiB
Markdown
115 lines
10 KiB
Markdown
# Advanced MCP Plugin by AskTam — Tool Skills Reference
|
||
|
||
> Auto-generated from the live tool registry on 2026-10-16.
|
||
> Plugin: `colorlink/advanced-mcp-plugin` · GPL-2.0-or-later · namespace `AskTamMCP\`.
|
||
> Registry snapshot: **294** tools live on the snapshot host (guarded families whose plugin/theme is absent there are listed under their batch as inert-but-shipped). Net-new merge additions span b1–b20.
|
||
|
||
## How tools are defined
|
||
Each tool: `name`, `scope` (read|write|admin), a JSON input schema, and a static handler `Class::method(array $args): array` (throws `\RuntimeException`). `getToolDefinitions()` returns the trimmed client schema {name,description,inputSchema}; scope/handler resolve via `getTool()`/`getHandler()`. Empty PHP arrays cast to `new \stdClass()`.
|
||
|
||
## Architecture / adding tools
|
||
Drop one file `includes/Extensions/BatchN.php` registering on the `asktam_mcp_register_tools` hook. The main file glob-auto-discovers `Batch*.php` (priority 20, class_exists + try/catch): no core edits, a bad batch cannot fatal the plugin. Guard absent-plugin families with `defined()`/`class_exists()`/theme checks — inert where the dependency is missing, auto-active where present.
|
||
|
||
---
|
||
|
||
## Net-new merge additions (b1–b20)
|
||
|
||
### b1 — Elementor structure (net-new gaps)
|
||
Guard: `defined('ELEMENTOR_VERSION')`. Fills gaps the base Elementor set missed. Writes `_elementor_data`; CSS regenerated on save.
|
||
`elementor_add_section` (post_id req; parent_id, position, settings) · `elementor_add_column` (post_id+section_id req; size, position, settings) · `elementor_set_global_font` (title+font_family req) · `elementor_delete_global_color` (id req) · `elementor_delete_template` (template_id req)
|
||
|
||
### b2 — SEO extended + text extraction
|
||
Guard: none (SEO plugin auto-detected). Auto-detect Yoast/RankMath/SEOPress; report plugin=none where absent.
|
||
`seo_detect` · `seo_get_extended` (post_id req) · `seo_update_extended` (post_id req; title/description/canonical/og_*/twitter_title/noindex/nofollow) · `seo_bulk_audit` (post_types, per_page) · `extract_page_text` (post_id req — title/excerpt/content + every Elementor text node)
|
||
|
||
### b3 — Accessibility audit (read-only)
|
||
Guard: none. WCAG 2.1 luminance math over post content + Elementor data.
|
||
`a11y_contrast_check` (foreground+background req) · `a11y_audit_page` (post_id req) · `a11y_heading_outline` (post_id req) · `a11y_images_missing_alt` (per_page) · `a11y_audit_site` (post_types, per_page)
|
||
|
||
### b4 — WPML translation audit (read)
|
||
Guard: `defined('ICL_SITEPRESS_VERSION')`.
|
||
`wpml_list_languages` · `wpml_get_post_language` (post_id req) · `wpml_get_translations` (post_id req) · `wpml_missing_translations` (post_id req) · `wpml_audit` (post_types, per_page)
|
||
|
||
### b5 — Media & content utilities
|
||
Guard: none.
|
||
`set_image_alt` (attachment_id+alt req) · `bulk_set_alt_from_title` (per_page, overwrite) · `find_broken_internal_links` (post_types, per_page) · `list_large_images` (min_kb, per_page) · `duplicate_title_finder` (post_types, per_page)
|
||
|
||
### b6 — Gutenberg blocks
|
||
Guard: none.
|
||
`list_block_types` (category, per_page) · `insert_blocks` (post_id+blocks req; mode append|replace) · `create_reusable_block` (title req; blocks|markup) · `list_reusable_blocks` (per_page) · `render_shortcode` (shortcode req; post_id)
|
||
|
||
### b7 — WPBakery base (js_composer)
|
||
Guard: `defined('WPB_VC_VERSION')`. Elements via WPBMap. Functional test pending on a js_composer site. Inert where WPBakery absent.
|
||
`wpbakery_detect` · `wpbakery_list_elements` · `wpbakery_get_content` · `wpbakery_add_element` · `wpbakery_replace_text`
|
||
|
||
### b8 — Remote-data presets
|
||
Guard: none (outbound HTTP). wp_remote_get + transient cache (amp_rd_). API keys per-call, never stored.
|
||
`remote_fetch_json` (url req; cache_minutes, path, headers) · `remote_weather` (api_key req; city|lat+lon; units) · `remote_place_reviews` (api_key+place_id req) · `remote_list_cache` · `remote_clear_cache` (key)
|
||
|
||
### b9 — Backup / export (Elementor)
|
||
Guard: `defined('ELEMENTOR_VERSION')`. Round-trips `_elementor_data`; import regenerates element IDs.
|
||
`export_elementor_page` (post_id req) · `import_elementor_page` (post_id+elementor_data req; regenerate_ids) · `export_global_styles` · `import_global_styles` (settings req; merge) · `duplicate_elementor_page` (source_id req; title, status)
|
||
|
||
### b10 — Memory layer (KV store)
|
||
Guard: none. Option-backed; ttl_minutes>0 → transient. Keys prefixed ampmem_. String values.
|
||
`memory_set` (key+value req; ttl_minutes) · `memory_get` (key req) · `memory_list` (prefix) · `memory_delete` (key req) · `memory_append` (key+item req)
|
||
|
||
### b11 — Motion / GSAP
|
||
Guard: `defined('ELEMENTOR_VERSION')`. Entrance animations + scroll motion-fx + staggered presets.
|
||
`motion_list_presets` · `motion_set_entrance` (post_id+element_id+animation req; delay_ms) · `motion_set_scroll_fx` (post_id+element_id+effect req; speed) · `motion_apply_preset` (post_id+preset req) · `motion_clear` (post_id req; element_id)
|
||
|
||
### b12 — Woodmart options
|
||
Guard: active theme = Woodmart. xts-woodmart-options store; set auto-backs-up to amp_wd_backup; restore reverts/removes.
|
||
`woodmart_detect` · `woodmart_get_option` (key req) · `woodmart_list_options` (prefix) · `woodmart_set_option` (key+value req; JSON-aware) · `woodmart_restore_option` (key req)
|
||
|
||
### b13 — Woodmart functionality
|
||
Guard: active theme = Woodmart. 151 Woodmart Elementor widgets discoverable; Layout Builder (woodmart_layout) + HTML Blocks (cms_block). Any wd_* widget is also placeable via core `elementor_add_widget`.
|
||
`woodmart_list_widgets` (group wd|wp|all) · `woodmart_list_layouts` (status, per_page) · `woodmart_list_html_blocks` (status, per_page) · `woodmart_get_block` (id req) · `woodmart_create_html_block` (title req; content, status)
|
||
|
||
### b14 — Yoast SEO deep
|
||
Guard: `defined('WPSEO_VERSION')`. Beyond seo_* (b2): cornerstone, primary category, SEO/readability scores, Premium redirects, sitemap state. Test pending on a Yoast site. Inert where Yoast absent.
|
||
`yoast_detect` · `yoast_get_meta` (post_id req) · `yoast_set_meta` (post_id req; title/metadesc/focuskw/canonical/og_*/cornerstone/primary_category/noindex/nofollow) · `yoast_bulk_audit` (post_types, per_page) · `yoast_list_redirects` (Premium)
|
||
|
||
### b15 — Wordfence security
|
||
Guard: WORDFENCE_VERSION / wfConfig. Reads wf* tables (Issues/Blocks7/Logins) + wfConfig; block via wfBlock::createIP. Test pending on a Wordfence site. Inert where Wordfence absent.
|
||
`wordfence_status` · `wordfence_scan_issues` (status new|all, limit) · `wordfence_blocked_ips` (limit) · `wordfence_recent_logins` (limit, failed_only) · `wordfence_block_ip` (ip req; reason)
|
||
|
||
### b16 — WPML write/deep
|
||
Guard: `defined('ICL_SITEPRESS_VERSION')`. Official WPML action API. Smoke-tested on mainwp (trid linkage verified).
|
||
`wpml_set_post_language` (post_id+language_code req; trid, source_language) · `wpml_copy_to_language` (source_id+target_language req; status) · `wpml_connect_translation` (source_id+translated_id+language_code req)
|
||
|
||
### b17 — Caching (unified)
|
||
Guard: none (per-engine detect). LiteSpeed (also Hostinger's stack), W3TC, WP Rocket, WP Super Cache, WP Fastest Cache, Autoptimize, object cache. **Hostinger hosting-level actions (DNS/SSL/deploy) are NOT here — those belong to a Hostinger connector, not a WP plugin.**
|
||
`cache_detect` · `cache_status` · `cache_purge_all` · `cache_purge_url` (url req)
|
||
|
||
### b18 — Elementor power (Pro-aware)
|
||
Guard: `defined('ELEMENTOR_VERSION')`. Pro pieces degrade gracefully. Tested on mainwp (Pro active).
|
||
`elementor_list_kits` · `elementor_list_library` (type, per_page — groups header/footer/single/archive/popup/page/section/…) · `elementor_get_conditions` (template_id req — Pro) · `elementor_get_dynamic_tags` · `elementor_get_form_submissions` (limit, form_name — Pro)
|
||
|
||
### b19 — WPBakery deep
|
||
Guard: `defined('WPB_VC_VERSION')`. Test pending on a js_composer site. Inert where WPBakery absent.
|
||
`wpbakery_list_templates` · `wpbakery_get_mapping` (tag req) · `wpbakery_render` (shortcode req; post_id) · `wpbakery_set_content` (post_id+content req) · `wpbakery_wrap` (content req; columns, row_attrs)
|
||
|
||
### b20 — WooCommerce deep
|
||
Guard: `class_exists('WooCommerce')`. Beyond the 27 baseline wc_* tools. Tested on mainwp.
|
||
`wc_list_product_categories` (parent, search, per_page) · `wc_create_product_category` (name req; slug, parent, description) · `wc_list_payment_gateways` · `wc_list_shipping_zones` · `wc_list_tax_rates` (class, limit) · `wc_get_settings` (group general|products|tax|account|email req) · `wc_add_order_note` (order_id+note req; customer_note) · `wc_create_refund` (order_id req; amount, reason, restock) · `wc_sales_report` (date_from, date_to, statuses) · `wc_list_product_reviews` (product_id, per_page)
|
||
|
||
---
|
||
|
||
## Core / baseline tools (index)
|
||
|
||
Pre-existing tools, counted by name prefix. Full per-arg detail is the live registry — regenerate with the scripts below for the exhaustive listing.
|
||
|
||
`activate_*` (1) · `add_*` (1) · `ai_*` (1) · `approve_*` (1) · `cli_*` (2) · `count_*` (3) · `create_*` (6) · `deactivate_*` (1) · `delete_*` (11) · `elementor_*` (56) · `email_*` (3) · `fs_*` (5) · `generate_*` (2) · `get_*` (31) · `list_*` (13) · `pexels_*` (2) · `read_*` (1) · `reorder_*` (1) · `run_*` (1) · `search_*` (1) · `send_*` (1) · `set_*` (2) · `spam_*` (1) · `sql_*` (3) · `switch_*` (1) · `theme_*` (7) · `transient_*` (5) · `trash_*` (1) · `update_*` (13) · `upload_*` (1) · `wc_*` (27) · `widget_*` (5) · `wp_*` (1) · `write_*` (1)
|
||
|
||
Baseline prefixes include the 57-tool `elementor_*` core set and the 27-tool `wc_*` WooCommerce set, plus core WordPress CRUD (posts, pages, media, users, terms, menus, comments, options, transients), fs, sql, cli, theme, widget, seo, pexels and generate families.
|
||
|
||
---
|
||
|
||
## Regenerating this file
|
||
1. `/tmp/dev_dump_defs.php` — bootstraps wp-load, calls getToolDefinitions(), writes amp_defs.json.
|
||
2. `/tmp/dev_gen_skills.js` — formats it (batch map b1–b20 documented in full + core prefix index).
|
||
Re-run both whenever a batch is added.
|
||
|
||
_End of reference._
|