mcpField
S
seo-score

seo-score

github.com/hainrixz营销与增长79201 次安装3 天前更新
代码仓库

关于 seo-score

根据审核发现计算 Search SEO 和 AI Visibility 分数,并应用规定的权重、严重度上限、等级和覆盖率规则,适用于生成可复现的审核评分。

主要功能

  1. 01计算 Search SEO 和 AI 分数
  2. 02应用状态与严重度系数
  3. 03调整有效类别权重
  4. 04对严重失败设置分数上限
  5. 05报告等级与覆盖率

适用场景

  1. 01为一组 SEO 发现评分
  2. 02比较搜索与 AI 可见性结果
  3. 03为 CI 生成可复现的审核分数

安装

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

$npx skills add https://github.com/hainrixz/claude-seo-ai --skill seo-score

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

详细介绍

seo-score

将发现项(符合 schema/finding.schema.json)转换为两个分数。完整模型见 references/scoring-model.md——请严格遵循。

步骤

  1. 按各模块映射到的类别分组发现项,并分别计算各项分数。发现项仅计入 expected_impact.axis(search、ai 或 both)指定的分数。
  2. 类别值 = 100 × Σ(status_factor × severity for scored findings) / Σ(severity),其中 status_factor:pass 为 1.0,warn 为 0.5,fail 为 0.0。needs_api 和 not_applicable 不计入任一求和。
  3. 有效权重:移除未产生任何发现项的条件类别(电商、本地、国际),并将其余权重重新归一化,使其总和等于有效权重总和。
  4. 分数 = 对 Search SEO 和 AI Visibility 分别计算 Σ(category_value × weight) / Σ(active weight)。
  5. 严重性门槛:如果存在 severity: 5 且 status: fail 的发现项,则将受影响的分数上限设为 40,并设置 capped: true。
  6. 指定等级(A≥90、B≥80、C≥70、D≥60、F<60),并根据 Search×AI 象限给出一句话解读。 6b. 覆盖率下限:报告 coverage(该轴始终启用的权重中,包含已评分发现项的百分比)。若低于 50%,该轴返回 provisional: true 和 state: "partial"——必须同时注明等级和覆盖率,不能只写字母。
  7. M21(AI 发现与 Agent 端点——llms.txt、agents.md、UCP、Agentic 网站地图)的权重为 0——需报告,但不得影响 AI 分数。

确定性

优先使用 node "${CLAUDE_PLUGIN_ROOT}/scripts/score.mjs" --run <run-dir>(它会读取 <run-dir>/findings.json),或使用 --findings <path> 指定普通发现项文件。如果文件不包含运行上下文,则添加 --vertical a,b、--multilingual 和 --environment production|preview|staging|local,以确保结果可复现且可由 CI 检查。--run 接受路径,不能使用单词 latest:score 命令会先从 <root>/<host>/latest.json 解析 latest[:host],再传入目录。如果无法使用 Node,请按照相同公式手动计算并注明此备用方式。无论采用哪种方式,计算结果都必须与 references/scoring-model.md 一致。

输出

{ "search_seo": { "value": 78, "band": "C", "capped": false, "interpretation": "...", "categories": [ {"name":"Indexability & Crawl","weight":22,"value":91,"active":true}, ... ] },
  "ai_visibility": { "value": 64, "band": "D", "capped": false, "interpretation": "Citable structure missing; add answer blocks and schema.", "categories": [ ... ] } }

评论

支持 Markdown