{
  "markdown": "# geo-inspector-mcp\n\nInspect any website's AI-search readiness from Claude (or any MCP client): which AI crawlers it blocks, whether it publishes llms.txt, what schema markup it ships, and how its indexing directives are set.\n\n<!-- demo GIF goes here: record a Claude Code session calling the tools -->\n\n## Why this exists\n\nAI assistants are becoming a primary way people find and cite content, and sites signal their intent to AI systems through a handful of plumbing files: robots.txt rules for AI crawlers, the emerging llms.txt standard, schema.org structured data, and meta directives. Checking those by hand means juggling curl, a robots.txt parser in your head, and view-source. This server turns all of it into questions you can just ask Claude.\n\n## Quickstart\n\n```bash\nnpx -y geo-inspector-mcp\n```\n\nThat is the whole install. Point your MCP client at it:\n\n**Claude Code**\n\n```bash\nclaude mcp add geo-inspector -- npx -y geo-inspector-mcp\n```\n\n**Claude Desktop** (`claude_desktop_config.json`)\n\n```json\n{\n  \"mcpServers\": {\n    \"geo-inspector\": {\n      \"command\": \"npx\",\n      \"args\": [\"-y\", \"geo-inspector-mcp\"]\n    }\n  }\n}\n```\n\nThen ask things like: \"Which AI crawlers does nytimes.com block?\" or \"Does stripe.com publish an llms.txt?\"\n\n## Tools\n\n| Tool | What it checks | Example question |\n| --- | --- | --- |\n| `check_robots_txt` | Which AI crawlers (GPTBot, ClaudeBot, PerplexityBot, Google-Extended, CCBot, and more) are allowed or blocked, per RFC 9309, plus sitemaps | \"Can OpenAI train on example.com?\" |\n| `fetch_llms_txt` | Presence and spec-validity of /llms.txt and /llms-full.txt | \"Has example.com adopted llms.txt?\" |\n| `detect_schema_markup` | JSON-LD blocks, schema.org type inventory, AI-relevant types, sameAs disambiguation | \"What structured data does this article have?\" |\n| `check_meta_directives` | Meta robots tags (including noai/noimageai and bot-specific tags) and X-Robots-Tag headers | \"Is this page indexable?\" |\n\nEvery tool returns a readable summary plus structured JSON (`structuredContent`) for programmatic use.\n\n## Development\n\n```bash\nnpm install\nnpm test        # vitest unit + integration tests\nnpm run build   # bundle to dist/\nnpx @modelcontextprotocol/inspector node dist/index.js   # poke it interactively\n```\n\nParsers are pure functions with fixture-based tests; all HTTP goes through one capped, redirect-limited fetch helper.\n\n## License\n\nMIT\n",
  "bytes": 2399,
  "sha": "849e471ec5b589016b77fce1ea292b597513247c07e9103355d832ff2aa82d7a",
  "repo_slug": "bigsupe55/geo-inspector-mcp",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_bigsupe55_geo_inspector_mcp_aa9f155a/readme"
}