causabi-geo
An open-source CLI and Python library that checks how AI crawlers read your site and writes the fix files. No account needed.
MCP server: run it inside your editor
The same engine as an MCP server for Claude Code, OpenAI Codex CLI, Cursor, Windsurf and Claude Desktop. It runs locally over stdio, no account needed.
Then just ask: “check the AI score for example.com”. One-off checks and fix generation on your own machine are free. Schedules, score history and monitoring of the answers from four AI engines live on causabi.com.
How it works
One command: crawl, score, generate fix files
Modules
The parts of the package and what each one does
geo_optimizer/core/scorer.pyComputes the 0–100 AI score across 6 categories. Plain logic, no LLM involved, so the same page always gets the same score.
geo_optimizer/core/robots.pyChecks which AI crawlers your robots.txt allows or blocks.
geo_optimizer/generators/robots.pyWrites a patched robots.txt that lets the blocked AI crawlers in.
geo_optimizer/generators/schema.pyBuilds Organization or SoftwareApplication JSON-LD from the data found on your page.
geo_optimizer/generators/faq.pyBuilds FAQPage JSON-LD. With --api-key it asks Gemini to write questions based on your actual content.
geo_optimizer/generators/llms_txt.pyCreates an llms.txt file: a short, structured description of your site in the proposed llmstxt.org format. It is a proposal, not a standard, and it does not promise citations.
How the score is built
The weights are our own engineering choice, listed below. The score measures how readable your page is for machines; it does not predict citations.
Organization, LocalBusiness or SoftwareApplication markup, and how many useful fields it fills in.
Each blocked AI crawler takes points off.
FAQPage JSON-LD, so questions and answers are marked up as questions and answers.
Amount of text on the page. Under 200 words scores very low, under 500 partially, 500 and up in full.
Business name, phone, address and links to your profiles (sameAs) that confirm who is behind the site.
A dateModified or datePublished in the markup scores in full; a recent year in the text scores partly.
README badge
Add your site’s AI score to your README. Our server caches the badge for an hour, so the number can lag behind.
GitHub Action
Run the check in CI. The build fails if the score drops below the threshold you set.
- name: AI score check
uses: SHADRINMMM/causabi-geo-optimizer-actions@v1
with:
url: https://yoursite.com
min-score: 60Need the full check?
The CLI scores one page. causabi.com checks your whole site, and paid plans add weekly monitoring that shows whether ChatGPT, Gemini, Grok and Claude mention you.