npx helpshelf score
People increasingly ask ChatGPT, Claude, and Perplexity about your product before they ever reach your site. If those assistants can't read your documentation, they'll guess — and their guesses become your customers' expectations.
The legibility score measures whether they can.
The five signals
| Signal | What it checks |
|---|---|
| llms.txt reachable | Your machine-readable knowledge map is publicly fetchable |
| MCP tools/list live | Your MCP endpoint responds to AI agents |
| Content indexed | Your agent has knowledge to serve |
| Help center published | Your help center is publicly available |
| Retrieval ready | Your content can be retrieved with citations |
How it's scored
The score is the percentage of known signals that pass.
A signal the CLI couldn't determine — a network timeout, say — drops out of the denominator rather than counting as a failure. Four of five known signals passing scores 80%, whether or not the fifth was checkable. An unknown is honest uncertainty, not a penalty.
The llms.txt and MCP checks run from outside, against your public URLs, with short timeouts. That's deliberate: it tests what an external AI assistant would actually experience, not what your database says.
A failing check never blocks a push.
Improving your score
llms.txt unreachable — publish your help center. The file is generated automatically once it's live. If it's published and still unreachable, check that nothing in front of your site is blocking AI crawlers.
MCP not live — needs a published help center and indexed content.
No content indexed — run npx helpshelf sync, or add content.
Help center not published — enable it in your dashboard.
Retrieval not ready — usually missing embeddings. See Content isn't searchable.
The badge
score prints markdown for a badge you can paste into your README, showing your current legibility score.
