关于 AI Bot Access Checker
AI Bot Access Checker 检查 13 种 AI 和搜索爬虫能否访问指定 URL,并区分 robots.txt 规则与服务器或防火墙拦截。它提供网页工具、REST API 和远程 MCP 服务。
主要功能
- 01检查 13 种爬虫 User-Agent
- 02将爬虫响应与浏览器响应比较
- 03报告 robots.txt 和服务器拦截
- 04提供 REST API 和网页界面
- 05只读 MCP 工具
适用场景
- 01诊断 AI 爬虫无法访问页面的原因
- 02检查防火墙或限速对爬虫的响应
- 03修改 robots.txt 前检查爬虫访问情况
MCP 相关
远程 MCP 服务位于 `https://tools.seopaslaugos.io/mcp`,提供只读工具 `check_ai_bot_access`。它会向待检查的 URL 发送请求。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://tools.seopaslaugos.io/mcpclaude mcp add --transport http io-seopaslaugos-ai-bot-access-checker https://tools.seopaslaugos.io/mcp{"mcpServers":{"io-seopaslaugos-ai-bot-access-checker":{"type":"http","url":"https://tools.seopaslaugos.io/mcp"}}}在 Cursor 中打开{"servers":{"io-seopaslaugos-ai-bot-access-checker":{"type":"http","url":"https://tools.seopaslaugos.io/mcp"}}}在 VS Code 中打开{"mcpServers":{"io-seopaslaugos-ai-bot-access-checker":{"type":"http","url":"https://tools.seopaslaugos.io/mcp"}}}{"mcpServers":{"io-seopaslaugos-ai-bot-access-checker":{"serverUrl":"https://tools.seopaslaugos.io/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
工具
详细介绍
AI Bot Access Checker
ChatGPT、Claude、Perplexity 和 Google 实际上能访问你的网页吗?此工具会针对一个 URL 检查 13 种 AI 和搜索爬虫,并逐一告知你:是 robots.txt 屏蔽了它,还是你的 服务器或防火墙 拒绝了它,而普通浏览器却能正常获取网页。
- 网页版本: seopaslaugos.io/en/tools/ai-bot-access-checker
- REST API:
https://tools.seopaslaugos.io/v1/check?url=example.com(OpenAPI) - 远程 MCP 服务:
https://tools.seopaslaugos.io/mcp(Streamable HTTP,工具check_ai_bot_access) - Agent 技能:
skills/ai-bot-access-check/SKILL.md
免费,无需密钥,MIT 许可证。
原因
robots.txt 只是一方面。共享主机的安全规则(ModSecurity)、对未缓存页面上的机器人返回 429 的速率限制器,以及 CDN 的机器人设置(Cloudflare 的 AI 爬虫屏蔽),都会在 robots.txt 被读取之前拒绝 AI 爬虫,而且这种情况往往是默认设置。于是,网站所有者会纳闷,为什么 ChatGPT 说它“无法访问”自己的网站。大多数检查器只读取 robots.txt;此工具还会以每种机器人的身份请求网页,并将返回结果与浏览器的结果进行比较。
检查的机器人
| 机器人 | 厂商 | 用途 |
|---|---|---|
| GPTBot | OpenAI | 训练 |
| OAI-SearchBot | OpenAI | ChatGPT 搜索索引 |
| ChatGPT-User | OpenAI | 用户提问时进行实时访问(OpenAI:robots.txt 可能不适用) |
| ClaudeBot | Anthropic | 训练 |
| Claude-SearchBot | Anthropic | Claude 搜索索引 |
| Claude-User | Anthropic | 用户提问时进行实时访问 |
| PerplexityBot | Perplexity | Perplexity 搜索索引 |
| Perplexity-User | Perplexity | 用户提问时进行实时访问(Perplexity:通常忽略 robots.txt) |
| Googlebot | Google 搜索、AI Overviews、AI Mode | |
| Google-Extended | 选择退出 Gemini 训练(仅 robots.txt 令牌;不影响搜索) | |
| bingbot | Microsoft | Bing 搜索索引 |
| Applebot-Extended | Apple | 选择退出 Apple 模型训练(仅 robots.txt 令牌;不影响 Apple 搜索) |
| CCBot | Common Crawl | 开放训练语料库 |
使用方法
REST
curl "https://tools.seopaslaugos.io/v1/check?url=example.com&format=text"
curl "https://tools.seopaslaugos.io/v1/check?url=https://example.com/pricing&bots=GPTBot,ClaudeBot"
AI bot access for https://www.example.lt/
Browser baseline: HTTP 200
robots.txt: found (HTTP 200)
GPTBot BLOCKED (server/firewall) - Gets a Cloudflare block page (HTTP 403) instead of the page.
OAI-SearchBot BLOCKED (server/firewall) - Gets a Cloudflare block page (HTTP 403) instead of the page.
Claude-User ALLOWED
Googlebot ALLOWED
...
MCP(Claude Code、Cursor、ChatGPT、任意 MCP 客户端)
{
"mcpServers": {
"ai-bot-access-checker": { "type": "http", "url": "https://tools.seopaslaugos.io/mcp" }
}
}
Hermes Agent
hermes plugins install ai-bot-access-checker
此软件包是一个 Agent Plugins v1 bundle:包含 plugin.json、mcp.json(远程 Streamable HTTP 服务,无需密钥,无需本地进程)以及 skills/ 中的技能。该工具为只读工具;它会从 tools.seopaslaugos.io 向你要求检查的 URL 发送 HTTP 请求。
Agent 技能
将 skills/ai-bot-access-check 复制到 Agent 的技能文件夹,或从 ClawHub 安装。该技能使用 curl 调用 REST API,因此无需 MCP 支持。
结果
access | 含义 |
|---|---|
allowed | robots.txt 允许访问,且服务器像对待浏览器一样响应 |
blocked_by_robots | 有效的 Disallow 规则适用于此机器人(包含规则和用户代理组)。厂商表示,ChatGPT-User 和 Perplexity-User 可能会忽略 robots.txt;robots.vendorNote 会说明这一点 |
blocked_by_server | robots.txt 允许访问,但服务器拒绝了该 User-Agent:403、429、连接中断、质询或验证码页面 |
inconclusive | 防火墙也拒绝了伪装的 Googlebot,因此工具会检查爬虫 IP;真正的爬虫可能可以访问 |
suspicious | HTTP 200,但响应大小不到浏览器响应的五分之一 |
page_error | 普通浏览器也无法访问 |
工作原理及其限制
- 根据 RFC 9309 解析 robots.txt:采用最具体的 user-agent 组,合并重复组,匹配最长规则,Allow 优先于同长度的规则,支持
*和$通配符;robots.txt 返回 4xx 表示没有限制,返回 5xx 表示全部禁止。 - 页面会从 Cloudflare 的网络发起请求:一次使用桌面版 Chrome User-Agent,每个机器人再各使用一次其公布的 User-Agent。
- 请求不会来自厂商的 IP 范围。会检测到基于 User-Agent 的拦截(大多数托管防火墙);对于会验证爬虫 IP 的防火墙,则报告为
inconclusive,而非猜测结果。 - 速率限制:每个调用方 IP 每分钟最多检查 20 次;所有调用方合计,每个被检查网站每分钟最多进行 6 次新检查,因此检查器无法用于向网站发送大量请求。结果按 URL 缓存 10 分钟。
安全性
- 仅检查端口为 80/443、带域名的公开
http/httpsURL。拒绝 IP 字面值(点分、十进制、八进制、十六进制、IPv6)、localhost和保留顶级域名、指向私有地址的通配符 DNS 主机(nip.io、sslip.io等)、包含凭据的 URL,以及检查器自身的主机。 - 手动跟随重定向(最多 5 次),并以相同方式验证每一跳,因此公开页面无法将检查器重定向到内部地址、其他端口或其自身 API。
- 每个响应最多读取 64 KiB;每个请求在 10 s 后超时。
- robots.txt 匹配使用线性通配符匹配器,并设有工作量预算以及行数、规则数和模式长度上限,因此恶意 robots.txt 无法拖住 Worker;如果耗尽预算,结果会标记为 inconclusive。
- 从被检查网站获取的文本(robots.txt 规则、URL、标头)会去除控制字符和双向文本字符,并限制长度,然后才返回给用户或 AI Agent。
- MCP 批次最多包含 10 条消息,且只能包含一次
tools/call;请求正文上限为 16 KiB。 - 不存储密钥、Cookie 或用户数据。结果仅按 URL 缓存。
发现问题?请提交 issue,或发送邮件至 [email protected]。
自行运行
npm install
npm test # robots.txt parser tests
npx wrangler dev # local Worker on :8787
修改 wrangler.toml 中的路由后,使用 npx wrangler deploy 进行部署。
作者
由立陶宛 SEO 专家 Mantas Tamošaitis 构建,他在 seopaslaugos.io 为服务型企业和电商提供 Google 与 AI 搜索可见度优化。欢迎提交 issue 和拉取请求。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。