I made a Claude Code skill to check if AI crawlers can read your site

novaesystems1 pts0 comments

GitHub - MerqryLabs/ai-crawler-visibility · GitHub

/" data-turbo-transient="true" />

Skip to content

Search or jump to...

Search code, repositories, users, issues, pull requests...

-->

Search

Clear

Search syntax tips

Provide feedback

--><br>We read every piece of feedback, and take your input very seriously.

Include my email address so I can be contacted

Cancel

Submit feedback

Saved searches

Use saved searches to filter your results more quickly

-->

Name

Query

To see all available qualifiers, see our documentation.

Cancel

Create saved search

Sign in

/;ref_cta:Sign up;ref_loc:header logged out"}"<br>Sign up

Appearance settings

Resetting focus

You signed in with another tab or window. Reload to refresh your session.<br>You signed out in another tab or window. Reload to refresh your session.<br>You switched accounts on another tab or window. Reload to refresh your session.

Dismiss alert

{{ message }}

MerqryLabs

ai-crawler-visibility

Public

Notifications<br>You must be signed in to change notification settings

Fork

Star

main

BranchesTags

Go to file

CodeOpen more actions menu

Folders and files<br>NameNameLast commit message<br>Last commit date<br>Latest commit

History<br>1 Commit<br>1 Commit

README.md

README.md

ai-crawler-visibility.zip

ai-crawler-visibility.zip

View all files

Repository files navigation

AI Crawler Visibility

A Claude Code skill that tells you whether your website is actually visible to AI search — and exactly how to fix it if it isn't.

ChatGPT Search, Claude, and Perplexity are sending people to websites now. But the crawlers that feed them — ClaudeBot, GPTBot, PerplexityBot, Bytespider, Meta-ExternalAgent — do not run JavaScript. They read only the raw HTML your server returns.

Google's renderer has handled JavaScript for years, so a client-rendered site (React, Vite, Vue, Svelte, any SPA) can rank perfectly fine on Google and still be completely invisible in AI answers .

If you've ever thought "we get Google traffic but nothing from AI" — or you shipped a slick vibe-coded SPA and you're nowhere in ChatGPT — this is almost always why.

What it does

This skill fetches your page(s) the same way a non-JS crawler does — raw HTML, no browser — and reports, per page, whether your real content and key signals (title, meta description, canonical, Open Graph, JSON-LD, crawlable links) are actually present.

Then it prescribes a concrete, framework-specific fix . Not "consider SSR" — the exact tool, config change, and one-line way to verify it worked.

Every page gets one of three verdicts:

Verdict<br>What it means

✅ VISIBLE<br>Real content is in the raw HTML. The crawler can read you.

⚠️ PARTIAL<br>Only a fraction is in raw HTML; the main body is JS-rendered.

❌ INVISIBLE<br>The crawler gets an empty shell (). Nothing useful is there.

It diagnoses and prescribes . It does not write marketing copy, do keyword research, or chase backlinks.

Install

This is a Claude Code Agent Skill. Drop the folder into your skills directory and Claude Code picks it up automatically.

Personal (available in every project):

/ai-crawler-visibility.git \<br>~/.claude/skills/ai-crawler-visibility">git clone https://github.com/merqrylabs>/ai-crawler-visibility.git \<br>~/.claude/skills/ai-crawler-visibility

Project-scoped (just this repo):

/ai-crawler-visibility.git \<br>./.claude/skills/ai-crawler-visibility">git clone https://github.com/merqrylabs>/ai-crawler-visibility.git \<br>./.claude/skills/ai-crawler-visibility

That's it. No npm install, no API keys, no third-party packages — the analyzer runs on plain Python 3.

Check the official Agent Skills docs for the canonical skills path if your setup differs.

Use it

Just talk to Claude Code in natural language. The skill triggers on its own when you ask the kind of question it's built for:

"Why isn't my site showing up in ChatGPT?"

"Is my new site visible to AI search engines?"

"I added JSON-LD but rich results still aren't showing."

You can also run the bundled analyzer directly:

# Single page<br>python3 scripts/check_visibility.py https://thesite.com

# Several specific pages<br>python3 scripts/check_visibility.py https://thesite.com https://thesite.com/pricing

# Sample from a sitemap (checks up to --limit pages)<br>python3 scripts/check_visibility.py --sitemap https://thesite.com/sitemap.xml --limit 10

Add --json to process results programmatically.

⚠️ Always check your production URL, not localhost — local dev servers don't reflect how the deployed site is served to crawlers.

What the report looks like

# AI Crawler Visibility Report

## Verdict<br>https://thesite.com — INVISIBLE<br>https://thesite.com/pricing — INVISIBLE

## What the crawler actually sees<br>/ : 0 visible words. Missing from raw HTML: meta description,<br>canonical, Open Graph, JSON-LD, crawlable links.

## Fixes (highest impact first)<br>[Concrete, framework-specific steps — each with how to verify]

## How to confirm the fix<br>View Page Source (not Inspect) and confirm your headline text<br>and JSON-LD appear...

crawler visibility claude search https skills

Related Articles