Skip to main content
Glama

Agentic Endpoints

Check whether agents can reach a URL

reach
Read-onlyIdempotent

Send one GET to a URL as each of nine common clients (curl, node, Python urllib, Python requests, libwww-perl, a Chrome browser, GPTBot, ClaudeBot, Googlebot) and report which are refused and why, such as a Cloudflare 1010 block on Python's urllib. Also reports robots.txt blocks on AI crawlers, whether /llms.txt exists, and whether the http-to-https redirect keeps POST bodies. Use before relying on a site or API from code, or to check your own. Read-only; private addresses are refused. Costs $0.010 in USDC on Base, paid via the x402 protocol, or from a credit token — call credits_trial for free credit if you have neither.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlYesPublic HTTP(S) URL to check
credit_tokenNoOptional. A credit token from credits_trial or /credits/buy. Supplying it pays for this call from that balance, so no x402 payment or wallet is needed.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
urlNoThe URL that was scanned
statusYes'ok' when the scan ran
clientsYesOne row per client identity
summaryNoOne sentence stating the result
verdictYes'pass' (every client reached), 'shadowed' (some refused while others reached: the fixable finding), 'refused' (all refused) or 'unreachable'
llms_txtNoWhether /llms.txt is a real text file
robots_txtNorobots.txt status and the AI crawlers it shuts out of the whole site
scanned_atNoISO-8601 time of the scan
http_redirectNoHow http:// redirects to https://, and whether POST survives it
measured_fromNoWhere the scan ran, and what that means for the results

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Goes well beyond the readOnlyHint/openWorldHint/idempotentHint annotations by disclosing that private addresses are refused, that AI-crawler robots.txt behavior and /llms.txt presence are probed, and that POST-body preservation across http-to-https redirects is tested. It also states the exact cost ($0.010 USDC on Base), the payment mechanism (x402 or credit token), and the free-credit fallback.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Purpose and client list are front-loaded in the first sentence, with secondary behaviors and payment details following. The nine-client parenthetical is long but each entry is informative rather than filler; overall it earns most of its length for a tool with this many facets.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

A read-only tool with an output schema and full annotation coverage needs no return-value documentation, and the description still explains what categories of findings appear and what it will not do (private addresses). Authentication/payment prerequisites are fully covered, so an agent has everything required to invoke it.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so the schema already explains both url and credit_token, including the token's origin and purpose. The description only adds the pricing context around credit_token and the private-address restriction on url, which is useful but marginal against a fully documented schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description names a specific action (send one GET as each of nine named clients) and the exact resource (a URL), plus the concrete outputs it reports (refusals, robots.txt AI-crawler blocks, /llms.txt, POST-body redirect behavior). It does not, however, distinguish itself from siblings like reach_report, reach_report_rescan, or reach_report_status, so an agent must infer the difference between a one-off check and a persistent report.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

"Use before relying on a site or API from code, or to check your own" gives explicit context for when to call it, and the closing sentence routes to credits_trial when the caller lacks payment. No exclusion criteria or direct sibling comparison (e.g., when to prefer reach_report for ongoing monitoring) is provided.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources