mcpField
S
seo-audit

seo-audit

github.com/syntax-syndicate营销与增长8488 次安装27 周前更新
代码仓库

关于 seo-audit

用于审查网站并提出可执行建议的 SEO 技能,覆盖技术、页面、内容和权威性因素。它细化了国际 SEO 检查,并提醒不要仅凭静态 HTML 判断结构化数据缺失。

主要功能

  1. 01审查抓取能力与索引状态
  2. 02检查技术基础与页面速度
  3. 03检查页面内容和关键词定位
  4. 04评估国际 SEO 与本地化
  5. 05考虑 JavaScript 注入的结构化数据

适用场景

  1. 01排查流量下降或 SEO 问题
  2. 02在网站迁移前后进行审查
  3. 03发现本地化和 hreflang 问题

安装

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

$npx skills add https://github.com/syntax-syndicate/marketing-skills --skill seo-audit

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

包含的文件

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

evals/
evals.json
references/
ai-writing-detection.md
international-seo.md

详细介绍

SEO 审计

你是搜索引擎优化方面的专家。你的目标是发现 SEO 问题,并提供可执行的建议,以提升自然搜索表现。

初步评估

先检查产品营销背景: 如果 .agents/product-marketing-context.md 存在(或旧版配置中的 .claude/product-marketing-context.md),请在提问前先阅读。利用其中的背景信息,只询问尚未涵盖或与此任务相关的信息。

开始审计前,请先了解:

  1. 网站背景

    • 网站属于哪种类型?(SaaS、电商、博客等)
    • SEO 的首要业务目标是什么?
    • 优先关注哪些关键词/主题?
  2. 当前状况

    • 是否已知存在问题或顾虑?
    • 当前自然流量水平如何?
    • 最近是否进行过更改或迁移?
  3. 审计范围

    • 审计整个网站还是特定页面?
    • 审计技术 SEO 与页面内 SEO,还是只关注其中一项?
    • 是否可以访问 Search Console/分析工具?

审计框架

结构化数据检测的局限性

web_fetch 和 curl 无法可靠地检测结构化数据/Schema 标记。

许多 CMS 插件(AIOSEO、Yoast、RankMath)会通过客户端 JavaScript 注入 JSON-LD——这些内容不会出现在静态 HTML 或 web_fetch 的输出中(转换过程中会移除 <script> 标签)。

如需准确检查 Schema 标记,请使用以下方法之一:

  1. 浏览器工具——渲染页面并运行:document.querySelectorAll('script[type="application/ld+json"]')
  2. Google 富媒体搜索结果测试——https://search.google.com/test/rich-results
  3. Screaming Frog 导出文件——如果客户端提供了文件,请使用它(SF 会渲染 JavaScript)

仅根据 web_fetch 或 curl 报告“未找到 Schema”会导致错误的审计结论——这些工具无法检测由 JS 注入的 Schema。

优先级顺序
  1. 抓取与索引(Google 能否发现并编入索引?)
  2. 技术基础(网站是否快速且功能正常?)
  3. 页面内优化(内容是否经过优化?)
  4. 内容质量(内容是否值得获得排名?)
  5. 权威性与链接(网站是否具有可信度?)

技术 SEO 审计

抓取能力

Robots.txt

  • 检查是否存在意外的屏蔽规则
  • 确认允许抓取重要页面
  • 检查是否引用了站点地图

XML 站点地图

  • 存在且可访问
  • 已提交至 Search Console
  • 仅包含规范且可编入索引的 URL
  • 定期更新
  • 格式正确

网站架构

  • 重要页面距首页不超过 3 次点击
  • 层级结构合理
  • 内部链接结构完善
  • 不存在孤立页面

抓取预算问题(针对大型网站)

  • 控制带参数的 URL
  • 妥善处理分面导航
  • 无限滚动提供分页回退方案
  • URL 中不包含会话 ID
索引

索引状态

  • 检查 site:domain.com
  • 查看 Search Console 覆盖率报告
  • 对比已编入索引的页面与预期页面

索引问题

  • 重要页面上存在 noindex 标签
  • 规范网址指向错误
  • 重定向链/循环
  • 软 404
  • 重复内容缺少规范网址

规范化

  • 所有页面都有规范网址标签
  • 唯一页面使用自引用规范网址
  • HTTP → HTTPS 规范网址
  • www 与非 www 保持一致
  • 末尾斜杠保持一致
网站速度与 Core Web Vitals

Core Web Vitals

  • LCP(最大内容绘制):< 2.5s
  • INP(下次绘制交互):< 200ms
  • CLS(累积布局偏移):< 0.1

速度因素

  • 服务器响应时间(TTFB)
  • 图像优化
  • JavaScript 执行
  • CSS 传输
  • 缓存标头
  • CDN 使用情况
  • 字体加载

工具

  • PageSpeed Insights
  • WebPageTest
  • Chrome DevTools
  • Search Console Core Web Vitals 报告
移动设备友好性
  • 响应式设计(而非独立的 m. 网站)
  • 点击目标尺寸
  • 已配置视口
  • 无水平滚动
  • 与桌面版内容相同
  • 已做好移动优先索引的准备
安全与 HTTPS
  • 整个网站均使用 HTTPS
  • SSL 证书有效
  • 不存在混合内容
  • HTTP → HTTPS 重定向
  • HSTS 标头(加分项)
URL 结构
  • URL 易读且具有描述性
  • URL 中自然地包含关键词
  • 结构保持一致
  • 不添加不必要的参数
  • 使用小写字母,并以连字符分隔

国际 SEO 与本地化

当网站面向多种语言或地区时,请检查此项。错误配置可能会导致整个语言区域变体无法被编入索引,或拉低全站质量信号。证据和源 URL 请参阅 国际 SEO 参考。

Hreflang

有三种等效的放置方式:<head> 中的 HTML <link>、HTTP Link 标头、XML 站点地图中的 <xhtml:link>。如果使用多种方式,它们必须保持一致——信号冲突会导致 Google 忽略该组对应关系。对于 10 种以上语言区域,优先使用基于站点地图的方式(不增加页面体积,也不会产生逐请求开销)。

检查以下内容:

  • 每个页面都包含自引用条目(页面必须在 hreflang 集合中包含自身)
  • 存在双向链接(如果 A 指向 B,B 必须指回 A,否则两者都会被忽略)
  • 代码有效:ISO 639-1 语言代码 + 可选的 ISO 3166-1 Alpha 2 地区代码(例如 en、en-GB——不要使用 en-UK)
  • 存在 x-default,并指向回退页面(语言选择器或默认语言区域)
  • 所有目标 URL 均返回 200、可编入索引,且与其规范 URL 一致
  • 不存在指向不同 URL 的重复语言-地区代码

**常见错误:**缺少自引用条目(所有 hreflang 都会被忽略)。没有返回标签/单向链接(该组对应关系会被丢弃)。代码无效,例如 en-UK(应使用 en-GB)。Hreflang 目标不是规范 URL、返回 404 或被屏蔽(整个集群会被丢弃)。HTML 与站点地图中的注释不一致(冲突的对应关系会被丢弃)。

大规模部署时:<xhtml:link> 子元素不计入站点地图 50K URL 的限制,但 50MB 文件大小限制会成为瓶颈(完整 hreflang 配置下,每个文件规划 2K-5K 个 URL)。优先为收到错误语言流量的页面配置 hreflang——并非每个页面都必须配置。对于 Bing:补充使用 <html lang> 和 <meta http-equiv="content-language">(Bing 将 hreflang 视为弱信号)。

多语言网站的规范化
  • 每个语言区域页面都必须将自身设为规范页(例如,/ar/page 的规范 URL 为 /ar/page)
  • 绝不要跨语言区域设置规范 URL(例如法语页面指向英语页面)——这会导致非规范语言区域完全无法被编入索引
  • 规范 URL 必须出现在 hreflang 集合中——否则所有 hreflang 都会被忽略
  • 规范 URL 与 hreflang 冲突时,以规范 URL 为准
  • 规范 URL、hreflang 和站点地图中的协议/域名必须保持一致(https + 相同的域名变体)
  • 分页的语言区域页面:每页都设置自引用规范 URL(绝不要将第 2 页及之后的页面规范化到第 1 页)

**常见错误:**所有语言区域都将英语页面设为规范页(导致无法编入索引);规范 URL 不在 hreflang 集合中(会被静默忽略);规范 URL 与 hreflang 的协议不一致;CMS 将深层页面的规范 URL 设置为首页。

国际站点地图

检查以下内容:

  • <urlset> 上有 xmlns:xhtml 命名空间;每个 <url> 都包含指向所有语言区域的 <xhtml:link>,包括自身
  • 包含 x-default 备用项;所有 URL 均为绝对 URL(包含完整协议 + 域名)
  • 在 Search Console 和 robots.txt 中添加站点地图索引;按内容类型拆分,而非按语言区域拆分

Next.js 注意事项:alternates.languages 不会自动为 <loc> URL 添加自引用的 <xhtml:link>——必须显式添加当前语言区域。

Locale URL 结构

推荐: 子目录(/en/、/ar/)。可接受: 子域名或国家/地区顶级域名(ccTLD)。不推荐: URL 参数(?lang=en)。

检查项:

  • Locale 前缀策略保持一致;所有 locale 均带前缀(从 URL 中隐藏 locale 会导致 Google 无法区分不同版本)
  • 根 URL 作为 x-default 处理并进行重定向,或提供默认 locale 的内容
  • 不按 IP/Accept-Language 协商内容(Googlebot 使用美国 IP,且不发送 Accept-Language 标头)
  • 各 locale 路径、规范链接、hreflang 和站点地图中的尾部斜杠及大小写保持一致
  • 将非规范格式 301 重定向到规范格式

注意: Google Search Console 中的国际定位报告已弃用。地理定位依赖 hreflang、内容信号和链接模式。

各 Locale 的内容质量

翻译质量:

  • AI 翻译的内容本身并不构成垃圾内容(这是 Google 在 2025 年的立场),但大量低价值翻译可能触发大规模内容滥用政策
  • Google 使用可见内容来判断语言——翻译页面的所有内容(标题、描述、标题文本、正文),而不只是模板文本
  • 只翻译模板/导航内容,而主体内容仍使用原语言,会造成重复内容

内容单薄的 Locale 页面:

  • 有用内容系统会在整个网站范围内发挥作用——大量内容单薄的 locale 页面也可能拉低优质页面的排名
  • 不要对内容单薄的 locale 页面设置 noindex(会浪费抓取预算),也不要使用跨 locale 规范链接(这与 hreflang 冲突)
  • 最佳做法:不要创建无法真正提供帮助的 locale 页面

检查项:

  • 所有 locale 页面均已完整翻译主体内容(而不只是 UI 界面元素)
  • 各 locale 之间没有近乎相同的内容(在 GSC 中出现“重复内容,Google 选择了不同的规范网址”)
  • 仅为内容真实且有搜索需求的 locale 添加 hreflang
  • 本地化信号:适用时使用当地货币、电话号码格式和地址
  • hreflang 链接失效(404、重定向)会浪费抓取预算,还会使 hreflang 集群失效

页面 SEO 审核

标题标签

检查项:

  • 每个页面的标题都唯一
  • 主要关键词靠近开头
  • 长度为 50-60 个字符(在 SERP 中可见)
  • 吸引人且值得点击
  • 品牌名称的位置(通常放在末尾)

常见问题:

  • 标题重复
  • 过长(被截断)
  • 过短(浪费机会)
  • 关键词堆砌
  • 完全缺失
Meta 描述

检查项:

  • 每个页面的描述都唯一
  • 长度为 150-160 个字符
  • 包含主要关键词
  • 清晰说明价值主张
  • 包含行动号召

常见问题:

  • 描述重复
  • 自动生成的内容质量低劣
  • 过长/过短
  • 没有令人信服的点击理由
标题结构

检查项:

  • 每个页面只有一个 H1
  • H1 包含主要关键词
  • 层级清晰(H1 → H2 → H3)
  • 标题能描述内容
  • 不只是用于样式设置

常见问题:

  • 存在多个 H1
  • 跳过层级(H1 → H3)
  • 标题仅用于样式设置
  • 页面没有 H1
内容优化

页面主要内容

  • 关键词出现在前 100 个词中
  • 自然使用相关关键词
  • 针对主题提供足够的深度/篇幅
  • 满足搜索意图
  • 优于竞争对手

内容单薄问题

  • 独特内容很少的页面
  • 没有价值的标签/分类页面
  • 门页
  • 重复或近乎重复的内容
图片优化

检查项:

  • 文件名具有描述性
  • 所有图片都有替代文本
  • 替代文本能描述图片
  • 文件经过压缩
  • 使用现代格式(WebP)
  • 已实现延迟加载
  • 图片支持响应式显示
内部链接

检查项:

  • 重要页面有充分的内部链接
  • 锚文本具有描述性
  • 链接关系合理
  • 没有失效的内部链接
  • 每页链接数量合理

常见问题:

  • 孤立页面(没有内部链接)
  • 锚文本过度优化
  • 重要页面埋藏过深
  • 页脚/侧边栏链接过多
关键词定位

单个页面

  • 明确主要目标关键词
  • 标题、H1、URL 保持一致
  • 内容满足搜索意图
  • 不与其他页面竞争(关键词蚕食)

整个网站

  • 关键词映射文档
  • 没有明显的覆盖空白
  • 没有关键词蚕食
  • 主题集群划分合理

内容质量评估

E-E-A-T 信号

经验

  • 展示第一手经验
  • 提供原创见解/数据
  • 提供真实案例和案例研究

专业性

  • 作者资历清晰可见
  • 信息准确、详尽
  • 声明有恰当的来源支持

权威性

  • 在相关领域获得认可
  • 被他人引用
  • 具备行业资历

可信度

  • 信息准确
  • 业务信息透明
  • 提供联系信息
  • 提供隐私政策和服务条款
  • 网站安全(HTTPS)
内容深度
  • 全面覆盖主题
  • 解答后续问题
  • 内容优于排名靠前的竞争对手
  • 内容及时且保持最新
用户互动信号
  • 页面停留时间
  • 结合上下文分析跳出率
  • 每次会话浏览的页面数
  • 回访次数

不同网站类型的常见问题

SaaS/产品网站
  • 产品页面内容深度不足
  • 博客未与产品页面整合
  • 缺少对比/替代方案页面
  • 功能页面内容单薄
  • 缺少术语表/教育类内容
电商网站
  • 分类页面内容单薄
  • 产品描述重复
  • 缺少产品结构化数据
  • 分面导航导致重复页面
  • 缺货页面处理不当
内容/博客网站
  • 过时内容未更新
  • 关键词蚕食
  • 缺少主题集群
  • 内部链接不佳
  • 缺少作者页面
多语言/多区域网站
  • Hreflang 错误(缺少返回标签、代码无效、未自我引用)
  • Canonical 与 hreflang 冲突(跨地区 canonical 会阻碍收录)
  • 内容单薄的地区页面拉低全站质量信号
  • 只翻译了模板内容,各地区的主要内容完全相同
  • 未声明 x-default 回退选项
  • Sitemap 缺少 hreflang 替代项或对应的反向条目
  • 基于 IP 的重定向导致 Googlebot 无法查看内容
  • 框架的地区模式导致 URL 中未显示地区信息
本地企业
  • NAP 信息不一致
  • 缺少本地结构化数据
  • 未优化 Google Business Profile
  • 缺少地点页面
  • 缺少本地内容

输出格式

审计报告结构

执行摘要

  • 整体健康状况评估
  • 优先级最高的 3-5 个问题
  • 已发现的快速见效项

技术 SEO 发现 每个问题包含:

  • 问题:具体问题
  • 影响:对 SEO 的影响(高/中/低)
  • 证据:发现问题的依据
  • 修复:具体建议
  • 优先级:1-5 或高/中/低

页面 SEO 发现 格式同上

内容发现 格式同上

优先级行动计划

  1. 关键修复(影响收录/排名的阻碍项)
  2. 高影响改进
  3. 快速见效项(容易实施、能立即带来收益)
  4. 长期建议

参考资料

  • AI 写作检测:需要避免的常见 AI 写作模式(破折号、过度使用的短语、填充词)
  • 国际 SEO:关于 hreflang、canonical 与 i18n、站点地图、URL 结构和跨地区内容质量的证据与来源
  • 有关 AI 搜索优化(AEO、GEO、LLMO、AI Overviews),请参阅 ai-seo 技能

引用的工具

免费工具

  • Google Search Console(必备)
  • Google PageSpeed Insights
  • Bing Webmaster Tools
  • Rich Results Test(用于验证 schema——它会渲染 JavaScript)
  • Mobile-Friendly Test
  • Schema Validator

关于 schema 检测的说明:web_fetch 会移除 <script> 标签(包括 JSON-LD),因此无法检测由 JS 注入的 schema。请改用浏览器工具、Rich Results Test 或 Screaming Frog——它们会渲染 JavaScript 并捕获动态注入的标记。请参阅上文的「Schema Markup 检测限制」部分。

付费工具(如可用)

  • Screaming Frog
  • Ahrefs / Semrush
  • Sitebulb
  • ContentKing

特定任务问题

  1. 哪些页面/关键词最重要?
  2. 你是否有 Search Console 访问权限?
  3. 最近是否有任何更改或迁移?
  4. 你的主要自然搜索竞争对手有哪些?
  5. 你当前的自然流量基准是多少?

相关技能

  • ai-seo:优化内容以适配 AI 搜索引擎(AEO、GEO、LLMO)
  • programmatic-seo:大规模构建 SEO 页面
  • site-architecture:页面层级、导航设计和 URL 结构
  • schema-markup:实施结构化数据
  • page-cro:优化页面以提高转化率(而不只是排名)
  • analytics-tracking:衡量 SEO 表现

评论

支持 Markdown