seo-ahrefs
Ahrefs API analyst (extension). Reads referring domains, backlinks, organic keywords, and content explorer data via the tested…
Analyze one supplied URL across on-page, content, technical metadata, schema, images, and performance. Use only for a single-page review.
Claude Code
$ npx -y skills add AgriciDaniel/claude-seo --skill seo-page --agent claude-code
Codex
$ npx skills add AgriciDaniel/claude-seo --skill seo-page -a codex -y
Cursor
$ npx skills add AgriciDaniel/claude-seo --skill seo-page -a cursor -y
Gemini CLI
$ npx skills add AgriciDaniel/claude-seo --skill seo-page -a gemini-cli -y
GitHub Copilot
$ npx skills add AgriciDaniel/claude-seo --skill seo-page -a github-copilot -y
OpenCode
$ npx skills add AgriciDaniel/claude-seo --skill seo-page -a opencode -y
Windsurf
$ npx skills add AgriciDaniel/claude-seo --skill seo-page -a windsurf -y
name: seo-page description: > Analyze one supplied URL across on-page, content, technical metadata, schema, images, and performance. Use only for a single-page review. user-invocable: true argument-hint: "[url]" license: MIT metadata: author: AgriciDaniel version: "2.6.0" category: seo
Run this first. It does the mechanical on-page checks in code, so they are repeatable and you do not recount them from the HTML by hand:
`"${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run page_checks.py --url <url>`
For saved HTML (no network request; `--headers-json` is optional):
`"${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run page_checks.py --file page.html --base-url <url> --headers-json headers.json`
For a JavaScript-rendered page, save the rendered HTML first with `"${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run fetch_page.py <url> --render auto --output page.html`, then use `--file`.
The JSON holds `facts` (lengths and counts), `findings` (each with a stable `id`, a `severity`, a `message` and the `evidence` that triggered it), `not_checked`, `thresholds`, and a `summary` count per severity. An `X-Robots-Tag` rule addressed to a crawler other than Googlebot is not a finding; it is listed in `facts.x_robots_other_agents`, so mention it when the user cares about that crawler. It covers 47 checks:
| Area | Finding ids | |------|-------------| | Title, description | `missing-title`, `title-too-long`, `title-too-short`, `missing-meta-description`, `meta-description-too-long`, `duplicate-meta-tags` | | Headings | `missing-h1`, `multiple-h1`, `heading-level-skip` (main content only) | | Canonical, robots | `missing-canonical`, `canonical-points-elsewhere`, `og-url-differs-from-canonical`, `noindex`, `noindex-header`, `nofollow`, `meta-refresh-redirect`, `hreflang-missing-self` | | Document basics | `missing-doctype`, `missing-charset`, `charset-mismatch`, `missing-lang`, `missing-viewport`, `uses-frames`, `deprecated-html-tags`, `placeholder-text` | | Images | `images-missing-alt`, `images-missing-dimensions`, `first-image-lazy-loaded` | | Links | `links-without-text`, `generic-anchor-text`, `links-to-http`, `mixed-content` | | URL | `url-too-long`, `url-has-parameters`, `url-uppercase`, `url-underscores`, `url-non-ascii`, `url-double-slash` | | Size | `html-over-2mb`, `deep-dom`, `wide-dom-node` | | Social, schema | `missing-open-graph`, `missing-og-image`, `invalid-jsonld` | | Content | `title-not-reflected-in-content`, `description-not-reflected-in-content`, `thin-content` |
How to use the result:
not re-derive a check the script ran. An id that appears in neither `findings` nor `not_checked` passed.
explain why in plain language, quoting the evidence. A `noindex` on a thank-you page is intended, `thin-content` on a contact page is fine, and `multiple-h1` rarely matters on its own.
Issues Found below). Raise or lower it when the page context justifies it, and say why.
display-truncation heuristics. Google publishes no title or description length limit: say "may be truncated in results", never "too long for Google".
`--file`; word counts on Chinese, Japanese or Thai text). Report them as not checked, never as passed.
page type minimum in quality-gates.md yourself.
Handling below.
The sections below list everything a page review covers. Where the script has a finding id for an item, use its result; the rest still needs your own analysis.
`"${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run metadata_template.py --title "<title>" --description "<desc>" --json` (heuristic, deterministic string comparison). A description that opens by repeating its own title and closes on a stock CTA ("Try it free now.", "Start free!") is templated metadata, the shape bulk generation jobs produce site-wide, and duplicated or templated metadata is a documented content-quality problem regardless of how original the body copy is
Universal SEO skill for Claude Code. 26 sub-skills + 19 sub-agents covering technical SEO, E-E-A-T, schema, GEO/AEO, agent readiness (Lighthouse Agentic Browsing, WebMCP, llms.txt), backlinks, local SEO, e-commerce, international SEO, Google APIs, and PDF/Excel reporting. 9 optional extensions for live SEO data.
Ahrefs API analyst (extension). Reads referring domains, backlinks, organic keywords, and content explorer data via the tested…
AI image generation for SEO assets: OG/social preview images, blog hero images, schema images, product photography, infographics.…
Bing Webmaster Tools + IndexNow extension. Microsoft Copilot citations are fed by the Bing index; this skill makes Bing…
Live SEO data via DataForSEO MCP server: SERP analysis, keyword research (volume, difficulty, intent, trends), backlink profiles,…
Full-site crawling, scraping, and site mapping via Firecrawl MCP. Use when user says "crawl site", "map site", "full crawl",…
Matomo Reporting API extension. Self-hosted or Matomo Cloud analytics as a GA4 alternative or complement. Organic traffic,…
When the user wants to plan, design, or implement an A/B test or experiment, or build a growth experimentation program. Also use…
Turn the current project website into a short, polished, shareable launch video using Hyperframes. Use when someone says "/brag",…
Full website GEO+SEO audit with parallel subagent delegation. Orchestrates a comprehensive Generative Engine Optimization audit…
Build an immersive scroll-scrubbed "fly through the world" landing page for any industry or brand using Higgsfield. As the…