mcpField
S
seo-technical

seo-technical

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

关于 seo-technical

seo-technical 是用于检查网站技术 SEO 的技能,覆盖抓取、索引、安全和性能等方面。它还包含 Agent-UX 扫描,可报告无障碍树与 HTML 的相关发现。

主要功能

  1. 01审查抓取与索引情况
  2. 02检查安全性和 URL 结构
  3. 03检查移动端与 Core Web Vitals
  4. 04检查结构化数据和 JavaScript SEO
  5. 05使用 Playwright 扫描 Agent-UX
  6. 06按优先级整理发现

适用场景

  1. 01上线前审查网站
  2. 02排查索引或抓取问题
  3. 03检查面向 Agent 的无障碍信号

安装

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

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

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

附带文件references/agent-friendly-pages.md

详细介绍

技术 SEO 审核

类别

1. 可抓取性
  • robots.txt:存在、有效,且未屏蔽重要资源
  • XML 站点地图:存在、已在 robots.txt 中引用,且格式有效
  • Noindex 标签:确认是有意设置还是意外设置
  • 抓取深度:重要页面距首页不超过 3 次点击
  • JavaScript 渲染:检查关键内容是否需要执行 JS
  • 抓取预算:对于大型网站(>10k 个页面),效率很重要
AI 爬虫管理

截至 2025-2026 年,AI 公司会主动抓取网络内容,用于训练模型并支持 AI 搜索。通过 robots.txt 管理这些爬虫是技术 SEO 中的一项重要考量。

已知 AI 爬虫:

爬虫公司robots.txt 标记用途
GPTBotOpenAIGPTBot模型训练
ChatGPT-UserOpenAIChatGPT-User实时浏览
ClaudeBotAnthropicClaudeBot模型训练
PerplexityBotPerplexityPerplexityBot搜索索引 + 训练
BytespiderByteDanceBytespider模型训练
Google-ExtendedGoogleGoogle-ExtendedGemini 训练(不影响搜索)
CCBotCommon CrawlCCBot开放数据集

重要区别:

  • 屏蔽 Google-Extended 会阻止 Gemini 将内容用于训练,但不会影响 Google 搜索索引或 AI Overviews(这些使用 Googlebot)
  • 屏蔽 GPTBot 会阻止 OpenAI 用内容进行训练,但不会阻止 ChatGPT 通过浏览功能引用内容(使用 ChatGPT-User)
  • 目前约有 3-5% 的网站使用 AI 专用 robots.txt 规则

示例:有选择地屏蔽 AI 爬虫:

# Allow search indexing, block AI training crawlers
User-agent: GPTBot
Disallow: /

User-agent: Google-Extended
Disallow: /

User-agent: Bytespider
Disallow: /

# Allow all other crawlers (including Googlebot for search)
User-agent: *
Allow: /

建议: 在屏蔽爬虫之前,考虑 AI 可见性策略。被 AI 系统引用有助于提升品牌认知度并带来引荐流量。请参阅 seo-geo 技能,了解完整的 AI 可见性优化方法。

2. 可索引性
  • Canonical 标签:指向自身,且与 noindex 不冲突
  • 重复内容:近似重复内容、参数 URL、www 与非 www 版本
  • 内容单薄:低于各类型页面最低字数要求的页面
  • 分页:采用 rel=next/prev 或加载更多模式
  • Hreflang:适用于多语言/多地区网站,且设置正确
  • 索引膨胀:不必要的页面消耗抓取预算
3. 安全性
  • HTTPS:强制启用、SSL 证书有效,且无混合内容
  • 安全标头:
    • Content-Security-Policy (CSP)
    • Strict-Transport-Security (HSTS)
    • X-Frame-Options
    • X-Content-Type-Options
    • Referrer-Policy
  • HSTS 预加载:对于高安全性网站,检查是否已加入预加载列表
4. URL 结构
  • 简洁 URL:描述性强、使用连字符,内容页面不带查询参数
  • 层级结构:采用反映网站架构的合理文件夹结构
  • 重定向:无重定向链(最多 1 次跳转),永久迁移使用 301
  • URL 长度:标记超过 100 个字符的 URL
  • 末尾斜杠:保持使用方式一致
5. 移动设备优化
  • 响应式设计:设置 viewport meta 标签并使用响应式 CSS
  • 触控目标:至少 48x48px,间距为 8px
  • 字号:基础字号至少为 16px
  • 无水平滚动
  • 移动优先索引:Google 会索引移动版本。截至 2024 年 7 月 5 日,移动优先索引已 100% 完成。 Google 现在仅使用移动版 Googlebot user-agent 抓取和索引所有网站。
6. Core Web Vitals
  • LCP(最大内容绘制):目标 <2.5s
  • INP(交互到下一次绘制):目标 <200ms
    • INP 于 2024 年 3 月 12 日取代 FID。FID 于 2024 年 9 月 9 日从所有 Chrome 工具(CrUX API、PageSpeed Insights、Lighthouse)中彻底移除。请勿在任何地方提及 FID。
  • CLS(累积布局偏移):目标 <0.1
  • 评估采用真实用户数据的第 75 百分位数
  • 如果 MCP 可用,请使用 PageSpeed Insights API 或 CrUX 数据
7. 结构化数据
  • 检测方式:JSON-LD(首选)、Microdata、RDFa
  • 根据 Google 支持的类型进行验证
  • 完整分析请参阅 seo-schema 技能
8. JavaScript 渲染
  • 检查内容是否在初始 HTML 中可见,还是需要 JavaScript
  • 判断是客户端渲染(CSR)还是服务器端渲染(SSR)
  • 标记可能导致索引问题的 SPA 框架(React、Vue、Angular)
  • 如适用,验证动态渲染设置
JavaScript SEO:规范链接与索引指导(2025 年 12 月)

Google 于 2025 年 12 月更新了 JavaScript SEO 文档,并对以下关键事项作出说明:

  1. 规范链接冲突: 如果原始 HTML 中的规范链接标签与 JavaScript 注入的标签不一致,Google 可能会采用其中任意一个。确保服务器渲染的 HTML 与 JS 渲染的输出中的规范链接标签完全一致。
  2. JavaScript 与 noindex: 如果原始 HTML 包含 <meta name="robots" content="noindex">,但 JavaScript 将其移除,Google 仍可能遵循原始 HTML 中的 noindex 指令。应在初始 HTML 响应中提供正确的 robots 指令。
  3. 非 200 状态码: 对于返回非 200 HTTP 状态码的页面,Google 不会渲染 JavaScript。通过 JS 注入到错误页面的任何内容或元标签,Googlebot 都不可见。
  4. JavaScript 中的结构化数据: 通过 JS 注入的 Product、Article 及其他结构化数据可能会延迟处理。对于有时效要求的结构化数据(尤其是电子商务 Product 标记),应将其包含在初始服务器渲染的 HTML 中。

最佳实践: 应在初始服务器渲染的 HTML 中提供关键 SEO 元素(规范链接、meta robots、结构化数据、标题、meta description),而不是依赖 JavaScript 注入。

9. IndexNow 协议
  • 检查网站是否支持面向 Bing、Yandex、Naver 的 IndexNow
  • 除 Google 外,其他搜索引擎也支持它
  • 建议实施,以加快在非 Google 搜索引擎中的索引速度

面向 Agent 的页面(前瞻性内容)

AI Agent(不只是 AI 摘要工具)越来越多地通过三个渠道读取网站:截图中的视觉模型、原始 HTML/DOM,以及无障碍树(最清晰的信号)。审计标准——语义化 HTML(使用真正的 <button> 和 <a>,而非 <div onclick>)、标签关联、交互目标尺寸、模板间布局稳定性、cursor: pointer 的正确性——请参阅 references/agent-friendly-pages.md。

审计命令
# Render with Playwright + capture accessibility tree, then score
python scripts/agent_ux_check.py https://example.com --json

扫描器会输出 Agent-UX 评分(0-100)以及逐项列出的问题:

  • HTML 检查结果:真正的按钮/锚点、<div onclick> 小部件、语义化地标、缺少 <label for> 的输入框、缺少 ARIA 标签的输入框
  • 无障碍树检查结果:节点总数、交互节点、未命名的交互元素、role="generic" 占比

无障碍树快照使用 Playwright 的 page.accessibility.snapshot(interesting_only=False)。若要捕获树而不评分,请使用 python scripts/render_page.py <url> --a11y-tree --json。

应将发现的问题作为改进机会呈现,而非缺陷。相关标准(WebMCP、Agent UX 启发式)尚处早期阶段——不要以低于 100 的评分作为审计门槛。

输出

技术评分:XX/100
类别明细
类别状态评分
可抓取性pass/warn/failXX/100
可索引性pass/warn/failXX/100
安全性pass/warn/failXX/100
URL 结构pass/warn/failXX/100
移动设备pass/warn/failXX/100
核心 Web 指标pass/warn/failXX/100
结构化数据pass/warn/failXX/100
JS 渲染pass/warn/failXX/100
IndexNowpass/warn/failXX/100
严重问题(立即修复)
高优先级(1 周内修复)
中优先级(1 个月内修复)
低优先级(待办)

DataForSEO 集成(可选)

如果有可用的 DataForSEO MCP 工具,请使用 on_page_instant_pages 进行真实页面分析(状态码、页面耗时、失效链接、页面检查),使用 on_page_lighthouse 执行 Lighthouse 审计(性能、无障碍性、SEO 评分),并使用 domain_analytics_technologies_domain_technologies 检测技术栈。

Google API 集成(可选)

如果已配置 Google API 凭据,请使用 python scripts/pagespeed_check.py <url> --json 获取真实的 PSI + CrUX 实测字段数据(替代仅基于实验室数据的 CWV 估算值),使用 python scripts/crux_history.py <url> --json 获取 25 周的 CWV 趋势,并使用 python scripts/gsc_inspect.py <url> --json 获取每个 URL 的真实索引状态。

错误处理

情况操作
URL 无法访问报告连接错误及状态码。建议验证 URL、检查 DNS 解析,并确认网站可公开访问。
未找到 robots.txt说明在根域名下未检测到 robots.txt。建议创建包含适当指令的文件。继续审计其余类别。
未配置 HTTPS标记为严重问题。报告 HTTP 是否未重定向、是否存在混合内容,或 SSL 证书是否缺失/已过期。
无法获取 Core Web Vitals 数据说明 CrUX 数据不可用(低流量网站常见)。建议使用 Lighthouse 实验室数据作为参考,并建议增加流量后重新测试。

评论

支持 Markdown