mcpField
C
content-brief

content-brief

github.com/infrasity-labs营销与增长15081 次安装18 周前更新
代码仓库

关于 content-brief

content-brief 根据目标关键词生成 SEO 内容简报,包含关键词指标、竞品标题分析和写作大纲,供内容团队用于 Notion 工作流。固定字段格式支持解析与优先级路由。

主要功能

  1. 01关键词指标与搜索意图
  2. 02分析自然搜索结果标题
  3. 03生成结构化 SEO 简报
  4. 04优先级评分与路由
  5. 05解析和验证脚本
  6. 06Notion 工作流指引

适用场景

  1. 01根据目标关键词准备简报
  2. 02将 CSV 关键词列表批量生成简报
  3. 03按优先级路由简报以录入 Notion
  4. 04交接前检查简报字段

MCP 相关

该技能可通过 Ahrefs MCP 获取关键词指标,并通过 Notion MCP 创建或更新简报页面和日历条目。未连接这些 MCP 时,也说明了手动处理流程。

安装

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

$npx skills add https://github.com/infrasity-labs/dev-gtm-claude-skills --skill content-brief

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

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
error-handling.md
notion-schema.md
routing-logic.md
scripts/
brief_validator.py
text_parser.py

详细介绍

内容概要 — 关键词转 Notion 内容概要生成器

根据目标关键词生成结构化 SEO 内容概要。输出遵循强制的 Direction 提示词格式,以便 text_parser.py 脚本无需手动清理即可提取所有字段并填入 Notion。

调用触发条件

明确短语(任意一项):

  • “为 [关键词] 创建内容概要”
  • “为这个关键词写概要:[关键词]”
  • “关于 [主题] 的内容概要”
  • “为 [关键词] 生成概要”
  • “为 [关键词] 写一份概要”
  • “运行内容概要技能”

隐含信号:

  • 用户提供关键词,并要求制定 SEO 规范、编辑规范或写作任务
  • 用户粘贴关键词列表,并要求生成概要

触发后立即执行——除关键词本身外,无需提前收集信息。

追问式信息收集(可选,只问一个问题)

关键词明确时,无需提问,直接撰写概要。

仅当以下两项条件都成立时,才询问一个澄清问题:

  1. 无法从上下文推断目标受众或客户
  2. 受众会显著影响内容角度(例如,“项目管理软件”可能面向项目经理或开发人员)

快速确认——“[关键词]”的主要受众是谁?

  1. [推断出的用户画像 A——例如,人力资源总监]
  2. [推断出的用户画像 B——例如,运营经理]
  3. 请告诉我

我询问的原因:受众会影响 H1、内容角度和写作者备注。问一个问题可以避免生成不合适的概要。

最多提问一次。如果可以推断受众,则跳过提问并继续。

数据收集(撰写概要前)

生成 Direction 提示词输出前,先执行以下步骤:

步骤 1 — 关键词指标

首选: Ahrefs MCP(keywords_explorer_overview)→ 搜索量、KD、CPC、SERP 数据。

备用方案(没有 Ahrefs MCP 时): 使用 WebSearch 进行估算:

  • 搜索 [keyword] search volume KD CPC site:ahrefs.com OR site:semrush.com OR site:moz.com
  • 提取可用的搜索量、KD 和 CPC 估算值
  • 如果未找到数据,将 VOLUME/CPC/DIFFICULTY 设为 [not available — add manually]
步骤 2 — 竞品 H2/H3 分析
  • 使用 WebSearch 搜索 [keyword] → 找出排名靠前的 3 个自然搜索结果(跳过广告、地图和精选摘要)
  • 使用 WebFetch 访问每个 URL → 提取所有 H2 和 H3 标题
  • 注意:竞品结构可为 H2_OUTLINE 提供参考。不要照搬——应将其用于内容差距分析。
步骤 3 — 搜索意图分类

根据关键词和 SERP 类型,将搜索意图归为以下四种选项之一:

  • Informational — 用户想要了解信息
  • Commercial — 用户正在比较选项,准备购买
  • Transactional — 用户已准备好采取行动或购买
  • Navigational — 用户正在寻找特定品牌或网站
步骤 4 — 优先级评分

应用 references/routing-logic.md 中的路由逻辑:

  • HIGH:搜索量 > 200 且 KD < 40,且搜索意图为 Commercial 或 Transactional
  • MEDIUM:不符合 HIGH 条件,但搜索量有实际意义或具有战略重要性
  • LOW:搜索量低、难度高,或搜索意图为 Informational 且转化价值有限

Direction 提示词输出格式(强制)

此格式不可更改。 text_parser.py 脚本会根据完全匹配的标签提取内容。如果任何标签与以下格式不一致——大小写错误、多出空格或缺少下划线——Notion 属性就会为空。

完成数据收集后,严格按照以下结构输出概要:

TARGET_KEYWORD: [keyword]
VOLUME: [number or "not available"]
CPC: [decimal or "not available"]
DIFFICULTY: [0-100 integer or "not available"]
SEARCH_INTENT: [Informational | Commercial | Transactional | Navigational]
AUDIENCE: [persona — job title or role]
RECOMMENDED_H1: [final proposed title]
CONTENT_ANGLE: [one paragraph describing the unique angle, why this beats competitors, what the post must do]
WORD_COUNT: [number]
SCHEMA: [schema type — e.g., FAQ, HowTo, Article, FAQ + HowTo]
PRIORITY: [HIGH | MEDIUM | LOW]
H2_OUTLINE:
- H2: [heading]
  - H3: [subheading]
  - H3: [subheading]
- H2: [heading]
  - H3: [subheading]
FAQ:
- Q: [question the audience actually searches]
- Q: [question]
- Q: [question]
INTERNAL_LINKS:
- [anchor text] → [relative URL or page title if URL unknown]
WRITER_NOTES:
[one paragraph of specific guidance: tone, POV, what to avoid, key differentiators to emphasize, CTAs, any client-specific requirements]

关键规则:

  • 每个字段标签都必须与示例完全一致(全大写并使用下划线)
  • SEARCH_INTENT 的值必须与四个选项之一完全一致(首字母大写)
  • PRIORITY 的值必须严格为 HIGH、MEDIUM 或 LOW
  • H2_OUTLINE、FAQ、INTERNAL_LINKS、WRITER_NOTES 是区块字段——内容从下一行开始
  • TARGET_KEYWORD 前不得有任何额外文本,WRITER_NOTES 区块后也不得添加任何内容

工作流架构(9 个节点)

节点角色工具
1 — 输入接受关键词 + 可选的客户端/受众背景用户消息
2 — 关键词指标获取搜索量、KD、CPC、SERP 类型Ahrefs MCP 或 WebSearch 回退方案
3 — SERP 抓取提取排名前 3 的自然搜索结果中的 H2/H3WebFetch
4 — 简报生成通过 Direction 提示词处理数据 → 结构化输出Claude(此技能)
5 — 文本解析器提取带标签的字段 → 结构化变量scripts/text_parser.py
6 — 条件路由器根据 PRIORITY 值进行路由路由逻辑
7A — Notion 创建(HIGH)创建页面,Status = "Briefed: Ready for Assignment"Notion MCP
7B — Notion 创建(MED/LOW)创建页面,Status = "Briefed: Weekly Review Queue"Notion MCP
8A — Slack 通知(仅 HIGH)将简报摘要 + Notion 链接发布到频道Slack MCP
9 — 日历同步在内容日历数据库中创建关联条目Notion MCP

在没有 MCP 连接器的 Claude Code 中:节点 1–5 会自动运行。节点 6–9 会生成一份可直接粘贴的摘要,并指导用户手动录入 Notion。

批处理模式

触发条件:用户提供包含 Target Keyword 列的 CSV(Priority Override 列可选)。

流程:

  1. 确认 CSV 可读取且包含 Target Keyword 列
  2. 按顺序逐个将关键词送入完整流程
  3. 按顺序输出所有简报,以 --- 分隔
  4. 输出所有简报后:输出摘要表(关键词 | 优先级 | 字数 | schema)

预期吞吐量:20 份简报需 20–25 分钟(每份 60–75 秒)。

如果任何关键词处理失败(没有 SERP 数据、意图不明确):在摘要表中将其标记为 [FAILED — 原因],并继续处理剩余关键词。

推送到 Notion(MCP 可用时)

使用 references/notion-schema.md 将解析器输出映射到 Notion 属性。

根据 PRIORITY 分为两种路径:

HIGH:

  • Status → "Briefed: Ready for Assignment"
  • Target Publish Date → 今天 + 14 天
  • 触发 Slack 通知(节点 8A)

MEDIUM:

  • Status → "Briefed: Weekly Review Queue"
  • Target Publish Date → 今天 + 28 天

LOW:

  • Status → "Briefed: Weekly Review Queue"
  • Target Publish Date → 今天 + 42 天

创建页面后:运行日历同步(节点 9),在内容日历数据库中创建关联条目。

创建前检查:查询 Notion,确认是否存在 TARGET_KEYWORD 相同的页面。如果存在 → 使用 update_page 而非 create_page,以防止重复。

多客户端设置

每个客户端都有:

  • 单独的 Notion 集成令牌
  • 单独的数据库 ID
  • 客户端专属的 Direction 提示词变体(调整受众、语气、内部链接基础 URL)

新客户端入驻:配置连接器并端到端测试一份简报,约需 45–60 分钟。

未连接 Notion MCP 时的输出

如果 Notion MCP 不可用,在生成 Direction 提示词输出后,附上:

---
NOTION PUSH: Not connected. To add this brief to Notion manually:

1. Open your Notion database
2. Create a new page
3. Paste the following field values:
   [formatted summary of all extracted fields]

Or run: python scripts/text_parser.py brief.txt --output json
to get a JSON payload ready for the Notion API.
---

验证关卡

生成输出后,手动检查:

  • 11 个简单字段均存在且非空
  • SEARCH_INTENT 是 4 个有效值之一
  • PRIORITY 必须严格为 HIGH、MEDIUM 或 LOW
  • H2_OUTLINE 至少包含 4 个 H2,且每个 H2 下至少有 1 个 H3
  • FAQ 至少包含 3 个问题
  • INTERNAL_LINKS 至少包含 2 个条目
  • WRITER_NOTES 是内容充实的段落(而非占位文本)

对输出文件运行 scripts/brief_validator.py,进行自动验证。

错误处理

情况处理方式
没有可用的关键词数据将数值字段设为 "not available",并在 WRITER_NOTES 中添加备注,指示编辑手动核实
SERP 抓取被拦截(403/付费墙)跳过抓取,在 WRITER_NOTES 中注明 "competitor outline not available",并继续处理简报
搜索意图不明确默认设为 Informational;在 WRITER_NOTES 中标记:"Intent ambiguous — verify before briefing writer"
Notion 中的选项值不匹配严格使用指定的大小写;Notion 选项区分大小写
检测到重复关键词使用 update_page,而不是 create_page
解析后的简报中有 >2 个空属性标记为需人工审核;不要推送到 Notion
批次中的关键词处理失败在汇总表中注明,并继续处理
CSV 缺少 Target Keyword 列停止并请用户确认列名

完整的故障点目录请参阅 references/error-handling.md。

工具

脚本用途
scripts/text_parser.py从 Direction 提示词输出中提取带标签的字段 → 结构化字典。python text_parser.py brief.txt --output json
scripts/brief_validator.py验证所有必填字段是否存在,以及字段值是否在允许范围内。python brief_validator.py brief.txt

参考资料

  • references/notion-schema.md — Notion 数据库属性配置(名称、类型、允许的值)
  • references/routing-logic.md — 优先级评分规则和发布日期计算
  • references/error-handling.md — 已知故障点及解决方法

应拒绝的反模式

  • 偏离强制要求的 Direction 提示词标签格式(会导致解析器无法正常工作)
  • 使用小写或大小写混合的字段标签(使用 TARGET_KEYWORD,而非 Target_Keyword)
  • 将 SEARCH_INTENT 设置为四个允许值以外的值
  • 未先收集关键词和 SERP 数据就生成简报
  • 运行前询问多个信息收集问题
  • 编写含糊的 WRITER_NOTES(例如 "write a good post about this topic")
  • 数据不可用时编造关键词指标——务必标记为 "not available"
  • 有 >2 个字段为空时推送到 Notion

评论

支持 Markdown