mcpField
S
seo-audit

seo-audit

github.com/julianromli营销与增长21350 次安装4 天前更新
代码仓库

关于 seo-audit

seo-audit 是用于评估网站搜索引擎优化问题并提出改进建议的技能,适合负责网站增长与内容的团队。它按抓取索引、技术基础、页面优化、内容质量和权威性等方面组织审查,并涵盖多语言站点检查。

主要功能

  1. 01检查抓取、索引与站点地图
  2. 02评估速度、安全和移动适配
  3. 03审查页面标题、描述与内容
  4. 04分析内链和关键词覆盖
  5. 05检查多语言 SEO 配置

适用场景

  1. 01开展全站 SEO 审计
  2. 02排查页面收录与规范化问题
  3. 03评估多语言站点配置
  4. 04识别页面内容与关键词优化机会

安装

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

$npx skills add https://github.com/julianromli/ai-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