Installation
$npx skills add lionkiii/claude-seo-skills --skill seo-ahrefs-content-gapSummary
Identify keywords competitors rank for that the target domain does not, using Ahrefs organic keyword and competitor data. The agent can discover content opportunities, prioritize them by volume and keyword difficulty, and recommend specific topics to target. Invoke when asked about competitor keyword gaps, missing content opportunities, or keywords competitors own.
SKILL.MD
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). Striphttps://,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:
- Use ToolSearch with query
+ahrefs - If tools are returned → Ahrefs MCP is available, proceed to Execution
- If no tools returned → display the Ahrefs MCP error template from
references/mcp-degradation.mdand 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-competitorswithtarget: 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:
- Use ToolSearch to load
mcp__claude_ai_ahrefs__keywords-explorer-matching-terms - Inspect the tool's parameter schema carefully
- 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-termswith: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)
-
Call
mcp__claude_ai_ahrefs__site-explorer-organic-keywordswithtarget: the target domain → collect target's keyword set -
For each of the 3 competitor domains:
- Call
mcp__claude_ai_ahrefs__site-explorer-organic-keywordswithtarget: the competitor domain - Collect their keyword set
- Call
-
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:
- Volume descending (highest search demand first)
- 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