Getting found · Edition No. 8 · 2 Sep 2026

Auriti-Labs/geo-optimizer-skill

An audit that scores how readable and quotable a site is to AI answer engines.

← Getting foundRead the whole edition →
GEO Optimizer: AI visibility audit. Scores how easily AI answer engines can read a site.

776 stars · MIT · v4.17.1 (2026-08-31) · Track this in Rising ↗

Audits whether ChatGPT, Perplexity and Google AI Overviews can find and cite your site — CLI, Python library, MCP server and Astro integration.

Verified27 Oct 2026

Radar check

What we found when we opened it. Every bar is one fact, with its date.

Alive100

Last code pushed 27 Oct 2026, the same day before this check.

Releases100

Latest release v4.19.8 on 26 Oct 2026.

Maturity25

Public since February 2026, 8 months.

Adoption61

1,184 stars and 134 forks.

Activity100

331 commits and 12 new issues in the last 90 days.

Community40

9 contributors. 127 pull requests merged in 90 days. A small team carries it.

Security80

A security policy says how to report a problem. No published security advisories.

Licence MIT | 4.19.0: permissive: use it for anything, keep the noticeSetup effort 2 of 5Payoff 4 of 5
How the bars are scored
  • Alive. Days since the last code push: a week or less 100, a month 90, three months 70, six months 50, a year 30, eighteen months 15, older 0.
  • Releases. Age of the latest GitHub release, on a similar scale; no bar when the project publishes no releases.
  • Maturity. Age of the project: eight years 100, five 90, three 70, two 55, one 40, six months 25, younger 10.
  • Adoption. Stars on a log scale: 100,000 stars is 100, 10,000 is 80, 1,000 is 60, 100 is 40.
  • Activity. Commits in the last 90 days: 300 or more 100, 100 85, 30 65, 10 45, any 25.
  • Community. People who have contributed: 100 or more 100, 30 80, 10 60, 5 40, 2 25, one 10.
  • Security. A published security policy 80, none 40; published advisories are listed, not scored.

Checked by Repo Radar on 27 Oct 2026 from the repository on GitHub. Covered in Edition 8.

▶Repo detailsthe review · specs · pros & cons · install

What it does

It fetches a site and checks the signals an AI assistant uses to read and cite it. Those include robots.txt, which tells crawlers what they may read, llms.txt, which is a plain summary file written for language models, JSON-LD schema, which is structured data describing the page, plus page metadata and heading structure. It produces a score from 0 to 100 across eight scored categories. It can also generate the fixes, including robots.txt rules, an llms.txt file and schema blocks. It runs as a command-line tool, a Python library, an MCP server, a GitHub Action and an Astro integration, so it can run on every build. Version 4.19.0 was published on 9 October 2026. It does not get a site mentioned by an assistant: it only removes the mechanical reasons it would not be.

Why it matters

Who it suits. People publishing documentation or a content site who have noticed that assistants answer questions in their subject without naming them. It also suits a team already running checks on every build, because this slots in beside them. Skip it if the site is not published yet, since there is nothing to score.

Verdict. Worth an afternoon, and genuinely worth wiring into a build so the score does not quietly rot. Two warnings. It grades machine readability, which is a proxy; a perfect score on a site nobody links to still gets cited by nobody. And the project moves fast, with four point releases since the summer, so pin the version you audit against. llms-txt is the specification behind its most common finding. elmo is the self-hosted way to track mentions over time rather than audit a site once.

Stars776
LicenceMIT
Latestv4.17.1 (2026-08-31)checked 7 Sep 2026
Written inPython
NeedsPython 3
RunsSelf-hosted on your own server
Summary (Key Points)from the README
Key features
  • Single-command score: `geo audit` rates any website 0–100 on whether AI answer engines can crawl, understand and cite it, then lists what to fix.
  • 27 AI crawlers checked: robots.txt access is tested for ChatGPT, Perplexity, Claude, Google and other AI bots.
  • 9 scoring categories: from Google AI readiness and robots.txt to Schema JSON-LD, content, brand and entity signals, llms.txt and AI discovery.
  • Fix generation: `geo fix` previews robots.txt rules, llms.txt, JSON-LD, AI discovery endpoints and meta tags, and writes files only with `--apply`.
  • Real answer-engine checks: `geo citations` sends customer-style questions to real engines and reports brand mentions, cited domains and competing sites. `--runs 5` gives a confidence interval.
  • Citability analysis: 47 content checks, nine of them drawn from methods tested in the KDD 2024 GEO paper.
  • CI integration: the GitHub Action fails builds below a score threshold and can upload SARIF findings to the Security tab.
  • Output and tooling: 8 output formats, including html, sarif, junit and json, plus 12 MCP tools and a Python API. The test suite has 2,000+ tests.
Ways to install
Platform or methodWhat it needsEffort
pip or uvx (`geo-optimizer-skill`)Python; CI runs on 3.10–3.14Low: one command
MCP serverAn MCP client such as Claude, Cursor or WindsurfLow: add a config entry
GitHub ActionA GitHub repository with a workflow fileLow: add a workflow
Astro integrationAn Astro project; copy the integration folder in, since it is not yet on npmMedium: manual copy
Free web audit at geoready.devA browser and a URL; no accountNone
Important
  • Readiness, not guaranteed citations: the score measures signals that make a site reachable and quotable. It cannot promise that any engine will cite you.
  • Answers vary between runs: the same question can cite different sources each time, so use `--runs` before drawing conclusions.
  • Source visibility depends on the provider: only Perplexity returns real source URLs. OpenAI, Anthropic and Groq reveal only what the model already knows. Google AI Overviews requires the SerpBase provider.
  • Citation checks need your own API keys: `geo citations` uses provider keys you supply.
  • Post-fix scores are estimates: the score shown after `geo fix` is the tool's own projection, not a measured result.
  • llms.txt is unproven as a ranking factor: no engine has documented that it improves citations, and Google Search ignores it.
  • Coverage gaps: Chinese answer engines (Doubao, Qwen, Yuanbao) are not covered, and the tool does not observe what engines say beyond the lightweight citations check.
  • Benchmark figures are directional: the 59/100 median comes from a self-selected sample of GeoReady users, not a census of the web.
  • Hosted plans cost money: Pro and Agency start at $19/month. The free plan includes 5 saved reports and one weekly AI answer check.

Written by an AI model from the project’s README; not part of the review, and it can be wrong.

Setup effort
2 / 5
Payoff
4 / 5
Good
  • It turns a vague goal into a checklist, with eight scored categories rather than opinions.
  • The MCP server lets a coding assistant run the audit and apply the fixes in one session.
  • Clearly alive: 1.0k stars and version 4.19.0 published on 9 October 2026.
Watch for
  • The score measures machine readability, not reputation. Links and authority still decide citations.
  • The maintainers also sell a hosted monitoring product, so read the "track this continuously" advice with that in mind.
  • Four major versions in a year. Expect the output to change between upgrades.
Replaces

Running it as an Astro integration means the score gets checked on every build instead of once, in an afternoon, and then forgotten.

Install
# no install needed
uvx --from geo-optimizer-skill geo audit --url https://example.com
# or install it, Python 3.9 or newer
pip install -U geo-optimizer-skill
geo audit --url https://example.com
Screenshots
Auriti-Labs/geo-optimizer-skill: GitHub preview cardAuriti-Labs/geo-optimizer-skill: Screenshot 1Auriti-Labs/geo-optimizer-skill: Screenshot 2Auriti-Labs/geo-optimizer-skill: Screenshot 3

Also in Edition No. 1.

On Stack Radar: Marketing & Growth › SEO & Organic Search › Technical SEO.

Get the next edition in your inbox

A dozen repositories, opened and checked. The licence read, the last release dated, and the ones that did not make it named with the reason. It is the half most lists leave out.

No tracking pixels. One click to leave. The archive stays free either way.

We use your address to send the edition and nothing else. Confirm by email, leave in one click. How we handle it.