Audit any site
for AI readability. One command.
See what ChatGPT can and can’t read on a site, then get the files that fix it. CLI or REST API. MIT.
pip install causabi-geocausabi-geo · MIT · PyPI
- MIT
- license
- PyPI
- causabi-geo
- REST
- API
Quick start
From install to files
in two commands
# example output (the CLI prints in English) $ pip install causabi-geo $ geo-optimizer analyze example.com AI score: 34/100 Issues found: [FAIL] robots.txt blocks GPTBot, ClaudeBot [FAIL] No FAQ schema (-20 pts) [FAIL] No llms.txt [OK] Schema.org present (partial) $ geo-optimizer fix example.com --output ./geo-files/ Generated: ./geo-files/llms.txt ./geo-files/schema.json ./geo-files/robots.txt ./geo-files/HOW-TO-APPLY.md
Modules
Open code,
the modules of the public repo
core/scorer.py
Scorer
AI score from 0 to 100 across six categories. Plain logic, no LLM call.
robots.txt · Schema.org · FAQ · Content · Brand · Freshness
core/robots.py
Robots Auditor
Shows which AI crawlers your robots.txt allows or blocks and generates a patched version.
GPTBot · ClaudeBot · PerplexityBot · Google-Extended
generators/schema.py
Schema Generator
Generates Organization JSON-LD (description, contacts, address, sameAs links) from the crawled page data.
Organization · PostalAddress · sameAs
generators/faq.py
FAQ Generator
Builds FAQPage JSON-LD. With --api-key it uses Gemini to write questions and answers from your actual content.
FAQPage · Gemini · Q&A
generators/llms_txt.py
llms.txt Generator
Creates llms.txt, a supplementary index for AI agents. Its effect on citations is not proven; we generate it as a short description of the site for AI agents.
llmstxt.org · Markdown · AI agents
REST API
Use it from your own stack
or use the CLI
# Public score (no auth) GET /api/score/{domain} # response (abbreviated example): { "score": 67, "breakdown": { "schema_org": 18, "faq_schema": 12, "robots_txt": 15 } }
# Full analysis (auth required) POST /api/v1/analyze { "url": "https://example.com" } # response (example): { "site_id": "abc123", "status": "queued", "job_id": "job_xyz" } # Docs: causabi.com/docs
FAQ
Technical questions
git clone -> pip install -e . -> run locally. The CLI commands analyze and fix work without an account; the AI-written FAQ step needs a Gemini API key. Monitoring across the four engines runs on causabi.com.