关于 Ranki.io Seo/aeo Consultant
Ranki.io Seo/aeo Consultant 是用于 SEO 与答案引擎审计、网站速度分析、图片优化指导和内容规划的 MCP 服务,面向网站运营者与编码 Agent。工具会返回可执行的修复建议,并可重新审计以检查评分变化。
主要功能
- 01审计 SEO 与答案引擎就绪度
- 02测量 Lighthouse 和 Core Web Vitals
- 03提供图片转换与标记建议
- 04生成站点地图和爬虫文件
- 05提供关键词、选题与标题研究
- 06连接 Ranki.io 账户数据
适用场景
- 01审计刚上线的网站
- 02改善速度和图片交付
- 03为 AI 搜索引用准备页面
- 04寻找内容主题和关键词差距
MCP 相关
它向 MCP 客户端提供 22 种工具,包括审计、生成、优化指导和 Ranki.io 账户数据工具。支持 stdio 与 HTTP 传输;付费账户数据工具需要 Ranki.io API 密钥。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.ranki.ioclaude mcp add --transport http seo-aeo-audit-mcp-ranki https://mcp.ranki.io{"mcpServers":{"seo-aeo-audit-mcp-ranki":{"type":"http","url":"https://mcp.ranki.io"}}}在 Cursor 中打开{"servers":{"seo-aeo-audit-mcp-ranki":{"type":"http","url":"https://mcp.ranki.io"}}}在 VS Code 中打开{"mcpServers":{"seo-aeo-audit-mcp-ranki":{"type":"http","url":"https://mcp.ranki.io"}}}{"mcpServers":{"seo-aeo-audit-mcp-ranki":{"serverUrl":"https://mcp.ranki.io"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://mcp.ranki.io需要授权工具
详细介绍
Ranki MCP — 面向 Cursor、Claude Code、Windsurf 和 ChatGPT 的免费 SEO、AEO、速度与图片优化 MCP
这个 MCP 不只是生成报告,还会让你的 Agent 修复问题。它会审计任意 URL 的 SEO 和答案引擎优化,通过 Google PageSpeed Insights 测量真实的 Core Web Vitals,并指示你的 Agent 将图片转换为 AVIF 和 WebP、把
<img>标签改写为包含srcset和alt的响应式<picture>、添加 JSON-LD schema、生成sitemap.xml/llms.txt/robots.txt、对隐藏页面分类,然后重新运行审计,验证评分是否提升。所有操作都可以在 Claude Code、Claude Desktop、Cursor、Windsurf 和 ChatGPT Desktop 中完成。
一行安装
npx @ranki.io/cli install
CLI 会自动检测你安装的 AI 编辑器(Claude Code、Claude Desktop、Cursor、Windsurf、ChatGPT Desktop),在正确的位置写入对应的 MCP 配置,并从 ranki-seo-skills repo 下载配套的 Skill 文件。之后可重新运行 npx @ranki.io/cli update 来更新 Skill;npx @ranki.io/cli check 可验证设置是否正确。
更喜欢手动 JSON 代码片段?下方的 安装 部分提供了各编辑器的示例。
两种实现,相同的工具
此仓库提供 MCP 的两种功能对等的实现,你可以根据技术栈选择:
server/— PHP 8.4 参考实现,为mcp.ranki.io提供生产环境服务。托管、经过加固、零依赖,在 Cloudflare 后运行。这是mcp.ranki.io的底层实现。ts-server/— Node / TypeScript 参考实现,以@ranki.io/seo-aeo-mcp的形式发布在 npm 上。适合偏好 JavaScript 工具链的开发者使用的原生 Node 替代方案,可通过npx -y @ranki.io/seo-aeo-mcp(stdio)或npx @ranki.io/seo-aeo-mcp --serve(HTTP)安装。
两种实现均提供相同的 22 个工具、相同的 JSON 输出、SSRF 防护、速率限制语义和安全机制。TS 实现会在 Node 中原生运行 15 个免费工具,并将 7 个付费桥接工具代理到与 PHP 服务相同的 app.ranki.io REST API。两者都不会打开数据库——付费工具通过 Laravel 的 ApiKeyAuth 中间件处理,并限定为调用用户自己的数据。
实际功能 — 22 个工具
MCP 服务提供 22 个工具。你的 Agent 像调用其他 MCP 工具一样调用它们;工具会返回 Markdown 报告,由你的 Agent 在行内呈现并据此采取行动——转换文件、改写 HTML、生成新文件并提交结果。
审计
audit_seo(url)— 包含 10 项检查的页面 SEO 评分卡:标题长度、元描述、H1 唯一性、canonical、viewport、HTTPS、OpenGraph 完整度、图片 alt 覆盖率、内部链接数量、JSON-LD 是否存在。返回 0–100 的评分,并为每项失败提供修复方法。audit_aeo(url)— 包含 8 项检查的答案引擎优化评分卡:FAQPage / Article JSON-LD、80 个词以内的定义性引言、作者署名、是否存在llms.txt、robots.txt是否允许 GPTBot / ClaudeBot / PerplexityBot、答案式 H2/H3 标题、对比表格。audit_hidden_pages(urls, domain)— 根据说明将每个路径分类为robots-disallow、noindex、keep或unsure。可识别管理路由、API 端点、草稿、登录页面、账户仪表盘、感谢页面、构建产物和搜索结果 URL。返回可直接粘贴的robots.txt代码块。
速度和图片——这是其他工具都做不到的部分
audit_speed(url, strategy)— 通过 Google PageSpeed Insights 获取真实的 Lighthouse 评分(性能、无障碍、SEO、最佳实践)和 Core Web Vitals(LCP、CLS、INP、FCP、TTFB)。返回图片优化机会及每个文件可节省的字节数、阻塞渲染的 JS / CSS,以及未通过的页面 SEO 审计项。默认策略为mobile(Google 优先按移动版排名)。audit_core_web_vitals(url)— 每项指标都附带一段说明和具体的修复方案。“LCP 元素是 2.4 MB 的 hero.png,转换为 WebP 可节省 1.8 MB → LCP 提升 1.1 秒。” 从 Lighthouse 中提取 LCP 元素 URL,让 Agent 确切知道要优化哪个文件。optimize_images(images, max_width)— 为每张图片提供目标格式(AVIF + WebP)、响应式 1×/2× 宽度、替代文本建议、具体的sharp-cli/cwebp/avifenc命令,以及可直接粘贴的<picture>块和srcset。你的 Agent 会在仓库本地执行转换并重写<img>标签。
生成
generate_sitemap_xml(urls)— 根据 URL 列表生成可直接部署的sitemap.xml,并附上当前的lastmod时间戳。generate_llms_txt(site_name, summary, key_pages)— 生成llms.txt。这是一个新兴标准,用于告知 AI 爬虫你的网站内容及其应引用的页面。generate_robots_txt(sitemap_url, allow_ai, disallow_paths)— 生成robots.txt,明确允许或禁止 GPTBot、ChatGPT-User、ClaudeBot、anthropic-ai、PerplexityBot 和 Google-Extended 访问。
内容和策略
seo_starter_kit(domain)— 返回许多通过 vibe coding 构建的网站所缺少的四个基础文件(robots.txt、sitemap.xml、llms.txt、JSON-LD),可直接粘贴到仓库中。find_topic_ideas(url)— 读取你的首页、推断你所在的细分领域,并返回一份结构化简报,涵盖 15 个文章主题,涉及信息型、商业型和交易型意图,并提供优先级评估标准。find_keyword_gap(url, competitors)— 返回查找竞争对手排名关键词而你没有排名的关键词的分步方法。如果未提供竞争对手,会提示你的编辑先询问。propose_titles_metas(urls, focus_keyword)— 提取每个 URL 的实际标题、h1 和首段(也可接受尚未部署页面的自由文本描述),然后返回一个 Markdown 表格,为每个页面提供 5 个标题和元描述候选项,涵盖 5 种角度(描述型、突出优势型、疑问句型、具体数字型、关键词优先型)。每个候选项都会标注长度是否合规。explain_seo_terms(category)— 提供 40 多个 SEO 和 AEO 术语的参考词汇表:SEO、AEO、GEO、JSON-LD、FAQPage、canonical、llms.txt、Core Web Vitals、E-E-A-T、helpful content update、doorway pages 等。可按类别筛选:基础、AEO、技术、分析、处罚。
安装
install_skill(agent)— 返回在 Claude Code、Claude Desktop、Cursor、Windsurf、Claude.ai web Projects 和通用AGENTS.mdAgent 中安装 ranki-seo-skills Skill 的命令。
你的 Ranki.io 账户 — 在 IDE 中查看真实排名数据(付费 API 密钥)
get_account()— 查询 API 密钥对应的账户信息:姓名、电子邮箱、套餐、每日和每月限额、当前用量。list_projects()— 列出你 Ranki.io 账户中的项目。list_articles(project_id)— 按页列出项目中的文章:nano_id、标题、状态、语言、focus_keyword[]、目录大纲、字数、SEO 评分。可选按状态筛选。get_article(article_id)— 按文章的nano_id获取单篇文章:标题、HTML、重点关键词、目录、嵌入的图片 URL、SEO 评分。list_rank_tracking(project_id)— 项目的 Google Search Console 摘要:28 天总计、按点击次数排名前 20 的关键词、排名机会关键词前 20(排名 > 10 且有展示次数——容易取得成效的关键词)。list_gsc_keywords(project_id)— 完整的分页 GSC 关键词列表,可按点击次数 / 展示次数 / 排名 / CTR 排序。ai_visibility(project_id)— 记录的 AI 引用快照:在抓取时,你跟踪的哪些主题出现在 ChatGPT、Claude、Perplexity 和 Google AI Overview 的 SERP 中。
一次典型会话的流程
You: audit my site speed and fix the slow images
Claude: → Calling ranki.audit_speed(url="https://myapp.dev")
← Lighthouse: 42 perf · LCP 4.8s · 3 images blocking the paint.
→ Calling ranki.optimize_images([hero.png, banner.jpg, card.png])…
← 3 files, recipes returned.
→ Running sharp-cli to convert hero.png → hero.avif + hero.webp + [email protected]…
→ Editing app/page.tsx — rewriting <img> as <picture srcset>, adding alt text…
→ Calling ranki.audit_speed again to verify…
← Lighthouse: 96 perf · LCP 1.4s.
You: now find pages that shouldn't be in Google
Claude: → Calling ranki.audit_hidden_pages(domain="https://myapp.dev")
← 8 robots-disallow, 12 noindex, 118 keep, 4 unsure.
→ Editing public/robots.txt to disallow /admin /dashboard /checkout /account…
→ Adding <meta name="robots" content="noindex"> to app/search/page.tsx…
Done. Submit URL-removal requests in Search Console for the 8 admin pages.
Skill 文件(位于 ranki-seo-skills)会告知你的 Agent 何时调用哪个工具、按什么顺序调用,以及在代码仓库的什么位置应用每项修复。
速率限制
| 层级 | 每日上限 | 范围 | 可用工具 |
|---|---|---|---|
| 无密钥 | 5 次调用 | 每个 IP | 15 个免费工具(审计、生成器、速度、图片优化、内容策略、安装) |
| Ranki.io API 密钥 | 500 次调用 | 每个密钥 | 全部 22 个工具,包括 7 个桥接工具,可从你的 Ranki.io 账户读取真实的 GSC 关键词、排名跟踪、AI 引用、项目列表和文章库 |
前往 app.ranki.io/developer 获取密钥。每次响应都会返回 X-RateLimit-Limit、X-RateLimit-Remaining 和 X-RateLimit-Reset。调度器的错误消息会包含重置倒计时和升级方式。
安装
Claude Desktop / Claude Code(推荐给大多数氛围编程者)
添加到 ~/.claude/claude_desktop_config.json:
{
"mcpServers": {
"ranki": {
"command": "npx",
"args": ["-y", "@ranki.io/mcp"],
"env": { "RANKI_API_KEY": "rk_live_..." }
}
}
}
重启 Claude Desktop。MCP 指示器应显示 ranki,并包含 22 个工具。
Cursor(HTTP 传输,无需 npx)
项目中的 .cursor/mcp.json:
{
"mcpServers": {
"ranki": {
"url": "https://mcp.ranki.io",
"headers": { "X-API-Key": "rk_live_..." }
}
}
}
ChatGPT Desktop、Continue.dev、Zed 及其他支持 MCP 的客户端
如果客户端支持 stdio MCP,请使用 Claude Desktop 片段。如果支持 HTTP MCP,请使用 Cursor 片段。
获取免费 API 密钥
前往 app.ranki.io/developer,然后点击 Reveal。你的密钥已经存在——每个 Ranki.io 账户都会自动创建一个。免费顾问工具无需密钥即可使用(每个 IP 每天 5 次调用);list_projects 和 get_article 桥接工具则需要密钥。
氛围编程者如何使用
场景 1:“我刚发布了一个网站,接下来该做什么?”
You: I just shipped my Next.js app at https://myapp.com. What SEO do I need?
Claude (via Ranki MCP):
→ Calling seo_starter_kit(domain="myapp.com")
← [Returns robots.txt + sitemap.xml + llms.txt + JSON-LD templates]
→ Writing public/robots.txt
→ Writing public/sitemap.xml (enumerating pages from app/ directory…)
→ Writing public/llms.txt
→ Adding JSON-LD <script> to app/layout.tsx
→ Calling audit_seo to verify…
← Score: 92/100. 🎉
场景 2:“为什么 ChatGPT 没有引用我的文档?”
You: Why doesn't ChatGPT cite my docs site?
Claude (via Ranki MCP):
→ Calling audit_aeo(url="https://docs.myproduct.com")
← Score 38/100. Failing: no FAQPage schema, no llms.txt, robots.txt blocks ClaudeBot.
→ Fixing each failure in your repo…
← Score 88/100. Re-deploy and ChatGPT should pick it up within 7-14 days.
场景 3:“我不知道该写什么博客文章”
You: I have a Stripe alternative landing page but the blog is empty. Help.
Claude (via Ranki MCP):
→ Calling find_topic_ideas(url="https://mystripe-alt.com")
← [Returns brief with topic generation methodology + 15-topic structure]
→ [Generates 15 topics organized by intent, picks top 3]
← Recommended first 3 articles:
1. "How to switch payment processors without losing customers" (transactional)
2. "Stripe vs us: side-by-side fee comparison for $10K/mo MRR" (commercial)
3. "What is interchange-plus pricing and why most SaaSes overpay" (informational)
场景 4:“我还缺少哪些关键词机会?”
You: My competitors are stripe.com and lemonsqueezy.com. What am I missing?
Claude (via Ranki MCP):
→ Calling find_keyword_gap(url="https://mystripe-alt.com",
competitors=["stripe.com","lemonsqueezy.com"])
← [Returns methodology + per-competitor analysis steps]
→ Crawling /blog on both competitors…
→ Cross-referencing against your sitemap…
← 5 high-value gaps found:
- "PCI compliance for small SaaS" (covered by Stripe, not you)
- "How to handle subscription dunning" (covered by both, not you)
- … 3 more
架构
┌────────────────────────┐ ┌──────────────────────────┐
│ Claude / Cursor / etc │ │ mcp.ranki.io (PHP) │
│ │ │ │
│ 1. Sees 22 tools │ JSON-RPC│ - 22 tool definitions │
│ 2. Decides to use one ├────────►│ - HTTP + stdio (npx) │
│ 3. Receives advice │ │ - 5/IP or 500/key per │
│ 4. Acts on the repo │ │ UTC day rate limit │
│ │ │ - REST API bridge │
└────────────────────────┘ └────────────┬─────────────┘
│ (only for keyed tools)
▼
┌──────────────────────────┐
│ app.ranki.io REST API │
│ /api/v1/projects │
│ /api/v1/articles/... │
└──────────────────────────┘
两种传输方式
- stdio(Claude Desktop、Claude Code、大多数 MCP 客户端)——安装
@ranki.io/mcpnpm 包。它是一个 50 行的 Node.js 垫片,可将 stdio JSON-RPC 代理到https://mcp.ranki.io。 - HTTP(Cursor、自定义客户端)——直接指向
https://mcp.ranki.io。无需安装 Node。
仓库布局
ranki-mcp/
├── server/ # PHP MCP server (deployed to mcp.ranki.io)
│ ├── public/index.php # GET → marketing landing page (HTML)
│ ├── index.php # POST → JSON-RPC 2.0 dispatcher
│ ├── lib/
│ │ ├── jsonrpc.php # JSON-RPC reply helpers
│ │ ├── registry.php # Tool registry + REST API bridge
│ │ └── ratelimit.php # Per-IP rate limit (5/day for free tier)
│ └── tools/
│ ├── seo_starter_kit.php
│ ├── find_topic_ideas.php
│ ├── find_keyword_gap.php
│ ├── audit_aeo.php
│ ├── audit_seo.php
│ ├── generate_sitemap_xml.php
│ ├── generate_llms_txt.php
│ ├── generate_robots_txt.php
│ ├── list_projects.php
│ └── get_article.php
└── npx/ # Node.js stdio shim (published as @ranki.io/mcp)
├── package.json
├── index.js # ~50 lines: stdin→POST→stdout
└── README.md
SEO 与 AEO——有什么区别?
**SEO(搜索引擎优化)**是让你的网站在 Google 传统的 10 个蓝色链接中获得较高排名。相关信号包括:标题标签、元描述、H1、规范链接、站点地图、内链、页面速度、移动设备适配和 HTTPS。Ahrefs / SEMrush / SurferSEO 等工具会为这些指标评分。
AEO(答案引擎优化)是让 ChatGPT、Claude、Perplexity 或 Google AI Overviews 在回答用户问题时引用你的网站。相关信号有所不同:
- FAQPage JSON-LD——最重要的引用信号。
- 定义式开篇——第一段用简洁的“X 是……”给出答案。
- 作者署名 + E-E-A-T——大模型更倾向于引用注明作者姓名的来源。
llms.txt——明确邀请大模型使用你的内容。robots.txt允许 AI 机器人抓取——不得屏蔽 GPTBot / ClaudeBot / PerplexityBot。- 答案式标题——将 H2/H3 写成问题(“什么是 X?”、“X 如何运作?”)。
- 对比表格——AI Overviews 中引用率最高的 HTML 元素。
audit_aeo 会检查上述全部 8 项,并告诉你的 AI 具体需要修复哪些问题。截至 2026 年,AEO 流量是增长最快的 SEO 渠道,而大多数网站对此毫无准备。
llms.txt——新兴的 AI 搜索标准
灵感来自 robots.txt,但面向大模型。位于 /llms.txt 的 Markdown 文件会告诉 AI 爬虫:
- 你的网站是关于什么的(使用通俗易懂的英文,而不是元数据)。
- 哪些页面最重要。
- 应如何引用你。
# Acme Corp
> Acme makes the SDK for shipping React Native apps faster.
## Key pages
- [Homepage](https://acme.dev/)
- [Documentation](https://acme.dev/docs)
- [Pricing](https://acme.dev/pricing)
- [Blog](https://acme.dev/blog)
## About
- Founded 2024, based in Berlin.
- Used by 12,000+ teams including Linear and Notion.
- Open source SDK on github.com/acme/sdk.
使用 generate_llms_txt,5 秒即可生成一个文件。
自托管
MCP 服务采用纯 PHP 8.4 编写——无需框架、数据库或 Composer 依赖。将 server/ 目录放到用于提供 public/index.php 的 Nginx 虚拟主机后面即可。
server {
server_name mcp.yourdomain.com;
root /var/www/ranki-mcp/server/public;
index index.php;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/run/php/php8.4-fpm.sock;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
}
}
lib/ratelimit.php 使用 /tmp/ 中的文件进行 IP 速率限制——开箱即用。若要大规模使用 Redis 实现速率限制,可替换其实现。
贡献
欢迎提交 PR,添加新的顾问工具。添加工具的步骤:
- 创建
server/tools/your_tool.php,返回一个可调用的function (array $args, string $apiKey): array。 - 返回
rk_mcp_text_content("...your structured advice...")。 - 在
server/lib/registry.php的rk_mcp_tool_definitions()下注册该工具。
工具命名:使用 <verb>_<noun> 形式的 snake_case(例如 audit_aeo、find_topic_ideas)。
工具设计理念:返回数据 + 给调用 AI 的指示,绝不自行调用大模型。
常见问题
这需要付费吗?
顾问工具(除 list_projects / get_article 外的所有工具)均为免费——每天(UTC)每个 IP 可调用 5 次。要取消此限制,请在 app.ranki.io/developer 免费获取 API 密钥。桥接工具需要密钥,因为它们会读取你的 Ranki.io 私有数据。
Ranki MCP 会消耗我的 Claude 额度吗?
**会,而且只消耗你自己的额度。**我们绝不会调用大模型。MCP 服务会返回结构化建议;你的 Claude / Cursor 会使用你自己的额度评估并执行这些建议。
数据会流向哪里?
- 顾问工具(
audit_*、generate_*、seo_starter_kit、find_*)会获取你传入的 URL(不会进行其他网络调用)。 - 桥接工具(
list_projects、get_article)会通过 HTTPS 使用你的X-API-Key调用app.ranki.io/api/v1/...。 - 我们不会记录请求正文。为进行速率限制和调试,我们会记录 IP、工具名称和响应状态。
它是开源的吗?
是——采用 MIT 许可证,完整源代码位于此仓库中。
我可以在公司的 VPC 内运行它吗?
可以——server/ 采用纯 PHP 编写,不依赖任何外部服务;桥接工具除外,它们依赖 app.ranki.io(你可以移除相应的工具文件来禁用这些工具)。
这与 Surfer / Frase / Outrank 等竞品有什么不同?
这些产品是 SaaS 仪表板,每次审查一个 URL 并提供修改建议。Ranki MCP 是一个协议层,可让你的 AI 在 IDE 中编写代码时直接使用这些审查结果。形式不同、价格不同(免费)、面向的用户也不同(面向氛围编码者,而非 SEO 专业人士)。
我是个氛围编程爱好者,完全不知道 AEO 是什么。
这正是为你准备的。从 seo_starter_kit("yourdomain.com") 开始,你的 Claude 会一步步带你完成所有操作。
你们会用我的数据训练 AI 吗?
我们不训练模型。我们也没有模型。我们只是在确定性检查之上提供轻量级建议。
许可证
MIT。请参阅 LICENSE。
由 Ranki.io 用心打造——为创始人、代理机构和创作者提供 AI SEO + AEO 自动化。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。