Seo audit
Claude Code plugin marketplace: qa-suite — end-to-end QA (API, E2E, SEO, security, payments) for Next.js + Supabase + Stripe apps
npx -y skills add Marcdaou/claude-qa-suite --skill seo-auditAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 0 stars0 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Audit web pages for on-page SEO health — title and meta tags, heading structure, canonical/robots directives, Open Graph and Twitter cards, structured data (JSON-LD), image alt text, and crawlability signals. Use this skill whenever the user wants an SEO audit, an SEO check, to improve search ranking, to validate metadata or structured data, or asks why pages aren't ranking or showing rich results. Trigger on casual asks like "check the SEO on my listings pages" too.
SKILL.md
3.3 KB, as published. Nobody here has run it
SEO Audit
An SEO audit answers a concrete question: when a search engine or social platform
fetches this page, does it find everything it needs to index and present it well?
For a rentals app this matters per page type — the homepage, the search results
page, and the individual listing pages each have different SEO needs (a listing
page should carry Product/Accommodation structured data; the homepage carries
Organization).
This skill is self-contained — it does not depend on any external SEO service. It fetches the rendered HTML and checks it against what crawlers actually look for.
Workflow
-
Pick the targets. Get the URL(s) from the user — the live Vercel URL is best since that's what Google sees. Audit at least one of each page type, not just the homepage. A rentals site's value is in the listing pages.
-
Run the auditor (Python stdlib, no dependencies):
python3 ${CLAUDE_PLUGIN_ROOT}/scripts/seo/audit_page.py <url> [<url> ...]It fetches each URL and reports, per page: title (presence + length), meta description (presence + length),
<h1>count, canonical link, robots meta, Open Graph + Twitter card tags, JSON-LD blocks (and whether they parse), image count vs. images missingalt, andlangon<html>. It also fetches/robots.txtand/sitemap.xmlfrom the origin and reports whether they exist. -
Interpret against the rules. The script flags facts; you apply judgment. See
references/checklist.mdfor the thresholds (good title length, when a missing canonical matters, which structured-data type each page type needs) and the GEO/AI-search considerations (clean headings and JSON-LD also drive AI Overviews and ChatGPT citations). -
Report findings, ranked by impact. Lead with what blocks indexing or rich results (missing title,
noindexleft on by accident, broken JSON-LD), then on-page quality (thin descriptions, multiple/zero h1s, missing alt text), then nice-to-haves. For each finding give the concrete fix, and where useful the exact tag to add.
Note on client-rendered pages
A Next.js page rendered entirely on the client may serve a near-empty HTML shell to
the raw fetch the script does. If the script reports missing title/meta but the page
looks fine in a browser, that is the finding: the metadata isn't in the initial
HTML, so crawlers that don't execute JS may miss it. Recommend moving metadata into
the server-rendered output (Next.js generateMetadata) and verify by re-running.
When to hand off to the agent
For "audit the whole site's SEO", delegate to the seo-auditor agent — it discovers the page types, runs the auditor across representative URLs, cross-checks structured data, and returns a prioritized report.