Free, no-auth tools for AI search visibility: robots.txt, schema, rendering, sitemap, PageSpeed.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Request a page as GPTBot, ClaudeBot, PerplexityBot and other AI crawlers and compare with a normal browser to find robots.txt or CDN blocks.
Full URL, for example https://example.com/page
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Pick your client. Values in capitals, like YOUR_TOKEN, are yours to fill in.
Run in a terminal
claude mcp add --transport http getbotrank-free-tools https://api.getbotrank.com/mcp/free
Request a page as GPTBot, ClaudeBot, PerplexityBot and other AI crawlers and compare with a normal browser to find robots.txt or CDN blocks.
| Argument | Type | Description |
|---|---|---|
| url* | string | Full URL, for example https://example.com/page |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Full URL, for example https://example.com/page"
}
},
"additionalProperties": false
}Check whether a domain appears in the latest Common Crawl crawls (a major source of LLM training data) and whether robots.txt blocks CCBot.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain, for example example.com |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Domain, for example example.com"
}
},
"additionalProperties": false
}Look up a brand on Wikidata and Wikipedia, report key properties, and check the site's Organization sameAs links.
| Argument | Type | Description |
|---|---|---|
| url | string | Full URL, for example https://example.com/page |
| brand* | string | Brand or company name |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"brand"
],
"properties": {
"url": {
"type": "string",
"description": "Full URL, for example https://example.com/page"
},
"brand": {
"type": "string",
"description": "Brand or company name"
}
},
"additionalProperties": false
}Google PageSpeed Insights for a URL: mobile and desktop Lighthouse scores, Core Web Vitals, CrUX field data when available, top opportunities.
| Argument | Type | Description |
|---|---|---|
| url* | string | Full URL, for example https://example.com/page |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Full URL, for example https://example.com/page"
}
},
"additionalProperties": false
}Trace the redirect chain for a URL (max 10 hops) with status and timing per hop, plus X-Robots-Tag, HSTS, cache-control, content-type and canonical Link headers.
| Argument | Type | Description |
|---|---|---|
| url* | string | Full URL, for example https://example.com/page |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Full URL, for example https://example.com/page"
}
},
"additionalProperties": false
}Estimate whether a page's content exists in the raw HTML before JavaScript runs (heuristic, no headless browser). Most AI crawlers do not execute JavaScript.
| Argument | Type | Description |
|---|---|---|
| url* | string | Full URL, for example https://example.com/page |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Full URL, for example https://example.com/page"
}
},
"additionalProperties": false
}Generate an llms.txt file for a domain from its sitemap (up to 40 pages in this MCP call).
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain, for example example.com |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Domain, for example example.com"
}
},
"additionalProperties": false
}Resolve title, description and favicon for a 1200x630 Open Graph card from a URL or from text. Returns card data; render the PNG at the report_url.
| Argument | Type | Description |
|---|---|---|
| url | string | Full URL, for example https://example.com/page |
| title | string | |
| description | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"url": {
"type": "string",
"description": "Full URL, for example https://example.com/page"
},
"title": {
"type": "string"
},
"description": {
"type": "string"
}
},
"additionalProperties": false
}Read title, meta description, canonical, robots, Open Graph and Twitter tags with lengths, and return data for Google, LinkedIn, X and WhatsApp previews.
| Argument | Type | Description |
|---|---|---|
| url* | string | Full URL, for example https://example.com/page |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Full URL, for example https://example.com/page"
}
},
"additionalProperties": false
}Free AI readiness audit: crawlability, headings, structured data, llms.txt and metadata, scored 0 to 100.
| Argument | Type | Description |
|---|---|---|
| url* | string | Full URL, for example https://example.com/page |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Full URL, for example https://example.com/page"
}
},
"additionalProperties": false
}Score each passage of a page for how easily AI answer engines can quote it. Deterministic heuristics, no LLM.
| Argument | Type | Description |
|---|---|---|
| url* | string | Full URL, for example https://example.com/page |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Full URL, for example https://example.com/page"
}
},
"additionalProperties": false
}Verify an IndexNow key file on a domain and, only if it verifies, submit up to 100 URLs to api.indexnow.org. Set action to "submit" to send URLs; the default only verifies.
| Argument | Type | Description |
|---|---|---|
| key | string | |
| host* | string | Domain, for example example.com |
| urls | string | URLs to submit, separated by whitespace |
| action | string |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"host"
],
"properties": {
"key": {
"type": "string"
},
"host": {
"type": "string",
"description": "Domain, for example example.com"
},
"urls": {
"type": "string",
"description": "URLs to submit, separated by whitespace"
},
"action": {
"enum": [
"verify",
"submit"
],
"type": "string"
}
},
"additionalProperties": false
}Test one URL against a site's robots.txt for 20+ crawlers (GPTBot, ClaudeBot, PerplexityBot, Googlebot, Bingbot and more) using correct longest-match rules. Returns allowed/blocked per bot with the deciding rule.
| Argument | Type | Description |
|---|---|---|
| url* | string | Full URL, for example https://example.com/page |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Full URL, for example https://example.com/page"
}
},
"additionalProperties": false
}Extract JSON-LD and microdata from a page, validate Organization, WebSite, Product, Article, FAQPage, BreadcrumbList, LocalBusiness and SoftwareApplication, and return a corrected JSON-LD block.
| Argument | Type | Description |
|---|---|---|
| url* | string | Full URL, for example https://example.com/page |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Full URL, for example https://example.com/page"
}
},
"additionalProperties": false
}Find and validate a domain's sitemaps, count URLs, status-check a sample of up to 50 URLs and check hreflang reciprocity.
| Argument | Type | Description |
|---|---|---|
| domain* | string | Domain, for example example.com |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"domain"
],
"properties": {
"domain": {
"type": "string",
"description": "Domain, for example example.com"
}
},
"additionalProperties": false
}Show the text and structure an AI crawler recovers from a page without running JavaScript.
| Argument | Type | Description |
|---|---|---|
| url* | string | Full URL, for example https://example.com/page |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"description": "Full URL, for example https://example.com/page"
}
},
"additionalProperties": false
}We read every tool's name, description and inputs the way the model will, looking for instructions hidden from you. A clean result means no warning signs, not a guarantee. Scanned Nov 8, 2026.
No readOnlyHint / destructiveHint annotations, so clients can't tell a read from a write without asking.
Fix: Add annotations to each tool, e.g. { readOnlyHint: true } for tools that only read.