Bỏ qua để đến nội dung

All MCP tools

Nội dung này hiện chưa có sẵn bằng ngôn ngữ của bạn.

Generated from a live tools/list call on https://seo-navigator-mcp.autumn-recipe-cac7.workers.dev/mcp at 2026-05-26.

Total surface: 108 tools — 32 built-in + 76 proxy (from wp-mcp-adapter on the linked WordPress site).

See Tokens & scoping for how to control what a token can call.

These tools are part of the SEO Navigator worker itself. They are always available regardless of which sites a token is scoped to (as long as the tool’s required platform credentials are configured).

ToolDescription
list_sitesList sites this token can access.
get_siteGet one site’s full configuration: platform, base URL, builders, MCP backend, and any linked GitHub repo (with branch + path prefix).
ping_siteVerify auth + connectivity to a site.
diagnose_siteReport the install state of a WordPress site: WP REST OK, Elementor active+version, functions.php snippet applied (meta._elementor_data exposed via REST), WP MCP Adapter + msrbuilds/elementor-mcp installed. Use this BEFORE asking the user to enable Elementor or wp-mcp-adapter mode.
list_builders_for_siteList the page builders enabled for a WordPress site. Returns { available: [“gutenberg”, “elementor”], default: “gutenberg”, multiple: true }. Call this BEFORE create_page_draft when you have not yet asked the user which builder to use — if multiple is true, ask the user; if false, the only available builder is implied.
ToolDescription
get_postFetch one post (any status).
list_draftsList drafts and scheduled posts (never published).
ToolDescription
create_draftCreate a new draft post on the given site.
update_draftUpdate fields of an existing draft.
schedule_draftSchedule a draft to publish at a future ISO8601 time (>= 60s lead).
unscheduleReturn a scheduled post to draft state.
upload_mediaUpload an image to a site (WordPress only currently).
list_taxonomiesList tags or categories on a site (WordPress only).
create_taxonomyCreate a new tag or category (WordPress only).
ToolDescription
create_page_draftCreate a new draft Page. WordPress: per-request ‘page_builder’ overrides the site default (gutenberg|elementor); Elementor needs elementor_template_id + variables. Duda: pages are created with draft_status=DRAFT and never auto-publish.
update_page_draftUpdate fields of an existing Page draft. WordPress + Elementor: providing elementor_template_id + variables re-clones from template. Duda: set publish_on_next_site_publish=true to flip to STAGED_DRAFT (publishes on next site update); omit it to keep the page in DRAFT.
schedule_pageSchedule a draft Page (WordPress only) to publish at a future ISO8601 time (>= 60s lead). Duda has no time-based page schedule — use update_page_draft with publish_on_next_site_publish=true instead.
list_page_templatesList Elementor page templates available for duplicate-and-fill. Returns id, title, and placeholders (e.g. {{HERO_H1}}) for each template. Gutenberg + Duda sites return [].
ToolDescription
duplicate_pageDuplicate an existing Duda page into a new DRAFT page. Returns the new page’s uuid. Duda only — for WordPress + Elementor templates use create_page_draft with elementor_template_id instead.
inject_page_sectionAppend a reusable SECTION element to a Duda page (Content Injection). element_source_id is the section’s site-alias as exposed by the Duda dashboard. Duda only.
ToolDescription
create_page_from_codeCreate a WordPress page from raw HTML + CSS + JS files (a “code page”). Use this when the user has hand-built a design in Claude Code and wants to deploy it as a WP page. The server auto-scopes CSS to a deterministic class derived from (site_id, slug), wraps HTML in a Gutenberg block, and stores CSS/JS as page meta. Requires the WP plugin seo-navigator-code-page to be installed on the target site (check with diagnose_site). WordPress only. Pages are always created as drafts.
update_page_from_codeUpdate an existing code page. Pass only the parts you want to change (html, css, js, title…). The scope class stays the same as long as slug is unchanged, so external CSS caches do not invalidate. WordPress only.
ToolDescription
save_md_to_githubSave a markdown document into the GitHub repo linked to a site. Creates or updates the file; pass sha when updating. Body MUST already include YAML frontmatter (use serializeMarkdown convention). Commit message is auto-prefixed with [content @]. Used by the content team.
read_md_from_githubRead a single markdown file from the GitHub repo linked to a site. Returns frontmatter object, body string, and sha (needed for subsequent updates). Used by both content (re-edit) and design (deploy) teams.
list_md_from_githubList markdown files in the GitHub repo linked to a site. Optional filter by status frontmatter (eg “ready-for-design”). Returns minimal records — call read_md_from_github for the body.
update_md_statusPatch the frontmatter of an existing markdown file (vd: status=“deployed”, append to deployments array). Body is preserved verbatim. Returns new sha.
deploy_md_to_siteRead a markdown file from GitHub and deploy it as a draft to a WordPress or Duda site. Dispatches by frontmatter.type (‘post’ → create_draft; ‘page’ → create_page_draft); body markdown is rendered to HTML. Optionally appends the new post_id to the file’s frontmatter.deployments array (use update_md_status afterwards to commit). Returns the new post/page ref.

Astro routes (deploy via Cloudflare Pages)

Section titled “Astro routes (deploy via Cloudflare Pages)”
ToolDescription
create_astro_routeCreate a new Astro page at a route in the linked Cloudflare Pages repo. Wraps the supplied HTML in an Astro template, writes src/pages/.astro on the configured branch, and Cloudflare auto-builds + deploys. Returns commit_sha — pass it to check_astro_deploy to poll build status. Refuses if the file already exists (use update_astro_route).
update_astro_routeOverwrite an existing Astro route. Same arg shape as create_astro_route plus an optional ‘sha’ for optimistic concurrency. The worker re-wraps the HTML and pushes a new commit. Refuses if the existing file was not generated by this server (no MCP marker), to avoid clobbering hand-written .astro files.
list_astro_routesList Astro pages in the linked Cloudflare Pages repo. Walks src/pages/**/*.astro from the configured branch and returns each route’s URL, file path, sha, and whether it was generated by this server.
delete_astro_routesuper-adminDelete an Astro page file from the linked Cloudflare Pages repo. SUPER-ADMIN TOKENS ONLY — regular-user tokens cannot use this even if the scope includes it. Refuses by default if the file was not generated by this server (no MCP marker); pass force=true to delete any .astro file. The file is removed from the configured branch — git history preserves it, so recovery is via git revert.
check_astro_deploy ⓞ optionalQuery Cloudflare Pages for the status of the latest deployment of a site, or the deployment matching a specific commit_sha. Returns status (pending|building|success|failure|canceled), stage, optional preview URL, and a log_url that points to the Cloudflare dashboard for debugging. Call this after create_astro_route / update_astro_route — the build usually finishes in 30-90 seconds. Optional tool: requires CLOUDFLARE_API_TOKEN + CLOUDFLARE_ACCOUNT_ID worker secrets; not visible if those are not set.

Legend

  • super-admin — tool is filtered out of regular-user token creation UI + refused at runtime if invoked by a non-super-admin token (see delete_astro_route exception)
  • optional — tool is conditionally hidden from tools/list unless the worker has the required env secrets set (eg CLOUDFLARE_API_TOKEN + CLOUDFLARE_ACCOUNT_ID for check_astro_deploy)

Sites with the wordpress/mcp-adapter plugin and one of its tool plugins (currently msrbuilds/elementor-mcp) installed expose their own MCP tool surface to the worker, which proxies it back to Claude. These tools change as you install new plugins on the site.

The list below is a snapshot — there are 76 proxy tools visible on this worker right now. Filtering happens in src/mcp/proxy-guardrails.ts — any delete-* or publish-* tool that targets a page/post/template is hidden from tools/list and refused at tools/call even if Claude tries to invoke it.

ToolDescription
elementor-mcp-add-accordionAdds an accordion widget. Supports title/content colors, background, border, typography (set title_typography_typography=custom), spacing, icon color, and FAQ schema. Accepts responsive suffixes and advanced controls. (site: viper-template)
elementor-mcp-add-alertAdds an alert/notice widget with type, title, and description. (site: viper-template)
elementor-mcp-add-atomic-buttonAdds an Elementor 4.0 atomic button element. (site: viper-template)
elementor-mcp-add-atomic-dividerAdds an Elementor 4.0 atomic divider element. (site: viper-template)
elementor-mcp-add-atomic-headingAdds an Elementor 4.0 atomic heading element. Accepts plain text and tag; $$type wrapping is handled automatically. (site: viper-template)
elementor-mcp-add-atomic-imageAdds an Elementor 4.0 atomic image element. Provide either image_id (from media library) or image_url. (site: viper-template)
elementor-mcp-add-atomic-paragraphAdds an Elementor 4.0 atomic paragraph element. (site: viper-template)
elementor-mcp-add-atomic-svgAdds an Elementor 4.0 atomic SVG element. (site: viper-template)
elementor-mcp-add-atomic-videoAdds an Elementor 4.0 atomic self-hosted video element. (site: viper-template)
elementor-mcp-add-atomic-widgetAdds any Elementor 4.0+ atomic widget to a container. Settings must use the $$type prop format. For simpler usage, prefer the convenience tools (add-atomic-heading, etc.). (site: viper-template)
elementor-mcp-add-atomic-youtubeAdds an Elementor 4.0 atomic YouTube video element. (site: viper-template)
elementor-mcp-add-buttonAdds a button widget. Supports typography (set typography_typography=custom), border, background, hover colors, box shadow, and text shadow. Accepts responsive suffixes and advanced controls. (site: viper-template)
elementor-mcp-add-containerAdds a container to a page. Supports both flex (default) and grid layouts via container_type. Omit parent_id for top-level, or provide a parent container ID for nesting. Flex tips: Use flex_direction=row for side-by-side children, flex_wrap=wrap for wrapping, flex_justify_content for main-axis alignment (e.g. space-between, center), flex_align_items for cross-axis alignment. (The shorthand justify_content / align_items are also accepted and remapped to flex_justify_content / flex_align_items.) Grid tips: Set container_type=grid with grid_columns_grid, grid_rows_grid, grid_gaps. Background: set background_background=classic and background_color=#hex. Border: set border_border=solid, border_width, border_color. Also supports min_height, overflow, html_tag, padding, margin, position, z_index, animation. (site: viper-template)
elementor-mcp-add-counterAdds an animated counter widget that counts up to a number. (site: viper-template)
elementor-mcp-add-custom-jsAdds a custom JavaScript snippet to a page by inserting an HTML widget containing a
elementor-mcp-add-div-blockAdds an Elementor 4.0 div-block container (block flow layout). Use for non-flex containers. (site: viper-template)
elementor-mcp-add-dividerAdds a horizontal divider/separator widget with style, weight, color, and width options. (site: viper-template)
elementor-mcp-add-flexboxAdds an Elementor 4.0 flexbox container. Layout properties (direction, justify, align, gap) are applied as local styles automatically. Use this instead of add-container for Elementor 4.0+ sites. (site: viper-template)
elementor-mcp-add-google-mapsAdds an embedded Google Maps widget with address, zoom, and height. (site: viper-template)
elementor-mcp-add-headingAdds a heading widget. Supports full typography (set typography_typography=custom first), text stroke, text shadow, blend mode, hover color. Also accepts responsive suffixes (align_tablet, align_mobile) and common advanced controls (_margin, _padding, background, border, etc). (site: viper-template)
elementor-mcp-add-htmlAdds a custom HTML code widget. (site: viper-template)
elementor-mcp-add-iconAdds an icon widget. Supports Font Awesome and SVG icons, view modes (default/stacked/framed), hover colors, rotate, padding, border radius, and hover animation. For SVG, first use upload-svg-icon. (site: viper-template)
elementor-mcp-add-icon-boxAdds an icon box widget. Supports icon position (top/left/right), title typography (set title_typography_typography=custom), description typography, icon spacing, hover colors, and hover animation. Accepts responsive suffixes and advanced controls. (site: viper-template)
elementor-mcp-add-icon-listAdds a list widget with icons and text. Great for feature lists, checklists, and contact info. (site: viper-template)
elementor-mcp-add-imageAdds an image widget. Supports width, max-width, opacity, border, border-radius, box shadow, CSS filters (brightness, contrast, saturation, hue), and hover effects. Accepts responsive suffixes and advanced controls. (site: viper-template)
elementor-mcp-add-image-boxAdds an image box widget with image, title, and description. Great for service cards. (site: viper-template)
elementor-mcp-add-image-carouselAdds a rotating image carousel/slider widget. (site: viper-template)
elementor-mcp-add-menu-anchorAdds a menu anchor for one-page navigation. (site: viper-template)
elementor-mcp-add-progressAdds an animated progress bar widget with label and percentage. (site: viper-template)
elementor-mcp-add-ratingAdds a star/icon rating widget. (site: viper-template)
elementor-mcp-add-shortcodeAdds a WordPress shortcode widget. (site: viper-template)
elementor-mcp-add-social-iconsAdds social media icon links. Great for headers and footers. (site: viper-template)
elementor-mcp-add-spacerAdds a spacer widget for vertical spacing between elements. (site: viper-template)
elementor-mcp-add-star-ratingAdds a star rating display widget. (site: viper-template)
elementor-mcp-add-stock-imageSearches Openverse for an image, downloads it to the Media Library, and adds it as an image widget to the page — all in one step. Defaults to landscape (wide) images for consistent layouts. Combines search-images + sideload-image + add-image. (site: viper-template)
elementor-mcp-add-tabsAdds a tabbed content widget with horizontal or vertical layout. (site: viper-template)
elementor-mcp-add-testimonialAdds a testimonial widget with quote, author name, job title, and image. (site: viper-template)
elementor-mcp-add-text-editorAdds a rich text editor widget. Supports typography (set typography_typography=custom), drop cap, text columns, and text color. Accepts responsive suffixes and advanced controls. (site: viper-template)
elementor-mcp-add-text-pathAdds curved/path text widget. (site: viper-template)
elementor-mcp-add-toggleAdds a toggle widget (multiple items can be open). Supports title/content colors, background, border, typography (set title_typography_typography=custom), spacing, and icon color. Accepts responsive suffixes and advanced controls. (site: viper-template)
elementor-mcp-add-videoAdds a video widget. Supports YouTube, Vimeo, Dailymotion, self-hosted. Options: start/end time, lazy load, privacy mode, image overlay, play icon. Accepts responsive suffixes and advanced controls. (site: viper-template)
elementor-mcp-add-widgetAdds any Elementor widget to a container. Use get-widget-schema to discover the available settings for each widget type. (site: viper-template)
elementor-mcp-apply-templateApplies a saved Elementor template to a page at a given position, inserting its elements with fresh IDs. (site: viper-template)
elementor-mcp-batch-updateUpdates multiple elements in a single save operation. Each operation specifies an element_id and settings to merge. Much more efficient than calling update-element multiple times. (site: viper-template)
elementor-mcp-build-pageCreates a complete Elementor page from a declarative structure in a single call. Supports nested containers and any widget types. IMPORTANT LAYOUT RULES: (1) For side-by-side columns, use a parent container with flex_direction=row — children are auto-set to content_width=full with equal percentage widths (e.g. 2 children = 50%, 3 = 33.33%). (2) NEVER set flex_wrap or _flex_size in settings — these cause layout overflow. The tool handles layout automatically. (3) Background colors: set background_background=classic and background_color=#hex on containers. (4) Background images: set background_background=classic, background_image={url,id}, background_size=cover. (5) Background overlay: background_overlay_background=classic, background_overlay_color=#hex, background_overlay_opacity={size:0.7,unit:px}. (6) Text alignment: text_align on text/heading widgets. (7) Use search-images and sideload-image tools to get real images before building. (site: viper-template)
elementor-mcp-create-pageCreates a new WordPress page with Elementor enabled. Optionally provide initial element content. (site: viper-template)
elementor-mcp-detect-elementor-versionReturns the Elementor version and whether atomic elements (v4.0+) are supported. Call this first to decide whether to use legacy tools (add-heading, add-container) or atomic tools (add-atomic-heading, add-flexbox). (site: viper-template)
elementor-mcp-duplicate-elementDuplicates an element (including all children) with fresh IDs. The duplicate is placed immediately after the original. (site: viper-template)
elementor-mcp-export-pageExports a page’s full Elementor data as a JSON structure that can be imported elsewhere. (site: viper-template)
elementor-mcp-find-elementSearches elements on a page by type, widget type, or settings content. Returns matching element IDs, types, and a settings preview. (site: viper-template)
elementor-mcp-get-container-schemaReturns JSON Schema for all container controls (flex + grid), including flex_direction, justify_content, align_items, flex_wrap, gap, content_width, min_height, container_type, grid controls, background, border, padding, and more. (site: viper-template)
elementor-mcp-get-element-settingsReturns the current settings for a specific element on a page. Provide the post ID and element ID to retrieve all control values for that element. (site: viper-template)
elementor-mcp-get-global-settingsReturns the active Elementor kit/global settings including colors, typography, spacing, and breakpoints. These are the site-wide design tokens used across all pages. (site: viper-template)
elementor-mcp-get-page-structureReturns the element tree for an Elementor page, showing all containers, widgets, and their nesting structure. Each element includes its ID, type, widget type (for widgets), and child elements. (site: viper-template)
elementor-mcp-get-widget-schemaReturns the full JSON Schema for a widget type’s settings, describing all available controls and their types. Use this to discover what settings a widget accepts before creating or updating it. (site: viper-template)
elementor-mcp-import-templateImports a JSON template structure into a page at an optional position. (site: viper-template)
elementor-mcp-list-pagesReturns all WordPress pages and posts that are built with Elementor. Optionally filter by post type and status. (site: viper-template)
elementor-mcp-list-templatesReturns all saved Elementor templates from the template library. Optionally filter by template type (page, section, container). (site: viper-template)
elementor-mcp-list-widgetsReturns all registered Elementor widget types with their names, titles, icons, categories, and keywords. Optionally filter by widget category. (site: viper-template)
elementor-mcp-move-elementMoves an element to a new parent container and/or position within the page tree. (site: viper-template)
elementor-mcp-remove-elementRemoves an element and all its children from a page. (site: viper-template)
elementor-mcp-reorder-elementsReorders the children of a container by providing an ordered array of element IDs. All IDs must be direct children of the specified container. (site: viper-template)
elementor-mcp-save-as-templateSaves a page or a specific element as a reusable Elementor template. (site: viper-template)
elementor-mcp-search-imagesSearches Openverse (WordPress.org) for Creative Commons licensed images. Returns image URLs, thumbnails, licensing info, and attribution. Use the returned URLs with sideload-image or add-stock-image. (site: viper-template)
elementor-mcp-sideload-imageDownloads an external image URL into the WordPress Media Library and returns the local attachment ID and URL. Use this after search-images to import a chosen image. (site: viper-template)
elementor-mcp-update-atomic-widgetUpdates settings on an existing Elementor 4.0+ atomic widget. Performs a partial merge — only provided keys are changed. (site: viper-template)
elementor-mcp-update-containerUpdates settings on an existing container. Settings are merged (partial update). Supports all container controls: flex_direction, flex_justify_content, flex_align_items, flex_wrap, flex_align_content, gap, content_width, min_height, overflow, html_tag, container_type, grid controls, background (set background_background=classic first), border (set border_border=solid first), border_radius, box_shadow, padding, margin, position, z_index, animation, shape dividers, etc. (The unprefixed justify_content / align_items / align_content are accepted and remapped to the flex_-prefixed keys.) (site: viper-template)
elementor-mcp-update-elementUpdates settings on any element (container or widget). Settings are merged (partial update). Works for all element types — no need to know if the target is a container or widget. (site: viper-template)
elementor-mcp-update-global-colorsUpdates the site-wide color palette in the Elementor kit. Provide an array of color objects with id, title, and color (hex). (site: viper-template)
elementor-mcp-update-global-typographyUpdates the site-wide typography settings in the Elementor kit. (site: viper-template)
elementor-mcp-update-page-settingsUpdates page-level Elementor settings such as background, padding, custom CSS, and layout options. (site: viper-template)
elementor-mcp-update-widgetUpdates settings on an existing widget. Settings are merged (partial update). (site: viper-template)
elementor-mcp-upload-svg-iconUploads an SVG icon to the WordPress Media Library and returns an Elementor icon object ready to use with any widget that accepts icons (icon, icon-box, button, etc.). Accepts either an external SVG URL or raw SVG markup. The returned icon object has the format: { “value”: { “id”: 123, “url”: ”…” }, “library”: “svg” }. Use this value for the selected_icon setting in icon/icon-box widgets, or the selected_icon setting in button widgets. (site: viper-template)
mcp-adapter-discover-abilitiesDiscover all available WordPress abilities in the system. Returns a list of all registered abilities with their basic information. (site: viper-template)
mcp-adapter-execute-abilityExecute a WordPress ability with the provided parameters. This is the primary execution layer that can run any registered ability. (site: viper-template)
mcp-adapter-get-ability-infoGet detailed information about a specific WordPress ability including its input/output schema, description, and usage examples. (site: viper-template)

This file is regenerated by running

Terminal window
node scripts/gen-tools-reference.mjs <bearer-token>

from the seo-navigator-mcp repository. The script hits tools/list on the production worker and overwrites seo-navigator-docs/src/content/docs/reference/tools.md.