mcpField
S
seo-backlinks-profile

seo-backlinks-profile

github.com/seranking营销与增长18968 次安装18 周前更新
代码仓库

关于 seo-backlinks-profile

seo-backlinks-profile 使用 SE Ranking 数据审计域名的外链概况,输出健康评分和供人工审核的拒绝候选项,不会自动拒绝外链。

主要功能

  1. 01外链与引用域名概览
  2. 02锚文本和权威度分布
  3. 03IP 与子网多样性分析
  4. 04六个月增长与流失趋势
  5. 05基于规则识别风险外链候选项

适用场景

  1. 01审计域名的外链健康状况
  2. 02审核可能具有操纵性的引用域名
  3. 03追踪外链增长与流失

MCP 相关

需要连接 SE Ranking MCP 服务以获取外链数据。可选用 Firecrawl MCP 验证引用页面上的链接。

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/seranking/seo-skills --skill seo-backlinks-profile

安装后在 Claude Code 中输入/seo-backlinks-profile确认已加载。

详细介绍

示例输出:examples/seo-backlinks-profile-stripe-com-20260514/PROFILE.md

反向链接档案

对某个域名进行全面的反向链接档案审计。展现其构成(链接来自哪里?)、质量(权威度如何分布?)、多样性(是否集中在少数 IP/子网,还是分散开?)、发展趋势(正在增长还是衰退?)和风险(哪些链接看起来具有操纵性?)。输出包括健康评分和可供审核的拒绝候选列表——绝不会自动拒绝链接。

设计上仅使用单一数据源

此技能仅使用 SE Ranking 反向链接索引。我们不会将 Ahrefs / Moz / Majestic / DataForSEO / Common Crawl 的数据混入同一份报告。这是刻意为之,并非功能限制:

  • 指标内部一致。 权威度评分、锚文本数量和引用域名总数均基于同一次爬取计算。混合多个数据源得出的数字看似权威,实际上却是不同爬取结果的平均值,而这些结果的采样方式、数据新鲜度和“反向链接”的定义各不相同——最终得到的比率(例如 dofollow 百分比、锚文本分布)只会引入噪声。
  • 健康评分可复现。 本报告中的 100 分制健康评分,过一个季度后可针对同一数据源重新计算,前后差异也有实际意义。若混合多个数据源,评分波动可能意味着任何情况:数据源 A 的权重被调整,数据源 B 刷新了数据,或数据源 C 修改了有毒链接的判断规则。
  • 无需为数据源独立性建模。 如果没有第二张反向链接图谱,就无法回答“这些数据源的结论是否一致?”这样的问题;我们不会假装能回答。如果你需要跨数据源验证(例如在法律层面拒绝链接之前,或开展高风险外联活动之前),请将此档案与 Ahrefs/Majestic 的人工抽查配合使用——这是研究工作,不属于技能输出。

如果你的工作流明确要求混合多个数据源(大型代理商、按链接数量计费的链接建设者),那么此技能并不适合你——请使用汇总多个索引的供应商。其他用户采用单一数据源,得到的报告会更加诚实。

前置条件

  • 已连接 SE Ranking MCP 服务。
  • 用户提供:目标域名。
  • Claude 的 WebFetch 工具可选(用于抽查被标记为有毒的候选链接)。
  • mcp__firecrawl-mcp__firecrawl_scrape 可选(用于新增步骤 8b——链接来源验证)。

流程

  1. 验证目标并进行预检。 有关规范的三阶段预检(点数余额、Firecrawl 可用性、Google API),请参阅 skills/seo-firecrawl/references/preflight.md。技能专属说明:

    • 继续之前先规范化域名。
    • 此技能预计消耗的 SE Ranking 点数:中等(完整档案运行;没有按关键词计算的乘数)。
    • Firecrawl:可选。传入 --verify-sources 时,步骤 8b(链接来源验证)会抓取排名前 20 的引用域名中的链接页面,验证各链接是否仍存在,以及携带的 rel 属性类型(dofollow / nofollow / sponsored / UGC),每次运行约消耗 20 个 Firecrawl 点数。默认关闭;即使 Firecrawl 可用,也可传入 --no-firecrawl 跳过。
    • Google API:不使用。
  2. 档案摘要 DATA_getBacklinksSummary

    • 反向链接总数、引用域名总数、dofollow/nofollow 比率、链接类型分布(文本/图片/表单/框架)、过去 30/90 天的增长速度。
  3. 引用域名 DATA_getBacklinksRefDomains

    • 按权威度排列的前 N 个引用域名。提取权威度评分、各域名的链接数量、域名 TLD 和国家/地区。
  4. 锚文本分布 DATA_getBacklinksAnchors

    • 按频率排列的热门锚文本。
    • 对每个锚文本分类:品牌型(包含品牌名称)、完全匹配商业型(目标的主要商业关键词)、部分匹配型、通用型(“点击此处”“阅读更多”“此页面”)、裸 URL、源自图片 alt 的文本。
  5. 权威度分布 DATA_getBacklinksAuthority 和 DATA_getDistributionOfDomainAuthority

    • 引荐域名权威度直方图:DA 0-9、10-19、20-29 等区间各有多少个。
    • 健康的档案呈现长尾分布;不健康的档案则集中在 DA<10。
  6. IP 和子网多样性 DATA_getReferringIps、DATA_getReferringIpsCount、DATA_getReferringSubnetsCount

    • 托管引荐域名的唯一 IP 总数。
    • 唯一 /24 子网总数。
    • 计算集中度比率:referring_domains / unique_subnets。健康范围:约 3–10。不健康表现为许多域名共用少量子网(PBN 信号)。
  7. 增长/衰减趋势 DATA_getNewLostBacklinksCount、DATA_getNewLostRefDomainsCount

    • 每月新增反向链接净数(最近 6 个月)。
    • 每月新增引荐域名净数。
    • 增长速度变化——急剧飙升或急剧下降都值得标记。
  8. 丢失链接列表 DATA_listNewLostBacklinks、DATA_listNewLostReferringDomains

    • 抽查近期丢失的链接。其中是否有任何高权威度链接?

8b. 可选:实时验证链接来源 mcp__firecrawl-mcp__firecrawl_scrape

  • 仅在传入 --verify-sources 时触发(默认关闭,以节省点数)。
  • 对权威度最高的 20 个引荐域名(来自第 3 步),为每个域名选取权威度最高的链接页面。抓取每个页面(通常消耗 20 个 Firecrawl 点数)。
  • 对每次抓取,在返回的 html 中解析与目标域名匹配的 <a href>。记录:链接是否仍存在(true/false/page-404)、rel 属性(若缺失或为空则为 dofollow,否则记录字面值:nofollow、ugc、sponsored 或其组合)、周围上下文(锚文本及前后各 50 个字符)。
  • 在 evidence/08b-source-verification.md 中指出与 SE Ranking 报告状态不一致的情况:
    • 链接已失效——SE Ranking 仍报告其有效(延迟/错误)。
    • rel 属性与 SE Ranking 标记的不一致。
    • 来源页面返回非 200 状态码。
  • 纳入第 9 步:事后发现链接已失效或 rel=nofollow,会提高该引荐域名作为有毒候选对象的信号等级。
  • 如果 Firecrawl 不可用(或未传入该标记): 完全跳过。SE Ranking 标记的状态仍是事实依据——技能中“有意采用单一数据源”的表述已解释了这是有意为之的权衡。
  1. 有毒候选对象检测(启发式方法——规则见 Tips)

    • 对引荐域名列表应用有毒信号启发式规则。
    • 标记候选对象。每行都包含 risk_score 和 triggers(触发的启发式规则)。
    • 切勿自动拒绝。 输出是供审核的列表,而非操作指令。
  2. 综合整理 PROFILE.md

输出格式

创建文件夹 seo-backlinks-profile-{target-slug}-{YYYYMMDD}/,其中包含:

seo-backlinks-profile-{target-slug}-{YYYYMMDD}/
├── PROFILE.md                       (synthesised report — primary deliverable; inlines summary, authority distribution, diversity, trend)
├── 02-referring-domains.md          (top N with authority — load-bearing reference for outreach/audit)
├── 03-anchors.md                    (anchor distribution + classification — load-bearing reference)
├── disavow-candidates.csv           (toxic-flagged rows for review — load-bearing CSV)
└── evidence/
    ├── 01-summary.md                (DATA_getBacklinksSummary top-line — raw step output)
    ├── 04-authority-distribution.md (histogram — raw step output)
    ├── 05-diversity.md              (IPs + subnets + concentration — raw step output)
    ├── 06-trend.md                  (last 6 months new/lost — raw step output)
    ├── 07-losses-sample.md          (recent lost backlinks)
    └── 08b-source-verification.md   (only if --verify-sources ran: live link + rel attribute checks for top-20 sources)

步骤文件 01、04、05、06 以内嵌章节的形式放入 PROFILE.md;evidence/ 中的副本保留原始步骤输出,以便复现。02-referring-domains.md、03-anchors.md 和 disavow-candidates.csv 保留在顶层,供外联/审计团队直接查阅。

PROFILE.md 采用以下结构:

# Backlinks Profile: {domain}

> Snapshot dated {YYYY-MM-DD}

## Health score: **{n}/100**

| Dimension | Score | Notes |
|---|---|---|
| Authority distribution | {n}/20 | {comment} |
| Anchor diversity | {n}/20 | {comment} |
| IP/subnet diversity | {n}/20 | {comment} |
| Growth trajectory | {n}/20 | {comment} |
| Toxic candidate ratio | {n}/20 | {comment} |

## Top-line numbers

| Metric | Value |
|---|---|
| Backlinks | {n} |
| Referring domains | {n} |
| Dofollow / nofollow | {n}% / {n}% |
| Unique IPs | {n} |
| Unique subnets | {n} |
| Domain : subnet ratio | {ratio} |
| New ref-domains last 30d | {n} |
| Lost ref-domains last 30d | {n} |
| Toxic candidates flagged | {n} ({% of total}) |

## Authority distribution

| DA bucket | Domains | % |
|---|---|---|
| 70+ | {n} | {%} |
| 50–69 | {n} | {%} |
| 30–49 | {n} | {%} |
| 10–29 | {n} | {%} |
| 0–9 | {n} | {%} |

## Anchor distribution

| Class | Count | % | Healthy range | Status |
|---|---|---|---|---|
| Branded | {n} | {%} | 30–60% | {✓/⚠} |
| Generic | {n} | {%} | 15–30% | {✓/⚠} |
| Naked URL | {n} | {%} | 10–25% | {✓/⚠} |
| Partial-match | {n} | {%} | 10–20% | {✓/⚠} |
| Exact-match commercial | {n} | {%} | <5% | {✓/⚠ over-optimised} |
| Image-alt-derived | {n} | {%} | <10% | {✓/⚠} |

## Trend (last 6 months)

| Month | New backlinks | Lost backlinks | Net |
|---|---|---|---|
| {M-5} | {n} | {n} | {n} |
| {M-4} | {n} | {n} | {n} |
| ... |

## Toxic candidates ({n} flagged)

See `disavow-candidates.csv`. Top 10 by risk_score:

| Domain | Authority | Triggers | Risk |
|---|---|---|---|
| {domain} | {DA} | {DA<10, sitewide>5, exact-match-anchor} | High |
| ... |

**⚠ NEVER AUTO-DISAVOW.** Hand this list to a human for review. Disavow a domain only after confirming the link is manipulative AND the domain is not delivering referral traffic AND removal requests have failed.

## Recommended next steps

1. {Action}
2. {Action}
3. {Action}

disavow-candidates.csv 列:domain,authority,backlinks_count,sitewide_links,top_anchor,anchor_class,risk_score,triggers,sample_url

提示

  • 遵守速率限制。步骤 2–8 中的端点约需调用 15 次;请依次调用并控制频率。
  • 成本:完整的资料分析通常需要约 25–40 个 SE Ranking 积分。传入 --verify-sources 时,可选步骤 8b 会额外消耗 20 个 Firecrawl 积分(每个排名前 20 的来源域名抓取一次)。
  • 有害链接启发式规则(触发任意 2 项或以上即可列为候选):
    • 权威度 < 10(低信任度来源)。
    • 全站链接数 > 5(分布在多个页面页脚或侧边栏中的链接——操纵信号)。
    • 来自此域名的链接中,完全匹配商业锚文本占比 > 50%。
    • 托管在已知的链接农场子网中(唯一 IP 与唯一子网的比例高度集中时)。
    • 域名是无法发音的字符字符串(非常强烈的 PBN 信号)。
    • TLD 属于高垃圾域名列表(历史上包括 .xyz、.click、.work;请根据最新的垃圾域名报告核实)。
  • 健康的锚文本分布:品牌类应占最大比例(30–60%);完全匹配商业锚文本应占较小比例(<5%)——商业锚文本过度优化会触发 Penguin 时代的处罚。
  • 健康的增长:目标是引荐域名稳定地同比增长 10–20%。急剧增长(一个月内 >50%)通常意味着购买链接,并会引起算法怀疑。
  • 谨慎使用拒绝链接工具。 优先通过外联移除链接。仅在最后手段时拒绝链接;绝不要拒绝会带来引荐流量的域名。
  • 搭配 seo-backlink-gap,用于挖掘潜在对象(与竞争对手进行差距分析)。
  • 搭配 seo-drift,用于追踪资料构成随时间的变化。

评论

支持 Markdown