mcpField
S
seo-content-brief

seo-content-brief

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

关于 seo-content-brief

将域名和主题意图转化为供编辑与作者使用、基于证据的内容简报。它整合关键词差距、搜索结果研究、竞品页面分析和内链建议,交付内容自足。

主要功能

  1. 01发现关键词与竞争差距
  2. 02研究搜索结果及相关查询
  3. 03分析排名靠前的内容
  4. 04判定内容模板类型
  5. 05规划内部链接
  6. 06生成有证据支撑的写作简报

适用场景

  1. 01为目标主题制作写作简报
  2. 02仅有域名时筛选主题
  3. 03依据搜索结果和竞品证据规划文章

MCP 相关

需要连接 SE Ranking MCP 服务以获取域名、关键词、搜索结果和 AI Overview 数据。还会使用 Claude 的 WebFetch;Firecrawl 可选用于补充页面分析。

安装

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

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

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

附带文件references/intent-template-map.md

详细介绍

示例输出:examples/seo-content-brief-vercel-rate-limiting-20260514/BRIEF.md

内容简报

将域名和主题意图转化为一份完整的内容编辑简报:目标关键词、标题选项、H2/H3 结构、当前排名靠前的搜索结果所遗漏的内容差距、内链计划、AI 搜索角度,以及预估流量潜力。

前提条件

  • 已连接 SE Ranking MCP 服务。
  • Claude 的 WebFetch 工具可用(用于拆解排名前三的内容)。
  • 用户已提供:(a) 目标域名,(b) 市场/国家(默认为 us),以及可选的 (c) 种子主题或意图。如果未提供种子主题,则从关键词差距步骤中发掘最佳机会。

流程

  1. 域名概览 DATA_getDomainOverviewWorldwide、DATA_getDomainKeywords

    • 提取目标市场的自然流量、主要国家/地区和排名前 100 的自然关键词。
    • 保存原始 JSON 和人工撰写的摘要。
  2. 发现竞争对手 DATA_getDomainCompetitors

    • 根据目标市场的共同关键词,找出自然搜索排名前 5 的竞争对手。
    • 为每个竞争对手保存一条定位说明。
    • **注意:**上游 API 不支持 limit/offset,因此此调用会返回完整结果集(热门域名约为 60KB),MCP 执行框架会将其写入文件。读取该文件路径,解析 {data: [...]} JSON,按 common_keywords 降序排序,并选取前 5 个。
  3. 关键词差距分析 DATA_getDomainKeywordsComparison

    • 提取竞争对手有排名、但目标域名没有排名的关键词。
    • 筛选条件:信息型意图、搜索量 > 1,000/月、关键词难度 < 40。
    • 保存按搜索量排序的筛选后差距列表。
  4. 选出最佳主题集群

    • 从差距列表中选取一个主题。说明选择理由:流量潜力、难度、与目标域名产品的相关性。在继续之前,向用户展示分析过程。
  5. 深入分析所选主题的 SERP 和关键词

    • 使用 DATA_getSerpResults 获取前 10 个自然搜索结果和 SERP 功能(AIO、PAA、精选摘要、视频)。
    • 使用 DATA_getRelatedKeywords 和 DATA_getSimilarKeywords 拓展关键词。
    • 使用 DATA_getKeywordQuestions 获取 People-Also-Ask 和基于问题的变体。
    • 使用 DATA_getAiOverview + DATA_getAiOverviewLeaderboard 查看大模型当前在该主题中引用了哪些品牌。
  6. 分析排名前 3 的内容 WebFetch(始终使用)+ mcp__firecrawl-mcp__firecrawl_scrape(可用时)

    • 先用 WebFetch(免费、即时):获取排名前 3 的 URL 的 Markdown 内容。提取 H1/H2/H3 结构、每篇文章的字数、共同子主题、内容缺口和行文层面的格式模式。
    • 再用 Firecrawl(3 个 Firecrawl 点数——排名前 3 的每篇各 1 点)——补充 WebFetch 的 Markdown 无法展示的信息:
      • 从 metadata 获取:<title> 长度(实际字符串,不是 Markdown 的首个标题)、meta description 长度、og:title、og:description、og:image、twitter:card。
      • 从返回的 html 中获取:每个 <script type="application/ld+json"> 块。解析并列出每个竞争对手页面的 @type(Article、FAQPage、BreadcrumbList、Product 等)——这些构成新文章的“结构化数据基线”。
      • 页面信号:主图是否存在、署名结构(<a rel="author">、<meta name="author">)、表格数量、代码块数量。
    • **根据 references/intent-template-map.md 中的 8 种模板映射,对内容简报的模板进行分类。**交叉参考:(a) SERP 前 10 个结果中的主要页面类型(使用 skills/seo-sxo/references/page-type-patterns.md 中的启发式规则),(b) 步骤 5 中的 PAA 模式,(c) DATA_getRelatedKeywords 得出的关键词意图分类。从以下选一:ultimate-guide / how-to / listicle / explainer / comparison / review / best-of / landing-page。如果 SERP 中包含多种页面类型,请遵循 MIXED 规则(见 Tips)。所选模板决定建议的 H1/H2 大纲结构和最低字数——在 BRIEF.md 中记录模板和一句话的选择理由。
    • **如果 Firecrawl 不可用(或传入了 --no-firecrawl):**WebFetch 部分照常运行。简报中的“排名前 3 的页面——页面基准”小节(见 Output)会输出 (skipped — Firecrawl required for schema/og:* on competitor pages)。仍根据 WebFetch + SERP 数据进行模板分类。
  7. 内部链接计划

    • 对 DATA_getDomainKeywords 的结果筛选出目标域名,并对主题相关查询中排名靠前的 5 个页面使用 WebFetch。
    • 对每个页面:提出一个锚文本,并指定其所属的新文章章节。
  8. 综合整理内容简报(见 Output Format)。

输出格式

创建文件夹 seo-content-brief-{target-slug}-{YYYYMMDD}/,将综合简报放在顶层,并将步骤文件放在 evidence/ 中:

seo-content-brief-{target-slug}-{YYYYMMDD}/
├── BRIEF.md                        (writer-ready synthesis — primary deliverable; inlines 01-domain-overview, 02-competitors, 06-internal-links into a "Context" section)
└── evidence/
    ├── 01-domain-overview.md       (DATA_getDomainOverviewWorldwide raw — preserved for reproducibility)
    ├── 02-competitors.md           (DATA_getDomainCompetitors raw)
    ├── 03-keyword-gaps.md          (DATA_getDomainKeywordsComparison filtered)
    ├── 04-serp-and-keywords.md     (DATA_getSerpResults + related/question keywords)
    ├── 05-content-analysis.md      (top-3 winners' H-spine + on-page benchmark)
    └── 06-internal-links.md        (target domain pages + proposed anchors)

顶层只能有 BRIEF.md——自由撰稿人无需打开其他任何文件。步骤文件会在 evidence/ 中保留原始 API/抓取输出,以便重现流程并为编辑简报提供依据。

BRIEF.md 遵循以下结构:

# Content Brief: {proposed title}

**Template type:** {one of: ultimate-guide / how-to / listicle / explainer / comparison / review / best-of / landing-page / MIXED}
**Why this template:** {one-sentence justification grounded in SERP top-10 page-type majority + PAA pattern + keyword intent}

## Target keyword
- Primary: {kw} ({volume}/mo, KD {kd}, intent: informational)
- Secondary: {kw1} ({volume}), {kw2} ({volume}), {kw3} ({volume})

## Title options
1. {title option 1}
2. {title option 2}
3. {title option 3}

## Meta description (150-160 chars)
{draft}

## Suggested structure

### H1: {proposed H1}

#### H2: {section 1}
Cover: {bullets of what to include}
Cite: {sources to link out to}

#### H2: {section 2}
...

## Gaps the current top 3 miss
- {gap 1, with evidence}
- {gap 2, with evidence}
- {gap 3, with evidence}

## Top 3 winners — on-page benchmark (Firecrawl)

| Signal | Winner 1 | Winner 2 | Winner 3 | Required for parity |
|---|---|---|---|---|
| `<title>` length (chars) | {n} | {n} | {n} | {target} |
| Meta description length | {n} | {n} | {n} | {target} |
| `og:image` present | {✓/✗} | {✓/✗} | {✓/✗} | {yes/no} |
| `twitter:card` | {value} | {value} | {value} | {value} |
| JSON-LD types | {Article, …} | {…} | {…} | {must include} |
| Byline structure (DOM) | {✓/✗} | {✓/✗} | {✓/✗} | {yes/no} |
| Word count (rendered) | {n} | {n} | {n} | {target range} |

(Or: `Top-3 on-page benchmark: skipped — Firecrawl not installed.`)

## Internal linking plan
| From existing page | Anchor text | Target section |
|---|---|---|
| {url} | {anchor} | {section} |

## AI Search angle
- LLMs currently cite {brands} for this query.
- To earn mentions: {specific actions, e.g., add a comparison table, cite a primary study, include a structured data block}.

## Deliverables
- Word count target: {n}
- Tone and voice: {guidance from domain overview}
- Required assets: {images, schema, examples}

## Traffic potential
- Conservative: ~{n}/mo at position 5
- Target: ~{n}/mo at position 1-3

## Raw data references
- evidence/01-domain-overview.md
- evidence/02-competitors.md
- evidence/03-keyword-gaps.md
- evidence/04-serp-and-keywords.md
- evidence/05-content-analysis.md
- evidence/06-internal-links.md

提示

  • 遵守 SE Ranking Data API 的速率限制:每秒 10 个请求。按顺序迭代,不要并行处理 20 个关键词。
  • Firecrawl 成本。 第 6 步的竞争对手基准分析每次运行会额外消耗 3 个 Firecrawl 点数(每位排名前 3 的竞争对手消耗 1 个)。传入 --no-firecrawl 可跳过该步骤(简报仍会生成,只是不包含页面基准分析表)。
  • 如果用户只提供了域名而没有提供主题,请先运行第 3 步,并在决定前展示排名前三的差距机会。
  • 确保简报内容完整、无需依赖其他文件。自由撰稿人无需打开原始数据文件,除非想核对信息。
  • 不要臆测关键词难度或搜索量。如果端点返回 null,请在简报中将该字段标记为未知,而不是猜测。
  • 如果该主题会触发 AI Overviews,则 AI 搜索角度部分为必填项,不可省略。在这一时代实现增长,需要让大模型能够引用相关内容。
  • 如果 SERP 前 10 名中页面类型混杂(例如 4 篇清单、4 篇对比文章和 2 篇说明文章),请视为 MIXED,并生成混合型简报,说明顾问选择的模板及原因;不要在 SERP 本身分化时强行选择单一类型。在 Template type 行中记录 MIXED,并在 Why this template 行中说明混合选择的依据(采用哪种模板的提纲结构,以及融入了哪些次要模式)。

评论

支持 Markdown