seo-backlinks skill
Analyze a site's backlink profile, anchors, toxic signals, competitors, gaps, and disavow candidates. Use only when links or referring domains are the requested focus.
Is the seo-backlinks skill safe?
Clean: nothing in its files matched our rules. We read 2 files in the folder on 2026-09-28.
No findings.
Install the seo-backlinks 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-backlinks ~/.claude/skills/seo-backlinks
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
Backlink Profile Analysis
Source Detection
Before analysis, detect available data sources:
- DataForSEO MCP (premium): Check if backlinks_summary tool is available
- Moz API (free signup): "${CLAUDEPLUGINROOT}/scripts/claude-seo" run backlinks_auth.py --check moz --json
- Bing Webmaster (free signup): "${CLAUDEPLUGINROOT}/scripts/claude-seo" run backlinks_auth.py --check bing --json
- Keywords Everywhere (free signup; domain rank plus referring-domain count): "${CLAUDEPLUGINROOT}/scripts/claude-seo" run backlinks_auth.py --check keywordseverywhere --json
- Common Crawl (always available): Domain-level graph with PageRank
- Verification Crawler (always available): Checks if known backlinks still exist
Run "${CLAUDEPLUGINROOT}/scripts/claude-seo" run backlinks_auth.py --check --json to detect all sources at once.
If no sources are configured beyond the always-available tier:
- Still produce a report using Common Crawl domain metrics
- Suggest: "Run /seo backlinks setup to add free Moz and Bing API keys for richer data"
Quick Reference
Analysis Framework
Produce all 7 sections below. Each section lists data sources in preference order.
1. Profile Overview
DataForSEO: backlinks_summary → total backlinks, referring domains, domain rank, follow ratio, trend.
Moz API: "${CLAUDEPLUGINROOT}/scripts/claude-seo" run moz_api.py metrics --json → Domain Authority, Page Authority, Spam Score, linking root domains, external links.
Keywords Everywhere: "${CLAUDEPLUGINROOT}/scripts/claude-seo" run keywordseverywhereapi.py rank --json → 0-10 Open PageRank (openpagerank), a global rank, and a referring-domain count (referringdomains), per the current API; no anchors or individual links. Use as a fallback when Moz isn't configured; do not use in place of Moz when both are available.
Common Crawl: "${CLAUDEPLUGINROOT}/scripts/claude-seo" run commoncrawl_graph.py --json → PageRank, harmonic centrality, and low-confidence rank/presence data.
Scoring:
2. Anchor Text Distribution
DataForSEO: backlinks_anchors
Moz API: "${CLAUDEPLUGINROOT}/scripts/claude-seo" run moz_api.py anchors --json
Bing Webmaster: "${CLAUDEPLUGINROOT}/scripts/claude-seo" run bing_webmaster.py links --json (extract anchor text from link details)
Healthy distribution benchmarks:
Flag if exact-match anchors exceed 15% as a review heuristic; it may indicate unnatural or link-spam patterns.
3. Referring Domain Quality
DataForSEO: backlinksreferringdomains
Moz API: "${CLAUDEPLUGINROOT}/scripts/claude-seo" run moz_api.py domains --json → domains with DA scores
Common Crawl: "${CLAUDEPLUGINROOT}/scripts/claude-seo" run commoncrawl_graph.py --json → domain-level rank/presence data, no verified referring-domain counts
Analyze:
- TLD distribution: .edu, .gov, .org = high authority. Excessive .xyz, .info = low quality
- Country distribution: Match target market. 80%+ from irrelevant countries = PBN signal
- Domain rank distribution: Healthy profiles have links from all authority tiers
- Follow/nofollow per domain: Sites that only nofollow = limited SEO value
4. Toxic Link Detection
DataForSEO: backlinksbulkspam_score + toxic patterns from reference
Moz API: Raw vendor spamscore from "${CLAUDEPLUGINROOT}/scripts/claude-seo" run mozapi.py metrics --json (source-label the value; apply thresholds only if verified against current Moz docs)
Verification Crawler: "${CLAUDEPLUGINROOT}/scripts/claude-seo" run verify_backlinks.py --target --links --json (verify suspicious links still exist)
High-risk indicators (flag immediately):
- Links from known PBN (Private Blog Network) domains
- Unnatural anchor text patterns (100% exact match from a domain)
- Links from penalized or deindexed domains
- Mass directory submissions (50+ directory links)
- Link farms (sites with 10K+ outbound links per page)
- Paid link patterns (footer/sidebar links across all pages of a domain)
Medium-risk indicators (review manually):
- Links from unrelated niches
- Reciprocal link patterns
- Links from thin content pages (<100 words)
- Excessive links from a single domain (>50 backlinks from 1 domain)
Load ../seo/references/backlink-quality.md for the full 30 toxic patterns and disavow criteria.
5. Top Pages by Backlinks
DataForSEO: backlinks_backlinks with target type "page"
Moz API: "${CLAUDEPLUGINROOT}/scripts/claude-seo" run moz_api.py pages --json
Find:
- Which pages attract the most backlinks
- Pages with high-authority links (link magnets)
- Pages with zero backlinks (internal linking opportunities)
- 404 pages with backlinks (redirect opportunities to reclaim link equity)
6. Competitor Gap Analysis
DataForSEO: backlinksreferringdomains for both domains, then compare
Bing Webmaster: "${CLAUDEPLUGINROOT}/scripts/claude-seo" run bing_webmaster.py compare --json only when both properties are registered and accessible to the same Bing API account. For arbitrary competitors, use DataForSEO, Moz, or Common Crawl.
Moz API: Compare DA/PA between domains via "${CLAUDEPLUGINROOT}/scripts/claude-seo" run moz_api.py metrics --json for each
Output:
- Domains linking to competitor but NOT to target = link building opportunities
- Domains linking to both = validate existing relationships
- Domains linking only to target = competitive advantage
- Top 20 link building opportunities with domain authority
7. New and Lost Backlinks
DataForSEO only: backlinks_backlinks with date filters for 30/60/90 day changes
Verification Crawler: For known links, verify current status with "${CLAUDEPLUGINROOT}/scripts/claude-seo" run verify_backlinks.py --target --links --json
Note: Free sources cannot track new/lost links over time. If this section is requested without DataForSEO, inform the user: "Link velocity tracking requires the DataForSEO extension. Free sources provide point-in-time snapshots only."
Red flags:
- Sudden spike in new links (possible negative SEO attack)
- Sudden loss of many links (site penalty or content removal)
- Declining velocity over 3+ months (content not attracting links)
Backlink Health Score
Calculate a 0-100 score. When mixing sources, apply confidence weighting:
Data sufficiency gate: Count how many of the 7 factors have at least one data source available.
- 4+ factors with data: Produce a numeric 0-100 score (redistribute missing weights proportionally)
- Fewer than 4 factors: Do NOT produce a numeric score. Instead display:
Backlink Health Score: INSUFFICIENT DATA (X/7 factors scored)Show individual factor scores that ARE available with their source and confidence. Recommend: "Configure Moz API (free) for a scoreable profile. Run /seo backlinks setup"
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-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".
- Aseo-driftSEO drift monitoring: capture baselines of SEO-critical elements, detect changes, and track regressions over time. Git for SEO: baseline, diff, and track changes to your on-page SEO. Use when user says "SEO drift", "baseline", "track changes", "did anything break", "SEO regression", "compare SEO", "before and after", "monitor SEO changes", or "deployment check".