SEO & Accessibility toolkit
Shipping since v1.8.0. Pro. Everything here reads the page’s real, live Elementor structure, headings, images, links, contrast, rather than asking an LLM to guess. No external API calls, no per-audit cost. All 7 tools are off by default.
This is distinct from the per-plugin SEO integrations, which read and write whatever your SEO plugin (Yoast, Rank Math, …) already stores. This toolkit analyses and generates; the SEO integrations read and set stored fields. generate-meta-tags, set-social-image, and generate-schema-markup below write through to whichever SEO plugin is active, so the two work together.
emcp-tools/audit-page-seo
Section titled “emcp-tools/audit-page-seo”Scored on-page SEO report: H1, title/meta length, canonical, heading hierarchy, image alts, internal links, word count, and optional target-keyword usage. Read-only.
Input: post_id (required), target_keyword (optional).
emcp-tools/extract-keywords-from-content
Section titled “emcp-tools/extract-keywords-from-content”Extracts the most frequent meaningful keywords and two-word phrases from a page’s text (stop-word filtered, no external service). Useful for choosing a target keyword before auditing or generating meta tags. Read-only.
Input: post_id (required), limit (optional, default 20).
emcp-tools/generate-meta-tags
Section titled “emcp-tools/generate-meta-tags”Proposes an SEO title (≤60 chars) and meta description (≤155 chars) from the page content, keyword-front-loaded when a target keyword is given. Dry-run by default; apply: true writes them to the active SEO plugin (Yoast / Rank Math).
Input: post_id (required), target_keyword (optional), apply (default false).
emcp-tools/set-social-image
Section titled “emcp-tools/set-social-image”Sets the Open Graph + Twitter/X share image for a page, so link previews render the image you choose. Writes the explicit meta the active SEO plugin needs, without it, some plugins keep using the first image found in the content even after a featured image is assigned.
Input: post_id (required), image_id (Media Library attachment, preferred) and/or image_url.
emcp-tools/generate-schema-markup
Section titled “emcp-tools/generate-schema-markup”Generates JSON-LD structured data: Article, LocalBusiness, FAQPage, Service, Product, or auto to infer the type. Dry-run by default; apply: true injects it into the page via a managed HTML widget (replaced in place on re-apply).
Input: post_id (required), type (default auto), business (NAP object for LocalBusiness: name/address/phone/etc.), faqs (array of { question, answer } for FAQPage), apply (default false).
Accessibility
Section titled “Accessibility”emcp-tools/audit-page-a11y
Section titled “emcp-tools/audit-page-a11y”Scored WCAG-oriented report: color contrast (best-effort), missing image alt text, heading hierarchy, generic link text, form-label coverage. Read-only.
Input: post_id (required).
emcp-tools/fix-color-contrast
Section titled “emcp-tools/fix-color-contrast”Proposes adjusted text colors so failing text/background pairs meet WCAG AA. Dry-run by default; apply: true writes the changes (reversible via Elementor revisions).
Input: post_id (required), element_id (optional, limit to one element), target_ratio (default 4.5), apply (default false).
emcp-tools/add-alt-text-from-context
Section titled “emcp-tools/add-alt-text-from-context”Proposes alt text for images that lack it, derived from the filename, the nearest heading, or the page title. No AI call. Dry-run by default; apply: true writes to the Media Library alt field and the image widget.
Input: post_id (required), apply (default false).
Permissions
Section titled “Permissions”All 7 tools require an active Pro license and ship disabled by default. Enable them on EMCP Tools → Tools. Read tools (audit-*, extract-keywords-from-content) require edit_posts; the generate/fix tools require edit_posts plus the target page’s own edit permission.