agentsclimarketplace

Seo ahrefs content gap

Skill lionkiii/claude-seo-skills/skills/seo-ahrefs-content-gap

Find keywords that competitors rank for but the target domain does not, using Ahrefs data. Reveals content opportunities and topic gaps. Use when user says "content gap", "keywords competitors rank for", "missing keywords", "competitor keywords", or "content gap analysis".From its SKILL.md

Install
npx -y skills add lionkiii/claude-seo-skills --skill seo-ahrefs-content-gap

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

3 things to look at

  • reads credentialsReads from 1 credential source: `~/.claude/mcp.json`.
  • 20 stars20 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.
  • runs commandsInstructs the agent to run 1 command, including `cat ~/.claude/mcp.json | grep -i ahrefs`.

SKILL.md

5.1 KB, ~1.2k tokens by cl100k_base, as published. Nobody here has run it

Ahrefs Content Gap Analysis

Discovers keywords competitors rank for that the target domain does not, revealing content opportunities. Uses runtime schema discovery to choose the best available Ahrefs tool.

References

@skills/seo/references/mcp-degradation.md @skills/seo/references/ahrefs-api-reference.md

Inputs

  • domain: The bare target domain to analyze (e.g., example.com). Strip https://, http://, and trailing slashes.
  • competitors (optional): Up to 3 competitor domains, space-separated (e.g., competitor1.com competitor2.com). If not provided, auto-detect using Ahrefs organic competitors tool.

MCP Check

Before proceeding, verify Ahrefs MCP is available:

  1. Use ToolSearch with query +ahrefs
  2. If tools are returned → Ahrefs MCP is available, proceed to Execution
  3. If no tools returned → display the Ahrefs MCP error template from references/mcp-degradation.md and stop

Execution

Step 1 — Identify Competitors

If competitors parameter provided: use those domains directly.

If no competitors specified:

  • Call mcp__claude_ai_ahrefs__site-explorer-organic-competitors with target: the bare domain
  • Select top 3 competitors by common keyword overlap from the response

Step 2 — Runtime Schema Discovery for Content Gap Tool

IMPORTANT: The filter parameter for keywords-explorer-matching-terms that enables competitor-domain filtering is UNVERIFIED. Discover the schema at runtime:

  1. Use ToolSearch to load mcp__claude_ai_ahrefs__keywords-explorer-matching-terms
  2. Inspect the tool's parameter schema carefully
  3. Decision:
    • If the tool has a competitor/domain filter parameter → proceed with Approach A (direct filter)
    • If the tool has no such filter → fall back to Approach B (cross-reference)

Document which approach was used in the output.

Step 3A — Direct Filter Approach (if schema supports it)

For each competitor domain identified:

  • Call mcp__claude_ai_ahrefs__keywords-explorer-matching-terms with:
    • target: the competitor domain keyword or filter parameter (per discovered schema)
    • Apply any discovered competitor/domain filter to find keywords competitor ranks for
  • Cross-reference against target domain's keywords to identify gaps

Step 3B — Cross-Reference Approach (fallback)

  1. Call mcp__claude_ai_ahrefs__site-explorer-organic-keywords with target: the target domain → collect target's keyword set

  2. For each of the 3 competitor domains:

    • Call mcp__claude_ai_ahrefs__site-explorer-organic-keywords with target: the competitor domain
    • Collect their keyword set
  3. Find keywords in competitor sets NOT in target's keyword set → these are gaps

Step 4 — CRITICAL: Monetary Conversion

cpc is returned in CENTS. Divide by 100 before display. Format as USD per click: $X.XX.

Example: API returns cpc = 350 → display as $3.50/click

Step 5 — Prioritize Gaps

Sort content gap keywords by:

  1. Volume descending (highest search demand first)
  2. Filter out keywords with position >50 for the target domain (focus on true gaps)

Output Format

## Ahrefs Content Gap Analysis: example.com

**Method used:** [Approach A — direct filter] or [Approach B — cross-reference]
**Competitors analyzed:** competitor1.com, competitor2.com, competitor3.com

### Content Gap Opportunities

| Keyword | Volume | Difficulty | CPC | Competitor Ranking | Your Position |
|---------|--------|-----------|-----|-------------------|---------------|
| seo checklist | 8,100 | 42 | $3.20/click | competitor1.com #3 | Not ranking |
| on-page seo guide | 5,400 | 38 | $2.80/click | competitor2.com #5 | Not ranking |
| technical seo audit | 3,600 | 55 | $5.10/click | competitor1.com #2 | Not ranking |

### Summary
- **Total gap keywords found:** 340
- **High-opportunity gaps** (volume >1,000, difficulty <50): 45 keywords
- **Top content opportunity:** Create comprehensive "seo checklist" guide targeting
  the cluster around "seo checklist", "seo audit checklist", "on-page seo checklist"

Error — Ahrefs MCP Not Available

If MCP check fails, display the Ahrefs error template from references/mcp-degradation.md:

## Ahrefs MCP Not Available

The `/seo ahrefs content-gap` command requires the Ahrefs MCP, which is not
currently connected.

**What you can do:**
- Use `/seo audit <url>` for a full static SEO analysis without live Ahrefs data
- Use `/seo technical <url>` for technical SEO issues without backlink/keyword data

**To connect Ahrefs MCP:**
- Ensure the Ahrefs MCP is registered at user scope in ~/.claude/mcp.json
- Verify with: cat ~/.claude/mcp.json | grep -i ahrefs
- Ahrefs MCP must be registered at user scope (not project scope) to work in subagents

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Gives 0 of the 12 instructions most marketing audience skills give in ~1.2k tokens

Counted across 690 of the 894 authors here whose files we hold, read 2026-08-07

  • Apply Poppins font to headingsin 41 of 690, across 6 files
  • Apply Lora font to body textin 41 of 690, across 6 files
  • Use Arial fallback for headingsin 39 of 690, across 4 files
  • Use Georgia fallback for body textin 39 of 690, across 4 files
  • Maintain text hierarchy and formattingin 39 of 690, across 4 files
  • Use accent colors for non-text shapesin 38 of 690, across 3 files
  • Use RGB values for precise color matchingin 38 of 690, across 3 files
  • Use brand colors for primary text and backgroundsin 36 of 690, across 1 file
  • Read product marketing context file before asking questions, starting, or auditingin 35 of 690, across 23 files
  • Use active voice instead of passive voicein 26 of 690, across 10 files
  • Implement or generate appropriate JSON-LD structured datain 24 of 690, across 17 files
  • Prioritize clarity over clevernessin 22 of 690, across 8 files

Said here and by no other author read

  • strip protocol and trailing slash from domain input
  • use toolsearch to verify ahrefs availability
  • stop if ahrefs mcp is unavailable
  • use provided competitor domains directly
  • auto-detect competitors if none are provided
  • select top three competitors by keyword overlap

Grouped from the skills themselves: near-identical wordings counted once, and counted by distinct author, so one author publishing three of these counts once. Length counted with cl100k_base; the agent that loads this file may tokenize it differently.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.