AI Bot Access Checker
Checks Applebot-Extended access, including robots.txt rules for Apple's model-training opt-out token.
Checks Googlebot and Google-Extended access to a URL, covering Google Search/AI surfaces and Gemini training opt-out rules.
Checks OpenAI crawler access for GPTBot, OAI-SearchBot, and ChatGPT-User, including robots.txt rules and server/firewall responses.
Checks PerplexityBot and Perplexity-User access, noting when robots.txt may be ignored for user-triggered visits.
This server has a remotely hosted endpoint. Open its connector listing for connection details, authentication requirements, and setup instructions:
AI Bot Access Checker
Can ChatGPT, Claude, Perplexity and Google actually reach your page? This tool checks 13 AI and search crawlers against one URL and tells you, for each, whether robots.txt blocks it or whether your server or firewall refuses it while a normal browser gets the page.
Web version: seopaslaugos.io/en/tools/ai-bot-access-checker
REST API:
https://tools.seopaslaugos.io/v1/check?url=example.com(OpenAPI)Remote MCP server:
https://tools.seopaslaugos.io/mcp(Streamable HTTP, toolcheck_ai_bot_access)Agent skill:
skills/ai-bot-access-check/SKILL.md
Free, no key, MIT licence.
Why
robots.txt is only half of it. Shared-hosting security rules (ModSecurity), rate limiters that answer 429 to bots on uncached pages, and CDN bot settings (Cloudflare's AI crawler blocking) refuse AI crawlers before robots.txt is ever read, often by default. Site owners then wonder why ChatGPT says it "cannot access" their site. Most checkers only read robots.txt; this one also requests the page as each bot and compares the answer with a browser's.
Related MCP server: ai-visibility-mcp
Bots checked
Bot | Vendor | Used for |
GPTBot | OpenAI | Training |
OAI-SearchBot | OpenAI | ChatGPT search index |
ChatGPT-User | OpenAI | Live visits when a user asks (OpenAI: robots.txt may not apply) |
ClaudeBot | Anthropic | Training |
Claude-SearchBot | Anthropic | Claude search index |
Claude-User | Anthropic | Live visits when a user asks |
PerplexityBot | Perplexity | Perplexity search index |
Perplexity-User | Perplexity | Live visits when a user asks (Perplexity: generally ignores robots.txt) |
Googlebot | Google Search, AI Overviews, AI Mode | |
Google-Extended | Gemini training opt-out (robots.txt token only; no effect on Search) | |
bingbot | Microsoft | Bing search index |
Applebot-Extended | Apple | Apple model training opt-out (robots.txt token only; no effect on Apple search) |
CCBot | Common Crawl | Open training corpus |
Use it
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, any MCP client)
{
"mcpServers": {
"ai-bot-access-checker": { "type": "http", "url": "https://tools.seopaslaugos.io/mcp" }
}
}Hermes Agent
hermes plugins install ai-bot-access-checkerThe package is an Agent Plugins v1 bundle: plugin.json, mcp.json (remote Streamable HTTP server, no keys, no local process) and the skill in skills/. The one tool is read-only; it sends HTTP requests to the URL you ask it to check, from tools.seopaslaugos.io.
Agent skill
Copy skills/ai-bot-access-check into your agent's skills folder, or install it from ClawHub. The skill calls the REST API with curl, so it needs no MCP support.
Results
| Meaning |
| robots.txt allows it and the server answers it like a browser |
| A Disallow rule applies (rule and user-agent group included). For ChatGPT-User and Perplexity-User the vendors say robots.txt may be ignored; |
| robots.txt allows it, the server refuses the User-Agent: 403, 429, dropped connection, challenge or captcha page |
| The firewall refuses a fake Googlebot too, so it checks crawler IPs; the real crawler may get in |
| HTTP 200 but under a fifth of the browser's response size |
| A normal browser fails as well |
How it works and its limits
robots.txt is parsed per RFC 9309: most specific user-agent group, merged duplicate groups, longest match wins, Allow wins ties,
*and$wildcards; a 4xx robots.txt means no restrictions, a 5xx means full disallow.The page is requested once with a desktop Chrome User-Agent and once per bot with the bot's published User-Agent, from Cloudflare's network.
Requests do not come from the vendors' IP ranges. Blocks by User-Agent (most hosting firewalls) are caught; firewalls that verify crawler IPs are reported as
inconclusiveinstead of guessed.Rate limits: 20 checks a minute per caller IP, and 6 fresh checks a minute per checked website from all callers together, so the checker cannot be used to flood a site. Results are cached 10 minutes per URL.
Security
Only public
http/httpsURLs on ports 80/443 with a domain name are checked. IP literals (dotted, decimal, octal, hex, IPv6),localhostand reserved TLDs, wildcard-DNS hosts that point at private addresses (nip.io,sslip.io, ...), URLs with credentials and the checker's own hosts are refused.Redirects are followed by hand (max 5) and every hop is validated the same way, so a public page cannot bounce the checker to an internal address, another port or its own API.
At most 64 KiB of each response is read; each request times out after 10 s.
robots.txt matching uses a linear wildcard matcher with a work budget and caps on lines, rules and pattern length, so a hostile robots.txt cannot stall the Worker; if the budget runs out the result says inconclusive.
Text taken from the checked site (robots.txt rules, URLs, headers) is stripped of control and bidi characters and length-capped before it is returned to people or AI agents.
MCP batches are capped at 10 messages and one
tools/call; request bodies are capped at 16 KiB.No keys, cookies or user data are stored. Results are cached by URL only.
Found a problem? Open an issue or email seo@seopaslaugos.io.
Run your own
npm install
npm test # robots.txt parser tests
npx wrangler dev # local Worker on :8787Deploy with npx wrangler deploy after changing the route in wrangler.toml.
Author
Built by Mantas Tamošaitis, SEO specialist in Lithuania, who works on Google and AI search visibility for service businesses and e-shops at seopaslaugos.io. Issues and pull requests welcome.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
See what GPTBot, ClaudeBot and other crawlers get from a site: robots.txt checks and AI scans.
robots.txt tester (RFC 9309), AI crawler access (GPTBot, ClaudeBot...) and sitemap check.
Check which AI crawlers a site allows and see pages the way AI crawlers do. Free, read-only.
Can GPTBot, ClaudeBot and PerplexityBot reach a site? Real fetch per crawler, firewall/CDN blocks.
Related MCP Servers
- AlicenseAqualityDmaintenanceAnalyze and generate robots.txt files with AI crawler awareness. Fetch any site's robots.txt, detect which AI bots (GPTBot, ClaudeBot, PerplexityBot, Google-Extended) are blocked or allowed, and generate optimized robots.txt with toggle controls for 20+ AI crawlers.51MIT
- AlicenseAqualityDmaintenanceAudits AI-bot visibility: robots.txt per-bot for 22 AI user-agents (GPTBot/ClaudeBot/PerplexityBot/etc), Cloudflare flags, JSON-LD, sitemap, llms.txt, SPA shell, plus cross-model brand mentions via Perplexity + OpenRouter. 0-100 score. SSRF-guarded, spend-capped.41MIT
- AlicenseAqualityCmaintenanceEnables inspection of any website's AI-search readiness, checking AI crawler blocks, llms.txt, schema markup, and indexing directives from MCP clients like Claude.464 npmMIT
- AlicenseNot gradedqualityCmaintenanceLets an AI assistant check any URL to see how much of a page's main content is present in the raw HTML versus only after JavaScript runs, showing which text blocks, meta fields, canonical tags, JSON-LD and links AI crawlers like GPTBot and ClaudeBot cannot read. It also reports what robots.txt allows for 22 AI bot tokens and how the site responds to each bot's user-agent.AGPL 3.0