--- name: seo-link-building description: | Link building diagnosis and backlink analysis tool. Triggers: backlink audit, link building, referring domains, toxic links, link gap, broken backlinks, 백링크 분석, 링크빌딩. --- # SEO Link Building Diagnosis ## Purpose Analyze backlink profiles, detect toxic links, find competitor link gaps, track link velocity, and map Korean platform links. Provides actionable link building recommendations. ## Core Capabilities 1. **Backlink Profile Audit** - DR, referring domains, dofollow ratio, anchor distribution 2. **Toxic Link Detection** - PBN patterns, spam domains, link farm identification 3. **Competitor Link Gap Analysis** - Domains linking to competitors but not target 4. **Link Velocity Tracking** - New/lost referring domains over time 5. **Broken Backlink Recovery** - Find and reclaim broken high-DR backlinks 6. **Korean Platform Mapping** - Naver Blog, Cafe, Tistory, Brunch, Korean news ## Data Source Selection This skill can pull backlink data from multiple backends. **Pick one per task** — don't fan out by default (cost + rate limits). Backlink graphs are the most cost-sensitive of all SEO data. | Backend | Best for | Notes | |---|---|---| | **Ahrefs MCP** (`mcp__ahrefs__*`) | **Default** — Ahrefs' backlink graph remains the strongest in the industry. All `site-explorer-*` endpoints. | Primary capability: `site-explorer-domain-rating`, `-backlinks-stats`, `-referring-domains`, `-anchors`, `-broken-backlinks`, `-refdomains-history`. | | **Semrush MCP** (`mcp__semrush__*`) | Alternative when user is already in Semrush context or wants a second opinion | `backlink_research` covers similar ground; Authority Score replaces DR. Coverage is competitive but not identical to Ahrefs. | | **OurSEO** | **Not a backlink source.** No backlink graph in the OurSEO stack. | If asked, use OurSEO MCP / CLI only as a supplement for on-page link inventory (`crawl_website` extracts internal/outbound links from the target site itself). | | **WebSearch / WebFetch** | Manual spot-check of a specific referring URL | Useful for verifying anchor / context of a high-value referring page. | ### How to pick 1. **User named a backend explicitly** → use it. 2. **User preference memory** — read `feedback_seo_tool_preferences.md`; honor the task-type default. 3. **Task is comparison across vendors** (e.g., "verify Ahrefs claims with Semrush") → run both, document the source per metric. 4. **Default**: **Ahrefs MCP** — backlink work is the one SEO task where Ahrefs is the default, not Semrush. 5. **Still ambiguous + non-trivial** → ask once via `AskUserQuestion`. ### Backend call patterns **Ahrefs MCP (default):** ``` mcp__ahrefs__site-explorer-domain-rating(target="") mcp__ahrefs__site-explorer-backlinks-stats(target="") mcp__ahrefs__site-explorer-referring-domains(target="", limit=100) mcp__ahrefs__site-explorer-anchors(target="") mcp__ahrefs__site-explorer-broken-backlinks(target="", limit=100) mcp__ahrefs__site-explorer-refdomains-history(target="", history="weekly") mcp__ahrefs__site-explorer-all-backlinks(target="", limit=500) mcp__ahrefs__site-explorer-linked-anchors-external(target="") ``` **Semrush MCP (alternative):** ``` mcp__semrush__backlink_research(query="", database="us") mcp__semrush__get_report_schema(report_id="...") mcp__semrush__execute_report(report_id="...", params={...}) ``` **OurSEO (on-page link inventory, supplement only):** ``` mcp__ourseo__crawl_website(url="", max_pages=100) # Extract internal/outbound link inventory from crawl output — NOT a backlink graph. ``` ### Korean platform mapping Backlinks from Korean platforms (Naver Blog, Cafe, Tistory, Brunch, Korean news) are often underrepresented in both Ahrefs and Semrush. After pulling from the chosen backend, supplement with `WebSearch` for major Korean directories and brand-name queries on Naver to spot-check coverage gaps. Always record the chosen data source in the report **Overview** so future audits can compare like-for-like. ## Workflow ### 1. Backlink Profile Audit 1. Fetch Domain Rating via `site-explorer-domain-rating` 2. Get backlink stats via `site-explorer-backlinks-stats` 3. Retrieve referring domains via `site-explorer-referring-domains` 4. Analyze anchor distribution via `site-explorer-anchors` 5. Detect toxic links (PBN patterns, spam keywords, suspicious TLDs) 6. Map Korean platform links from referring domains 7. Report with issues and recommendations ### 2. Link Gap Analysis 1. Fetch target referring domains 2. Fetch competitor referring domains (parallel) 3. Compute set difference (competitor - target) 4. Score opportunities by DR, traffic, category 5. Categorize sources (news, blog, forum, directory, Korean platform) 6. Rank by feasibility and impact 7. Report top opportunities with recommendations ### 3. Link Velocity Check 1. Fetch refdomains-history for last 90 days 2. Calculate new/lost referring domains per period 3. Determine velocity trend (growing/stable/declining) 4. Flag declining velocity as issue ### 4. Broken Backlink Recovery 1. Fetch broken backlinks via `site-explorer-broken-backlinks` 2. Sort by DR (highest value first) 3. Recommend 301 redirects or content recreation ## Output Format ```markdown ## Link Building Audit: [domain] ### Overview - Domain Rating: [DR] - Referring Domains: [count] - Dofollow Ratio: [ratio] - Toxic Links: [count] ([risk level]) ### Anchor Distribution | Type | Count | % | |------|-------|---| | Branded | [n] | [%] | | Exact Match | [n] | [%] | | Generic | [n] | [%] | | Naked URL | [n] | [%] | ### Toxic Links (Top 10) | Domain | Risk Score | Reason | |--------|-----------|--------| ### Korean Platform Links | Platform | Count | |----------|-------| ### Link Velocity | Period | New | Lost | |--------|-----|------| ### Recommendations 1. [Priority actions] ``` ## Notion Output (Required) All audit reports MUST be saved to OurDigital SEO Audit Log: - **Database ID**: `2c8581e5-8a1e-8035-880b-e38cefc2f3ef` - **Properties**: Issue (title), Site (url), Category (Link Building), Priority, Found Date, Audit ID - **Language**: Korean with English technical terms - **Audit ID Format**: LINK-YYYYMMDD-NNN