关于 shopify-geo-audit
shopify-geo-audit 是用于检查 Shopify 店铺 AI 搜索就绪情况并生成修复文件的命令行工具和 MCP 服务。它面向需要评分审计及可直接实施的输出,而不只是审计结果的店铺运营者和 Shopify 从业者。
主要功能
- 01九项 AI 搜索就绪检查
- 020 到 100 的 SRO 评分
- 03生成 Product JSON-LD 和 llms.txt
- 04输出爬虫及修复优先级建议
- 05支持 HTML 报告和 JSON 输出
适用场景
- 01检查 Shopify 店铺的 AI 搜索问题
- 02为商品页面准备结构化数据
- 03在 CI 中用评分设置门槛
MCP 相关
向 MCP 客户端提供 `audit_shopify_store` 工具。它运行与命令行工具相同的审计流程,并以 JSON 返回结果和生成的修复内容。
配置
本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。
工具
1收录的工具列表 · 更新于 3 周前
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| url | string | 是 | Shopify 店面 URL,例如 https://your-store.com |
| products | integer | 否 | 要审核的产品页面数量(默认 5) |
详细介绍
shopify-geo-audit
审计任意 Shopify 商店的 AI 搜索就绪情况,然后生成可直接粘贴使用的修复内容。
npx shopify-geo-audit https://your-store.com

无需账户、API 密钥或配置。它会获取商店页面,针对 ChatGPT、Perplexity、Gemini 和 Google 的 AI Overviews 会读取的信号运行一组检查,为商店打出 0-100 分,并将可直接粘贴的修复内容写入 ./geo-audit-output/。
想将它安装到 PATH 中,而不是通过 npx 运行?npm i -g shopify-geo-audit。
为什么要构建这个工具
我经常做 Shopify 相关的工作,“我们会出现在 AI 答案中吗?”很快就成了客户经常提出的实际问题。这个领域有很多名称——GEO、AEO、AI SEO、LLM SEO、答案引擎优化——但问题都一样:有人向 ChatGPT 或 Perplexity 询问产品推荐时,你的商店能否成为引用来源?现有工具大多只会给你一个仪表板,告诉你毫无存在感,然后就到此为止。真正有用的部分,也是手动操作需要花一下午的部分,是生成实际的结构化数据和配置。所以我编写了这个工具来完成这部分工作。
它刻意保持轻量,并且离线运行。只需一条命令,在本地执行;除了向你正在审计的商店发送请求外,不会有任何内容离开你的设备。
检查内容
共进行九项检查,并根据它们对获得引用的重要程度分配权重:
| 检查项 | 权重 |
|---|---|
产品页面上的 Product JSON-LD(Product/Offer) | 高 |
| robots.txt 未屏蔽 GPTBot / ClaudeBot / PerplexityBot / Google-Extended | 高 |
首页上的 Organization + WebSite 架构 | 中 |
是否存在 /llms.txt | 中 |
| 标题、meta 描述、canonical、Open Graph | 中 |
| 产品描述深度 + 答案优先的开篇 | 中 |
| 一个 H1 和合理的 H2 | 低 |
| 图片替代文本 + 图片架构 | 低 |
是否可访问 sitemap.xml | 低 |
结果为 SRO Score(AI 搜索就绪度):80-100 分表示良好,50-79 分表示需要改进,低于 50 分表示存在风险。
这一工具基于这样的前提:有针对性地改进页面,可以切实提高引擎引用你的频率。这个前提来自最初的 GEO 论文(Aggarwal 等人,KDD 2024),论文测得此类工作最多可将可见度提高约 40%。
生成内容
输出不是一份读完就忘的报告,而是一些文件:
product-jsonld.html— 根据商店实际数据填充的有效Product代码块,可直接用于主题llms.txt— 你的域名内容清单robots-fixes.txt— 解除对 AI 爬虫屏蔽的确切代码行priority-list.txt— 列出所有未通过的检查项,按优先级排序,并为每项提供一行修复建议
传入 --html 后,你还会得到一个独立的 report.html,可供截图或发送给客户:

示例
$ npx shopify-geo-audit https://acme-coffee.com
────────────────────────────────────────────────────────────
Acme Coffee
https://acme-coffee.com/
SRO Score: 41/100 ■ AT RISK
────────────────────────────────────────────────────────────
✗ HIGH Product structured data (JSON-LD)
No valid Product JSON-LD found on 4 product pages. AI can't parse your products.
✗ MED llms.txt present
/llms.txt not found — no content manifest for AI crawlers.
✗ MED Product description depth (answer-first content)
Avg 38 words per product page — too thin.
✗ HIGH AI crawler access (robots.txt)
robots.txt blocks: GPTBot, ClaudeBot.
✓ MED Title, meta description, canonical, Open Graph
✓ LOW Sitemap reachable (/sitemap.xml)
────────────────────────────────────────────────────────────
Generated fixes → ./geo-audit-output/
product-jsonld.html · llms.txt · robots-fixes.txt · priority-list.txt
用法
shopify-geo-audit <url> [options]
-n, --products <n> how many product pages to audit (default: 5)
-o, --out <dir> where to write the fixes (default: ./geo-audit-output)
--html also write a self-contained report.html
--json print raw results as JSON (for CI); fixes still get written
--min-score <n> exit 1 if the score is below n (0-100)
--json 可保持标准输出内容干净,方便通过管道传递;--min-score 则可让 CI 在审计得分较低时失败:
shopify-geo-audit https://store.com --json --min-score 80 | jq '.score.value'
MCP 服务
该审计工具也可作为 MCP 工具运行,因此 Claude、Cursor 或任何 MCP 客户端都能在对话中途审计商店:
{
"mcpServers": {
"shopify-geo-audit": {
"command": "npx",
"args": ["-y", "shopify-geo-audit-mcp"]
}
}
}
该工具只有一个工具 audit_shopify_store:接收一个 URL,并以 JSON 格式返回完整结果和生成的修复内容。它与 CLI 使用相同的处理流程,无需运行其他程序。如果你不想再安装第二个软件包,该服务也作为 shopify-geo-audit-mcp 二进制文件包含在主软件包中。
工作原理
这是一个简单的流水线,将副作用放在两端:
fetch → parse → checks[] → score → fixers[] → report
检查是纯函数 (store) => result,每个文件一个,因此都能轻松测试;添加新检查只需新增一个模块。抓取过程设有 SSRF 防护(不会请求私有或保留地址,并会在每次跳转时重新验证),所有从网络获取并解析的数据都会先通过 zod 验证,之后才会被信任。
开发
git clone https://github.com/builtbyabs/shopify-geo-audit.git
cd shopify-geo-audit
npm install
npm run build
node bin/cli.js https://some-store.com
npm test # vitest, one spec per check
npm run typecheck # strict, no any
常见问题
这不就是换了个名字的 SEO 吗? 有重叠,但并不相同。商店在 Google 上排名不错,也可能无法为 ChatGPT 提供任何可引用的内容——没有 Product JSON-LD、描述过于简略,或者 robots.txt 屏蔽了爬虫。这里的检查专门针对 AI 引擎解析和引用的内容。
为什么只支持 Shopify?
因为 Shopify 的规则比较统一。产品发现使用 /products.json(并提供 sitemap 回退方案),生成的修复方案也遵循 Shopify 主题惯例,因此能实际适用,而不是泛泛而谈。它可以针对任何 URL 运行,但在非 Shopify 网站上,产品级检查找不到太多内容。
我的任何数据会离开本机吗? 不会。唯一的网络请求会发往你正在审计的商店。没有遥测、没有账户,也不会向外发送任何数据。
我的评分很低,该从哪里开始?
查看输出文件夹中的 priority-list.txt——其中列出了所有未通过的检查,按权重排序,每项都附有一行修复建议。两项高优先级问题(Product JSON-LD、robots.txt)通常加起来一小时就能解决。
参与贡献
添加检查是最简单的贡献方式:在 src/checks/ 中添加一个文件,再添加一个 fixture 和测试,并将其接入 src/index.ts。请参阅 CONTRIBUTING.md。欢迎提交问题和 PR;good first issue 标签的问题适合新手。
如果这个工具为你省下了一个下午,点个星就能让其他 Shopify 用户找到它。
许可证
MIT © Abhishek Chauhan
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。