mcpField
S
seo-subdomain

seo-subdomain

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

关于 seo-subdomain

seo-subdomain 是供 SEO 团队分析域名子域名结构的技能,梳理主题归属与关键词冲突。它利用 SE Ranking 数据生成含证据的报告,并建议整合、拆分或维持现状。

主要功能

  1. 01发现并按排名排列子域名
  2. 02比较流量、关键词和权威度
  3. 03绘制子域名主题归属图
  4. 04标记关键词蚕食
  5. 05建议整合或拆分

适用场景

  1. 01网站改版前审查子域名结构
  2. 02查找不同子域名间的内容重叠
  3. 03向内容团队说明主题归属

MCP 相关

需要连接 SE Ranking MCP 服务,以获取子域名、关键词、竞争对手和反向链接数据。

安装

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

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

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

详细介绍

示例输出:examples/seo-subdomain-notion-so-20260514/SUBDOMAINS.md

子域名分析

绘制域名的子域名生态图。有哪些子域名、各自的排名关键词、彼此的重叠情况,以及整体结构是否健康或碎片化。输出:所有权地图(每个主题由哪个子域名负责)、碎片化报告,以及关于合并、拆分或维持现状的建议。

前提条件

  • 已连接 SE Ranking MCP 服务。
  • 用户提供:目标根域名(例如 example.com)。此技能会自动发现子域名。
  • 可选:--limit N,用于限制分析的子域名数量(默认按排名关键词数量取前 10 个)。

流程

  1. 验证与预检

    • 规范化根域名(不含协议和 www.)。
    • DATA_getCreditBalance — 显示剩余积分。子域名分析需要 N × 约 5 次调用;成本随子域名数量增加。
  2. 发现子域名 DATA_getDomainSubdomains

    • 列出根域名的所有子域名。
    • 对每个子域名:关键词数量、流量估算值、反向链接数量。
    • 按排名关键词数量降序排序。
    • 应用 --limit(默认取前 10 个)。
  3. 各子域名概览 DATA_getDomainOverviewWorldwide

    • 对范围内的每个子域名:域名权重、流量估算值、自然搜索 + 付费关键词数量、主要地区。
    • 以此建立基准,用于跨子域名比较。
  4. 各子域名的顶级关键词 DATA_getDomainKeywords

    • 对每个子域名:排名前 100 的自然搜索关键词及其排名、意图和流量。
    • 按主题对关键词进行聚类。此技能的分组是轻量级的各子域名所有权地图,不是内容规划——按核心词 + 意图对词元分组即可。(如需完整的内容集群规划,请使用 seo-keyword-cluster;该工具现按 SERP 重叠度聚类,而非文本相似度。)
    • 为每个子域名列出“负责的主题”(其占主导地位的集群)和“次要主题”。
  5. 各子域名的竞争对手 DATA_getDomainCompetitors

    • 对每个子域名:按 common_keywords 排序的主要自然搜索竞争对手。
    • 揭示:不同子域名的竞争对手群体是否不同?(说明其业务范围确实不同。)是否存在共同竞争对手?(说明业务范围可能冗余。)
  6. 各子域名的反向链接 DATA_getBacklinksSummary 和 DATA_getBacklinksRefDomains(前 20 个)

    • 子域名的反向链接概况通常各不相同。分别记录。
    • 揭示:子域名的引荐域名群体是否存在显著差异?
  7. 权重分布 DATA_getDistributionOfDomainAuthority

    • 对每个子域名,获取引荐域名的 DA 分布。
  8. 检测碎片化

    • 对每个主题集群,找出所有在该集群关键词中有排名的子域名。
    • **碎片化信号:**至少 2 个子域名在同一个高搜索量关键词的前 50 名中排名(关键词蚕食)。
    • **健康拆分:**每个子域名负责不同的主题集群,重叠最少。
  9. 提出建议

    • **合并:**如果 blog.example.com 和 example.com/blog/ 都在同一个主题集群中排名,但都未占主导地位——选择一个作为规范归属位置。
    • **拆分:**如果某个子域名为根域名的业务目标完全无关的主题排名,则值得保留并单独划分。
    • **维持现状:**如果各子域名负责不同主题,且不存在关键词蚕食,则无需调整。
    • **调查:**将不明确的情况标出,供人工审核。
  10. 汇总 SUBDOMAINS.md

输出格式

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

seo-subdomain-{target-slug}-{YYYYMMDD}/
├── SUBDOMAINS.md                       (synthesised report + recommendations — primary deliverable)
├── 06-topic-ownership-map.md           (cluster × subdomain matrix — load-bearing reference content teams brief from)
├── 07-fragmentation-flags.md           (cannibalization detected — load-bearing reference for consolidation decisions)
└── evidence/
    ├── 01-subdomains-list.md           (DATA_getDomainSubdomains — raw step output)
    ├── 02-overview-by-subdomain.md     (per-subdomain overview rows)
    ├── 03-keywords-by-subdomain/
    │   ├── blog-example-com.md
    │   ├── docs-example-com.md
    │   └── ...                          (one per subdomain)
    ├── 04-competitors-by-subdomain.md
    └── 05-backlinks-by-subdomain.md

顶层文件:SUBDOMAINS.md + 06-topic-ownership-map.md + 07-fragmentation-flags.md。内容团队根据所有权地图制定简报;合并决策直接引用碎片化标记。01–05 步骤文件会在 evidence/ 中保留原始 API 输出。

SUBDOMAINS.md 遵循以下结构:

# Subdomain Analysis: {root domain}

> Snapshot dated {YYYY-MM-DD} · Subdomains analysed: {n} of {n discovered} (limit: top {limit} by keyword count)

## Subdomain inventory

| Subdomain | Keywords | Traffic est. | Backlinks | Domain authority | Top topics owned |
|---|---|---|---|---|---|
| {root} | {n} | {n}/mo | {n} | {DA} | {topics} |
| blog.{root} | {n} | {n}/mo | {n} | {DA} | {topics} |
| docs.{root} | {n} | {n}/mo | {n} | {DA} | {topics} |
| ... |

## Topic ownership map

| Topic cluster | Owned by | Also ranks (cannibalization?) |
|---|---|---|
| {topic 1} | blog.{root} (avg pos 3.2 across 47 keywords) | {root} (avg pos 12) — {⚠ cannibalization} |
| {topic 2} | docs.{root} | (none) |
| ... |

## Fragmentation flags

### {⚠ Cannibalization detected: topic = {topic X}}
- `blog.{root}` ranks {n} keywords for {topic X}, avg position {p}.
- `{root}` (root path) ranks {m} keywords for the same topic, avg position {p}.
- The two sets overlap on {k} exact keywords.
- **Recommendation:** consolidate to `blog.{root}` (the stronger ranker). 301 the root-path duplicates with intent preserved.

### ... (per fragmentation finding)

## Recommendations summary

- **Consolidate:** {n} subdomain pairs → see fragmentation flags above.
- **Split intentional and healthy:** {n} subdomains have distinct ownership; leave alone.
- **Investigate:** {n} edge cases flagged for human review.

## Risk notes

- Subdomain consolidation requires careful 301 redirect mapping; track via `seo-drift` after the migration.
- A subdomain with separate backlinks (per `evidence/05-backlinks-by-subdomain.md`) is harder to consolidate without losing link equity — plan accordingly.

## Raw data
- See per-subdomain files under `evidence/03-keywords-by-subdomain/`.
- Topic ownership matrix: `06-topic-ownership-map.md`.

提示

  • 遵守速率限制。该技能每个子域名约调用 5 次。使用 --limit 10 时约调用 50 次;请依次调用,控制节奏。
  • 运行前调用 DATA_getCreditBalance。费用随子域名数量变化:--limit 10 通常需要约 20–60 个积分;不限数量时最多可能需要 150+ 个积分。
  • --limit 是你的好帮手。 拥有数百个子域名的大型平台无需分析每个子域名——按关键词数量排名的前 10 个通常涵盖超过 90% 的自然搜索价值。
  • 不要把“子域名的 DA 较低”等同于“子域名不好”。 子域名会分别积累链接,因此 DA 通常低于根域名。关键在于主题归属和关键词蚕食,而非 DA 本身。
  • 整合存在风险。 将 blog.example.com 通过 301 重定向到 example.com/blog/ 可以保留大部分链接权重,但迁移期间可能损失 5–15%。迁移后使用 seo-drift 追踪表现。
  • 如果某个子域名使用不同的平台,不要建议整合。 如果 blog.example.com 使用不同的 CMS,整合的工程成本可能超过 SEO 收益。应将此作为限制条件,而非建议。
  • 主题归属矩阵是最具价值的成果。用它向内容团队说明各子域名应发布哪些内容。
  • 搭配 seo-page 深入分析蚕食问题中标记的特定 URL。
  • 搭配 seo-drift 为重大重组前的子域名建立基线。

评论

支持 Markdown