npm geo-tool-checkstdioMITupdated 13d ago
Is this page readable for AI search? One command answers it: crawler access, structure, and citability for ChatGPT, Perplexity, Claude, and Google AI β scored 0β100 with concrete findings.
What can you do with geo tool check?
geo-tool-check
Is this page readable for AI search? One command answers it: crawler access, structure, and citability for ChatGPT, Perplexity, Claude, and Google AI β scored 0β100 with concrete findings.
npx geo-tool-check example.com

Everything runs on your machine. No account, no API key, no telemetry β nothing is ever sent to geo-tool.com. The score is computed by the same engine as the free website audit on geo-tool.com, so the number here matches the number there.
- npm:
geo-tool-checkβ Node 18+, zero runtime dependencies - MCP registry:
io.github.shufflethis/geo-tool-check(stdio server, ships in the package) - Hosted MCP, no install:
https://www.geo-tool.com/mcp(Streamable HTTP) Β· manifest/.well-known/mcp.json - Docs: Copy-paste examples Β· Getting started Β· CLI reference Β· GitHub Actions Β· How scoring works Β· FAQ Β· Troubleshooting Β· Architecture
When to use it
- "Is example.com readable for AI search?" β full 0β100 score with findings
- "Which AI crawlers does my robots.txt block?" β GPTBot, OAI-SearchBot, ClaudeBot, PerplexityBot, Google-Extended and more, each with what blocking it costs you
- "Why doesn't my pricing page show up in ChatGPT answers?" β the findings name what is missing (direct answer, structure, schema, evidence)
- "Is this draft worth citing?" β
check_citabilityscores a text passage with no network request at all - Gate a deploy β
--min-score 70turns the score into an exit code
Not for measuring whether AI answers actually mention your brand β that is a different measurement: the hosted geo-tool.com workspace checks real ChatGPT, Perplexity, and Gemini answers for your buying-intent questions daily.
Quick start
| I want to⦠| Run |
|---|---|
| Score a page | npx geo-tool-check example.com |
| See which AI crawlers robots.txt blocks | npx geo-tool-check example.com --crawlers |
| Gate a deploy in CI | npx geo-tool-check https://example.com --min-score 70 |
| Get machine-readable output | npx geo-tool-check example.com --json |
| Use it from an AI agent (MCP) | npx geo-tool-check --mcp β setup guide |
Use it from an AI agent (MCP)
Almost every MCP client accepts this block (per-client setup, config files to copy):
{
"mcpServers": {
"geo-tool-check": {
"command": "npx",
"args": ["-y", "geo-tool-check", "--mcp"]
}
}
}
Clients that speak Streamable HTTP to remote servers can skip the install and use the hosted endpoint instead β same tools, rate-limited, fetches run through geo-tool.com's infrastructure rather than your machine:
claude mcp add --transport http geo-tool https://www.geo-tool.com/mcp
The three tools, identical in both variants:
| Tool | Arguments | What it answers |
|---|---|---|
check_ai_readiness |
url, optional lang |
Full 0β100 readiness score with per-category breakdown and findings |
check_ai_crawlers |
url, optional lang |
Which AI crawlers (GPTBot, OAI-SearchBot, ClaudeBot, β¦) robots.txt blocks |
check_citability |
content, optional lang |
How quotable a draft passage is β no network request at all |
Claude Code plugin
Install once:
/plugin marketplace add geo-tool-com/geo-tool-check
/plugin install geo-tool-check@geo-tool
Then check any page with one command β works immediately, no restart needed:
/geo-tool-check example.com
FAQ
How do I check whether ChatGPT can read my website?
npx geo-tool-check example.com. Two things must be true: robots.txt must
not block OpenAI's crawlers, and the content must exist in the plain HTML β
ChatGPT's crawlers do not execute JavaScript.
Does robots.txt really affect AI visibility?
It can end it. Disallow: / for GPTBot means OpenAI's systems never see
your content. The checker flags blocked scored crawlers separately from
training-only bots, because the consequences differ.
Why does a JavaScript-rendered page score poorly?
Because AI crawlers see what curl sees. If content only exists after
client-side rendering, models find an empty shell β the low score is the
finding. Fixes: SSR, static generation, or prerendering.
Do I need an llms.txt file? Optional and cheap. Google states it does not use it; several AI tools read it. The check detects a real one and ignores SPA catch-all fakes.
Does geo-tool-check upload my content anywhere? No. Every fetch goes from your machine to the target site β never to geo-tool.com. The build fails if a bundle would try.
More: full FAQ.
Honest limits
Node runs no JavaScript β and neither do GPTBot, ClaudeBot, or PerplexityBot. A client-rendered page that scores low here is the finding, not a measurement gap. To compare the crawler's view against the rendered page, use the browser extension.
This checker measures whether a page can be read and cited. Whether AI systems actually mention your brand in real answers is a different measurement: the hosted geo-tool.com workspace checks real AI answers (ChatGPT, Perplexity, Gemini) for your buying-intent questions daily.
Links
- npm: geo-tool-check
- MCP Registry: io.github.shufflethis/geo-tool-check
- Browser extension: geo-tool-com/geo-tool-extension
- Smithery: tracktronaut/geo-tool-check
- Docs: geo-tool.com/en/developers
License
MIT. Built by track by track GmbH.
Install
Add geo tool check to your client. Pick the one you use.
claude mcp add geo-tool-check -- npx -y geo-tool-checkcodex mcp add geo-tool-check -- npx -y geo-tool-checkamp mcp add geo-tool-check -- npx -y geo-tool-check{
"mcpServers": {
"geo-tool-check": {
"command": "npx",
"args": [
"-y",
"geo-tool-check"
]
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"geo-tool-check": {
"command": "npx",
"args": [
"-y",
"geo-tool-check"
]
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
code --add-mcp '{"name":"geo-tool-check","command":"npx","args":["-y","geo-tool-check"]}'Or add the block manually to `.vscode/mcp.json` under `servers`.
{
"mcpServers": {
"geo-tool-check": {
"command": "npx",
"args": [
"-y",
"geo-tool-check"
]
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
{
"mcpServers": {
"geo-tool-check": {
"command": "npx",
"args": [
"-y",
"geo-tool-check"
]
}
}
}Add to `cline_mcp_settings.json` via the MCP Servers panel.
{
"mcpServers": {
"geo-tool-check": {
"command": "npx",
"args": [
"-y",
"geo-tool-check"
]
}
}
}Add to `~/.gemini/settings.json`.
{
"mcpServers": {
"geo-tool-check": {
"type": "local",
"command": "npx",
"args": [
"-y",
"geo-tool-check"
],
"tools": [
"*"
]
}
}
}Add to `~/.copilot/mcp-config.json`, or run `/mcp add` inside the CLI.
{
"context_servers": {
"geo-tool-check": {
"command": {
"path": "npx",
"args": [
"-y",
"geo-tool-check"
]
}
}
}
}Add to your Zed `settings.json`.
npx -y geo-tool-checkRun `goose configure`, choose **Add Extension β Command-line Extension**, and paste this command.
Score
39 / 100
Incomplete
- Documentation25/25
- Maintenance19/25
- Trust13/20
- Capability0/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 6 days ago
- Has a release history
- Repository is not archived
- Licensed MIT
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 12 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint β no local install
Version history
| Versions | Published |
|---|---|
| 1.0.1Latest | Aug 25, 2026 |