Agent Access Check
Server Details
Check if a website will block your AI agent and find its llms.txt, MCP or OpenAPI door.
- Status
- Healthy
- Uptime
- 99.4% over 22 days
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 4 tools
check_agent_access vs check_many are clearly distinguished by single-vs-batch scope and the description notes batching. find_agent_alternative has some functional overlap with check_agent_access (which already probes llms.txt/MCP/OpenAPI), but it goes deeper and is framed as an alternative-finding tool. usage_and_upgrade is cleanly separate.
All names are snake_case and three follow a verb_... pattern (check_agent_access, check_many, find_agent_alternative). usage_and_upgrade breaks the pattern by having no verb and combining two nouns, but the style is otherwise consistent and readable.
Four tools is a tight, well-scoped set for a focused access-checking purpose, and each (single check, batch, alternative-finder, usage) earns its place. It sits at the lower edge of the comfortable range but does not feel thin.
The read-only domain is well covered: single check, batch check, alternative discovery, and account/usage. Minor gaps exist (e.g., no tool to fetch or explain a specific challenge in detail, no history), but core workflows are complete with no dead ends.
Available Tools
4 toolscheck_agent_accessAInspect
Before an agent browses or fetches a site, check if it will get in. Fetches the URL as an AI agent and as a browser, detects bot challenges (CAPTCHAs, DataDome, PerimeterX and other bot walls), reads robots.txt rules for GPTBot/ChatGPT-User/ClaudeBot/Claude-User/PerplexityBot and others, and looks for agent doors (llms.txt, MCP, OpenAPI). Returns verdict: open | challenged | blocked | robots_disallowed | unreachable, plus advice. Read-only. Use it before an automated web task, not for pages you already fetched successfully.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes | Page or domain, e.g. https://example.com/pricing |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does most of it: it declares 'Read-only' itself, discloses that it fetches the URL both as an AI agent and as a browser (i.e. it performs live external requests, not a cached lookup), and enumerates the possible verdicts. It stops short of stating rate limits, auth needs, or whether the probes are logged server-side.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Front-loads the purpose ('Before an agent browses or fetches a site, check if it will get in') and closes with the two operational sentences. The middle clause is a dense enumeration, but each listed check and each verdict value earns its place since nothing else documents them.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description compensates well by naming all five verdict values and the 'plus advice' return, and it covers scope and timing. It is short only on operational details like rate limits, caching, or what the advice contains — minor gaps for a read-only probe tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
One parameter at 100% schema description coverage, so the schema already documents the url field and its example. The description adds no syntax, format, or constraint detail beyond the schema (e.g. whether bare domains are normalized, redirect depth), so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('check if it will get in' before browsing/fetching a site) and enumerates exactly what the tool inspects: bot challenges, robots.txt rules for named crawlers, and agent doors like llms.txt/MCP/OpenAPI. The singular 'the URL' implicitly scopes it to one page, distinguishing it from the batch sibling check_many without needing to name it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Gives explicit positive and negative guidance: 'Use it before an automated web task, not for pages you already fetched successfully.' That is a clear when-to-use plus an exclusion, but it never routes the agent to the sibling alternatives (check_many for batches, find_agent_alternative for fallbacks), which the top tier requires.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
check_manyBInspect
Run check_agent_access on up to 10 URLs at once (counts as 1 call). Use it to pick which sources an agent can actually use.
| Name | Required | Description | Default |
|---|---|---|---|
| urls | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose one non-obvious behavior — '(counts as 1 call)' — which is genuinely useful quota information, but it is silent on partial-failure semantics (what if 3 of 10 URLs fail?), auth requirements, and error behavior.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences with the core capability front-loaded and the quota note as a compact parenthetical. Only the second sentence is slightly vague filler, but nothing is redundant.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter tool with no output schema and no annotations, the description covers the what and the batching limit but leaves the return shape and failure behavior unexplained. Adequate to invoke correctly, thin for interpreting results.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It usefully states the batch size limit ('up to 10 URLs'), which parallels the schema's maxItems, but gives no format guidance for the url strings themselves (scheme, single vs. array semantics on error).
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description names a specific verb+resource ('Run check_agent_access on up to 10 URLs at once'), so the agent knows this is a batch wrapper over the sibling check_agent_access rather than an independent operation. The 'up to 10 URLs' scope cleanly separates it from the single-URL sibling, though it never says what an access check actually returns.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Use it to pick which sources an agent can actually use' gives a use context, but only implicitly. It never states when to prefer this over calling check_agent_access directly, nor any exclusion conditions or prerequisites.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
find_agent_alternativeAInspect
Find a machine-friendly way into a site instead of scraping its HTML: llms.txt, /.well-known/mcp.json, agents.json, openapi.json, ai-plugin.json, and MCP URLs listed in llms.txt. Read-only.
| Name | Required | Description | Default |
|---|---|---|---|
| url | Yes |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries full disclosure burden. It usefully states 'Read-only' and reveals that it performs URL probes, but says nothing about network behavior, timeouts, auth requirements, or what happens when no alternative is found — significant gaps for a network-fetching tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that names the action, the alternative it replaces, and the concrete artifacts probed, with zero padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The enumeration of discovered endpoints is the most useful part, but with no output schema and no annotations the description should clarify the return shape (e.g., list of URLs, single result, or failure mode) and whether requests require permissions. It is adequate for a one-parameter tool but leaves real gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter (url) exists and the schema provides 0% description coverage. The description implies the URL is the target site but adds no format, validity, or scope detail (e.g., base URL vs full path) beyond the obvious.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Find') and resource ('machine-friendly way into a site'), then enumerates exactly which discovery artifacts it probes (llms.txt, /.well-known/mcp.json, agents.json, openapi.json, ai-plugin.json, MCP URLs). This scope definition clearly separates it from check_agent_access and check_many, which imply verification rather than discovery.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The clause 'instead of scraping its HTML' implies the usage context — reach for this before falling back to HTML scraping — but there is no explicit when-to-use/ when-not guidance and no sibling is named as the alternative. Adequate but leaves routing to inference.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
usage_and_upgradeAInspect
Show today's usage for your key or IP and the $9/month upgrade link. Free tier: 50 calls/day. Not metered.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden and does a fair job: it discloses the free-tier cap of 50 calls/day, that usage is 'not metered,' and the $9/month upgrade cost. It doesn't state return format or whether the call itself consumes quota, but the key behavioral facts are present.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Three short sentences, front-loaded with what the tool returns, followed by the quota context. Every sentence earns its place with no filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter, no-output-schema utility tool this is nearly complete: it explains what is shown (usage plus upgrade link) and the governing quota. Minor gaps around exact return contents and whether the call counts against the free tier.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing to document beyond what the schema already conveys. Baseline 4 applies; the description's mention of 'your key or IP' usefully explains the implicit scoping of the result.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: show today's usage for the caller's key or IP, plus the upgrade link. It is immediately distinguishable from the wake-scheduling siblings, though it doesn't explicitly say so. Clear and specific, just not maximally differentiated.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied rather than stated: an agent can infer you call this to check quota or find the upgrade path. The free-tier limit (50 calls/day) hints at when it matters, but there is no explicit when-to-use, prerequisite, or alternative guidance.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- First observed
check_agent_access - First observed
check_many - First observed
find_agent_alternative - First observed
usage_and_upgrade
Related MCP Connectors
Check whether a website is readable by AI agents: robots, llms.txt, sitemap, HTML. Bounded.
Check whether a website is ready for AI agents (UCP, WebMCP, Access) and monitor your own sites.
Checks a website for AI agents: robots.txt, llms.txt, MCP, A2A. Ranked fixes, text to paste.
Free check whether a website is technically open to AI assistants (AI crawlers, llms.txt, JSON-LD).
Related MCP Servers
- AlicenseAqualityCmaintenanceChecks a website's robots.txt and Cloudflare settings to identify AI crawler blocking. Also generates llms.txt content to improve visibility to AI answer engines.359 npmMIT
- 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.441 npmMIT

QueryRev AI Readinessofficial
AlicenseAqualityCmaintenanceChecks a site for AI crawlers: which of 11 AI crawlers its robots.txt lets in, whether its llms.txt follows llmstxt.org, and what its home page says without scripts. Findings with evidence; no scores, no model calls, no telemetry.579 npmMIT- AlicenseNot gradedqualityCmaintenanceEnables AI agents to scan any website for agent-readiness and generate the necessary artifacts (llms.txt, WebMCP scaffold, structured data) to make it agent-ready.9 npmMIT
Glama MCP Gateway
Add one secure layer between your agents and this server.