Mmcp.market

seo-sxo skill

by AgriciDaniel·AgriciDaniel/claude-seo·18k stars·MIT

Diagnose search-experience and intent mismatches using SERP page types, user stories, and persona scoring. Use when ranking problems appear intent- or layout-driven.

A100/100content scan

Is the seo-sxo skill safe?

Clean: nothing in its files matched our rules. We read 5 files in the folder on 2026-09-28.

No findings.

Install the seo-sxo skill

A skill is a folder. Copy it into your agent's skills folder and the agent loads it when the task matches its description.

git clone --depth 1 https://github.com/AgriciDaniel/claude-seo.git /tmp/claude-seo
mkdir -p ~/.claude/skills
cp -r /tmp/claude-seo/skills/seo-sxo ~/.claude/skills/seo-sxo
available in every project

In the Claude apps, zip the folder and upload it from the Skills settings. The folder on GitHub

The instructions your agent would load

SKILL.md as published, without the frontmatter. Read it on GitHub

Search Experience Optimization (SXO)

SXO bridges the gap between SEO (what Google rewards) and UX (what users need). Traditional SEO audits check technical health. SXO asks: "Does this page deserve to rank for this keyword based on what Google is actually rewarding in the SERP?"

Core Insight

A page can score 95/100 on technical SEO and still fail to rank because it is the wrong page type for the keyword. If Google shows 8 product pages and 2 comparison pages for your keyword, your blog post will never break through -- no matter how well-optimized it is.

Commands

Execution Pipeline

Step 1: Target Acquisition

headings hierarchy, word count, schema markup, CTAs, media elements

  1. Fetch the target URL via "${CLAUDEPLUGINROOT}/scripts/claude-seo" run render_page.py --mode auto (SPA-aware and SSRF-safe)
  2. Parse with "${CLAUDEPLUGINROOT}/scripts/claude-seo" run parse_html.py to extract: title, H1, meta description,
  1. If no keyword provided, extract primary keyword from title tag + H1 overlap
  2. Validate keyword is non-empty before proceeding

Step 2: SERP Backwards Analysis

Read references/page-type-taxonomy.md for classification rules.

  1. Search Google for the target keyword (WebSearch)
  2. For each of the top 10 organic results, record:
  • URL and domain authority tier (brand / niche authority / unknown)
  • Page type (classify using taxonomy)
  • Content format (long-form, listicle, how-to, comparison, tool, video)
  • Word count estimate (from snippet length and page structure)
  • Schema types present (from currently supported SERP features; exclude FAQ/HowTo)
  • Media signals (video carousel, image pack, thumbnail presence)
  1. Record SERP features present:
  • Featured snippet (paragraph / list / table / video)
  • People Also Ask (extract all visible questions)
  • Ads (top and bottom -- count and analyze ad copy themes)
  • Related searches (extract all)
  • Knowledge panel / local pack / shopping results
  • AI Overview presence and source types
  1. Calculate SERP consensus:
  • Dominant page type (>60% = strong consensus, 40-60% = mixed, <40% = fragmented)
  • Content depth expectations (average word count tier)
  • Schema expectation (most common structured data types)
  • Media expectations (video required? images critical?)

Step 3: Page-Type Mismatch Detection

This is the core SXO insight. Compare target page type against SERP consensus.

Mismatch severity levels:

Classification rules:

  • Classify target page using references/page-type-taxonomy.md
  • Classify each SERP result using the same taxonomy
  • Flag mismatch if target type differs from SERP dominant type
  • If SERP is fragmented (no dominant type), note opportunity for differentiation

Step 4: User Story Derivation

Read references/user-story-framework.md for the full framework.

From SERP signals, derive user stories:

  1. PAA questions reveal knowledge gaps and concerns
  2. Ad copy themes reveal commercial triggers and value propositions
  3. Related searches reveal the search journey (what comes before/after)
  4. Featured snippet format reveals the expected answer structure
  5. AI Overview reveals what Google considers the definitive answer

For each signal cluster, generate a user story:

As a [persona derived from signal],
I want to [goal derived from query intent],
because [emotional driver from ad copy / PAA tone],
but I'm blocked by [barrier derived from PAA questions / related searches].

Generate 3-5 user stories covering the primary intent angles.

Step 5: Gap Analysis

Compare the target page against SERP expectations across 7 dimensions:

Total: 0-100 SXO Gap Score (lower = larger gap, higher = better alignment)

Step 6: Persona-Based Scoring

Read references/persona-scoring.md for methodology.

  1. Derive 4-7 personas from SERP intent signals:
  • Cluster PAA questions by theme
  • Segment ad copy by target audience
  • Map related searches to journey stages
  1. For each persona, score the target page on 4 dimensions (25 pts each):
  • Relevance: Does the page address this persona's need?
  • Clarity: Can this persona find their answer within 10 seconds?
  • Trust: Are there adequate trust signals for this persona?
  • Action: Is there a clear next step for this persona?
  1. Output persona cards with scores and specific improvement recommendations
  2. Sort recommendations by weakest persona first (biggest opportunity)

Step 7: Wireframe Generation (Optional)

Only execute when /seo sxo wireframe is invoked.

Read references/wireframe-templates.md for templates.

  1. Generate IST (current state) wireframe from parsed page structure
  2. Generate SOLL (target state) wireframe based on:
  • SERP consensus page type
  • Gap analysis findings
  • Persona scoring weaknesses
  1. Use ultra-concrete placeholders:
  • NOT: "Add a CTA here"
  • YES: "Add pricing CTA with annual savings badge below hero, linking to /pricing#enterprise"
  1. Output as semantic HTML section outline with annotations

DataForSEO Integration

If DataForSEO MCP tools are available:

  1. Before any API call, run cost estimate and confirm with user
  2. Use serporganiclive_advanced for precise SERP data (positions, features, snippets)
  3. Use kwdatagoogleadssearch_volume for search volume and competition metrics
  4. Fall back to WebSearch if DataForSEO unavailable -- note reduced precision in output

SXO Score vs SEO Health Score

The SXO score is separate from the main SEO Health Score.

  • SEO Health Score = technical compliance (crawlability, speed, schema, etc.)
  • SXO Gap Score = alignment between page and SERP expectations
  • A page can score 95 SEO + 30 SXO = technically perfect but strategically misaligned
  • Both scores should be reported together when both are available

Cross-Skill References

Output Format

Full SXO Analysis

## SXO Analysis: [URL]
### Target Keyword: [keyword]

### 1. SERP Landscape
- Dominant page type: [type] ([confidence]% consensus)
- SERP features: [list]
- Content depth norm: [word count range]
- Schema expectation: [types]

### 2. Page-Type Alignment
- Your page type: [type]
- SERP expects: [type]
- Verdict: [ALIGNED | MISMATCH (severity)]
- Impact: [explanation]

### 3. User Stories (derived from SERP signals)
[3-5 user stories with source signals]

### 4. Gap Analysis (SXO Score: XX/100)
[7-dimension breakdown table]

### 5. Persona Scores
[4-7 persona cards with 4-dimension scores]

### 6. Priority Actions
[Ranked list: fix mismatch first, then weakest persona gaps]

### 7. Limitations
[What could not be assessed, data source notes]

Error Handling

Quality Checklist

More skills from AgriciDaniel/claude-seo

  • AseoComprehensive SEO analysis for any website or business type. Full site audits, single-page analysis, technical SEO (crawlability, indexability, Core Web Vitals with INP), schema markup, content quality (E-E-A-T), image optimization, sitemap analysis, and GEO for AI Overviews/ChatGPT/Perplexity. Industry detection for SaaS, e-commerce, local, publishers, agencies. Triggers on: SEO, audit, schema, Core Web Vitals, sitemap, E-E-A-T, AI Overviews, GEO, technical SEO, content quality, page speed. Use this hub only when the SEO domain is clear and the requested workflow is not; otherwise use the exact retained leaf or command.
  • Aseo-agenticAudit and fix agent readiness: the Lighthouse Agentic Browsing fraction, accessibility tree for agents, robots.txt and Content-Signal for AI agents, WAF treatment of agent traffic, llms.txt, Markdown delivery, ai-catalog.json, /.well-known discovery files, and WebMCP tools. Exclude AI citability and brand signals (seo-geo) and commerce protocol depth (seo-ecommerce).
  • Aseo-ahrefsAhrefs API analyst (extension). Reads referring domains, backlinks, organic keywords, and content explorer data via the tested @ahrefs/mcp@0.0.11 server. Pairs with seo-backlinks for multi-source confidence weighting.
  • Aseo-auditRun a full-site SEO audit and return a scored, prioritized report. Use only for site-wide checks; use seo-page for one URL or seo-technical for a technical-only review.
  • Aseo-backlinksAnalyze a site's backlink profile, anchors, toxic signals, competitors, gaps, and disavow candidates. Use only when links or referring domains are the requested focus.
  • Aseo-bingBing Webmaster Tools + IndexNow extension. Microsoft Copilot citations are fed by the Bing index; this skill makes Bing visibility, link data, and IndexNow URL submission first-class.
  • Aseo-clusterCluster keywords by SERP overlap and design hub-and-spoke content architecture with internal links. Use for planning only; use the blog-cluster command to execute article production.
  • Aseo-competitor-pagesGenerate SEO-optimized competitor comparison and alternatives pages. Covers "X vs Y" layouts, "alternatives to X" pages, feature matrices, schema markup, and conversion optimization. Use when user says "comparison page", "vs page", "alternatives page", "competitor comparison", "X vs Y", "versus", "compare competitors", or "alternative to".
  • Aseo-contentEvaluate page content for usefulness, E-E-A-T, readability, thinness, and AI citation readiness, plus last-mile draft cleanup (AI-typical phrasing and invisible Unicode watermark characters). Use for content-only analysis, not full-page technical checks.
  • Aseo-content-briefGenerate competitive SEO content briefs with per-section word counts, competitor scoring, keyword density guidance, and page-type templates. Supports both new page briefs and improve-existing-page briefs. Use when user says "content brief", "write a brief", "content outline", "blog brief", "service page brief", "brief for", "writing brief", "content plan", or "outline for".
  • Aseo-dataforseoLive SEO data via DataForSEO MCP server: SERP analysis, keyword research (volume, difficulty, intent, trends), backlink profiles, on-page analysis, competitor and content analysis, business listings, AI visibility (LLM mention tracking), and domain analytics. Requires DataForSEO extension installed. Use when user says "dataforseo", "live SERP", "keyword volume", "backlink data", "AI visibility check", or "real search data".
  • Aseo-dataforseoLive SEO data via DataForSEO MCP server: SERP analysis, keyword research (volume, difficulty, intent, trends), backlink profiles, on-page analysis, competitor and content analysis, business listings, AI visibility (LLM mention tracking), and domain analytics. Requires DataForSEO extension installed. Use when user says "dataforseo", "live SERP", "keyword volume", "backlink data", "AI visibility check", or "real search data".

All agent skills → · MCP servers