mcpField
S
seo-sxo

seo-sxo

github.com/agricidaniel营销与增长23.3k5.8k 次安装6 天前更新
代码仓库

关于 seo-sxo

seo-sxo 面向 SEO 和 UX 团队,用于评估页面是否符合搜索结果呈现的页面类型与用户预期。它分析 SERP、识别错配和差距,并可生成具体线框图。

主要功能

  1. 01分析 SERP 格式与特征
  2. 02检测页面类型错配
  3. 03评估内容与 UX 差距
  4. 04根据搜索信号推导用户画像
  5. 05生成带注释的页面线框图

适用场景

  1. 01评估技术合格的页面为何未能排名
  2. 02选择与搜索结果匹配的页面格式
  3. 03为不同用户画像确定改进优先级
  4. 04起草目标页面结构

安装

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

$npx skills add https://github.com/agricidaniel/claude-seo --skill seo-sxo

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

包含的文件

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

references/
page-type-taxonomy.md
persona-scoring.md
user-story-framework.md
wireframe-templates.md

详细介绍

搜索体验优化(SXO)

SXO 弥合了 SEO(Google 看重的内容)与 UX(用户需要的内容)之间的差距。 传统的 SEO 审核会检查技术状况。SXO 则会问:“根据 Google 在搜索结果页(SERP)上实际奖励的内容,这个页面值得针对该关键词获得排名吗?”

核心洞察

一个页面的技术 SEO 得分可以达到 95/100,却仍然无法获得排名,因为它的页面类型不适合该关键词。如果 Google 针对你的关键词展示 8 个产品页面和 2 个对比页面,那么无论你的博客文章优化得多好,都无法脱颖而出。

命令

命令用途
/seo sxo <url>完整的 SXO 分析(自动从页面检测关键词)
/seo sxo <url> <keyword>针对特定关键词进行完整的 SXO 分析
/seo sxo wireframe <url>生成包含具体占位内容的 IST/SOLL 线框图
/seo sxo personas <url>仅进行用户画像评分(跳过 SERP 分析)

执行流程

步骤 1:获取目标页面
  1. 通过 "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run render_page.py <URL> --mode auto 获取目标 URL(支持 SPA 感知并防范 SSRF)
  2. 使用 "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run parse_html.py <URL> 进行解析,提取:标题、H1、元描述、 标题层级结构、字数、Schema 标记、CTA、媒体元素
  3. 如果未提供关键词,则从标题标签与 H1 的重合部分提取主要关键词
  4. 继续之前,验证关键词非空
步骤 2:反向分析 SERP

阅读 references/page-type-taxonomy.md 了解分类规则。

  1. 在 Google 中搜索目标关键词(WebSearch)
  2. 对排名前 10 的自然搜索结果,记录:
    • URL 和域名权威度层级(品牌 / 细分领域权威 / 未知)
    • 页面类型(使用分类体系进行分类)
    • 内容格式(长篇内容、列表文章、操作指南、对比、工具、视频)
    • 估计字数(根据摘要长度和页面结构)
    • 存在的 Schema 类型(来自当前支持的 SERP 功能;排除 FAQ/HowTo)
    • 媒体信号(视频轮播、图片组、是否有缩略图)
  3. 记录存在的 SERP 功能:
    • 精选摘要(段落 / 列表 / 表格 / 视频)
    • 用户还问了(提取所有可见问题)
    • 广告(顶部和底部——统计数量并分析广告文案主题)
    • 相关搜索(全部提取)
    • 知识面板 / 本地结果包 / 购物结果
    • 是否存在 AI Overview,以及来源类型
  4. 计算 SERP 共识:
    • 主导页面类型(>60% = 共识强,40-60% = 混合,<40% = 碎片化)
    • 内容深度预期(平均字数层级)
    • Schema 预期(最常见的结构化数据类型)
    • 媒体预期(是否需要视频?图片是否关键?)
步骤 3:检测页面类型不匹配

这是 SXO 的核心洞察。将目标页面类型与 SERP 共识进行比较。

不匹配严重程度:

目标类型SERP 预期严重程度建议
博客文章产品页面严重创建专用产品页面
博客文章对比内容高重构为包含对比矩阵的内容
产品页面信息型内容高增加教育性内容层
落地页工具/计算器高构建交互式工具组件
服务页面本地结果中添加位置信号和本地 Schema
类型匹配-已匹配专注于内容深度和 UX

分类规则:

  • 使用 references/page-type-taxonomy.md 对目标页面进行分类
  • 使用相同的分类体系对每个 SERP 结果进行分类
  • 如果目标类型与 SERP 主导类型不同,则标记为不匹配
  • 如果 SERP 碎片化(没有主导类型),则指出存在差异化机会
步骤 4:推导用户故事

阅读 references/user-story-framework.md,了解完整框架。

根据 SERP 信号推导用户故事:

  1. PAA 问题揭示知识盲区和顾虑
  2. 广告文案主题揭示商业触发因素和价值主张
  3. 相关搜索揭示搜索历程(前后搜索了什么)
  4. 精选摘要格式揭示预期的答案结构
  5. AI Overview揭示 Google 认为的权威答案

针对每组信号生成一个用户故事:

As a [persona derived from signal],
I want to [goal derived from query intent],
because [emotional driver from ad copy / PAA tone],
but I'm blocked by [barrier derived from PAA questions / related searches].

生成 3-5 个用户故事,涵盖主要意图角度。

步骤 5:差距分析

从以下 7 个维度,将目标页面与 SERP 预期进行对比:

维度对比内容得分
页面类型目标页面类型与 SERP 主导类型0-15
内容深度字数、标题层级、主题覆盖范围0-15
UX 信号CTA 清晰度、首屏内容、移动端布局0-15
Schema 标记已有的结构化数据类型与预期类型0-15
媒体丰富度图片、视频、交互元素与 SERP 常见配置0-15
权威性信号E-E-A-T 标记、社会认同、资质0-15
新鲜度最近更新时间、日期信号、内容时效性0-10

总分:0-100 SXO 差距分数(分数越低=差距越大,分数越高=匹配度越好)

步骤 6:基于用户画像评分

阅读 references/persona-scoring.md,了解评分方法。

  1. 根据 SERP 意图信号推导 4-7 个用户画像:
    • 按主题对 PAA 问题进行分组
    • 根据目标受众对广告文案进行细分
    • 将相关搜索映射到用户历程阶段
  2. 针对每个用户画像,从 4 个维度为目标页面评分(每项 25 分):
    • 相关性:页面是否满足该用户画像的需求?
    • 清晰度:该用户画像能否在 10 秒内找到答案?
    • 信任度:该用户画像是否能看到充分的信任信号?
    • 行动指引:是否为该用户画像提供了明确的下一步?
  3. 输出用户画像卡片,包含得分和具体的改进建议
  4. 按最弱的用户画像优先排列建议(机会最大)
步骤 7:线框图生成(可选)

仅在调用 /seo sxo wireframe 时执行。

阅读 references/wireframe-templates.md,了解模板。

  1. 根据解析后的页面结构生成 IST(当前状态)线框图
  2. 根据以下内容生成 SOLL(目标状态)线框图:
    • SERP 共识页面类型
    • 差距分析结果
    • 用户画像评分中的薄弱项
  3. 使用极其具体的占位说明:
    • 不要写:“在此处添加 CTA”
    • 应写:“在主视觉区域下方添加带年度节省徽章的定价 CTA,并链接至 /pricing#enterprise”
  4. 以语义化 HTML 章节大纲形式输出,并附注释

DataForSEO 集成

如果有可用的 DataForSEO MCP 工具:

  1. 进行任何 API 调用之前,先估算费用并征得用户确认
  2. 使用 serp_organic_live_advanced 获取精确的 SERP 数据(排名、功能、摘要)
  3. 使用 kw_data_google_ads_search_volume 获取搜索量和竞争指标
  4. 如果 DataForSEO 不可用,则回退到 WebSearch——并在输出中注明精确度有所降低

SXO 分数与 SEO 健康度分数

SXO 分数与主要 SEO 健康度分数相互独立。

  • SEO 健康度分数 = 技术合规性(可抓取性、速度、Schema 等)
  • SXO 差距分数 = 页面与 SERP 预期之间的匹配度
  • 页面可能 SEO 得分为 95、SXO 得分为 30,意味着技术层面完美,但策略上不匹配
  • 如果两项分数都可用,应同时报告

跨技能参考

发现转交给
用户画像评分中的 E-E-A-T 差距转交 /seo content 进行深入的 E-E-A-T 审核
缺少 Schema 类型转交 /seo schema 生成
在 SERP 中检测到本地意图转交 /seo local 进行 GBP 分析
内容深度差距转交 /seo page 进行深入的页面分析
抓取过程中发现技术问题转交 /seo technical 进行全面审核
图片/媒体差距转交 /seo images 进行优化

输出格式

完整 SXO 分析
## SXO Analysis: [URL]
### Target Keyword: [keyword]

### 1. SERP Landscape
- Dominant page type: [type] ([confidence]% consensus)
- SERP features: [list]
- Content depth norm: [word count range]
- Schema expectation: [types]

### 2. Page-Type Alignment
- Your page type: [type]
- SERP expects: [type]
- Verdict: [ALIGNED | MISMATCH (severity)]
- Impact: [explanation]

### 3. User Stories (derived from SERP signals)
[3-5 user stories with source signals]

### 4. Gap Analysis (SXO Score: XX/100)
[7-dimension breakdown table]

### 5. Persona Scores
[4-7 persona cards with 4-dimension scores]

### 6. Priority Actions
[Ranked list: fix mismatch first, then weakest persona gaps]

### 7. Limitations
[What could not be assessed, data source notes]

错误处理

错误操作
URL 获取失败报告错误,建议检查 URL 是否可访问
未提供或未检测到关键词请用户提供目标关键词
WebSearch 返回的结果少于 5 条使用现有数据继续分析,并注明样本有限
SERP 没有自然搜索结果(全是广告)说明 SERP 商业化程度很高,仅分析广告文案
目标页面由 JavaScript 渲染说明此限制,并使用可用的 HTML 内容
DataForSEO 费用超过阈值改用 WebSearch,并通知用户

质量检查清单

交付结果前,请确认:

  • 已通过 "${CLAUDE_PLUGIN_ROOT}/scripts/claude-seo" run render_page.py <URL> --mode auto 获取目标 URL(未使用原始 curl/fetch)
  • 页面类型分类使用了参考资料中的分类体系
  • 至少分析了 5 条 SERP 结果
  • 用户故事引用了具体的 SERP 信号作为依据
  • Persona 评分包含具体的改进建议
  • SXO 评分明确标注为独立于 SEO 健康度评分
  • 存在局限性部分,且内容如实
  • 在相关情况下,包含跨技能建议

评论

支持 Markdown