analyze_website_aeo
Analyze website AEO
Crawl a URL, parse its HTML and structured data, and score it for answer-engine optimization (AEO). Returns an AEO-focused summary, AI-bot access, and crawl-hint files.
urlrequireddev.advancelabsPublished by advancelabs.devOfficial publisherv1.0.1Updated Oct 31, 2026
Check whether AI answer engines cite your site, and for which prompts. Uses your own Perplexity key.
The publisher's own server: AEO Backlink
A hosted MCP endpoint that audits a site for answer-engine optimization and checks whether AI answer engines cite it for given prompts.
Web executable via Streamable HTTP. Remote servers run from the web runtime once configured in a workspace.
Paste this prompt into Claude Code, Codex, Cursor or another agent — or into SourceWeft chat. The agent reads this server's install guide, shows you its publisher, endpoint and sign-in, and adds it to your client once you agree. Keys never go into a command.
Read https://sourceweft.com/mcp/dev.advancelabs%2Faeo-visibility/install.md and connect the MCP server it describes to my client. Before changing any config, show me its publisher, endpoint and sign-in method and wait for my OK. Never put an API key in a command or in a file I would commit; ask me where it should come from.Add this to your client's mcpServers config.
{
"mcpServers": {
"aeo-visibility": {
"type": "http",
"url": "https://aeo.advancelabs.dev/api/mcp/ai-visibility/mcp"
}
}
}The next big thing will be a lot of small things.
Open-source AI search optimization: 44 small checks that decide whether ChatGPT, Claude and Perplexity cite you.
[TypeScript] [License: Apache 2.0] [Made by Advance Labs] [MCP servers live] [Brand] [Chrome Web Store]
Open-source TypeScript packages for Answer Engine Optimization (AEO), Generative Engine Optimization (GEO), and AI citation visibility. Contributions welcome, see CONTRIBUTING.md.
Open core. This repo is the open-source half of the AEO Toolkit: the audit engine, crawler, parser, schema validator and the Chrome extension, all Apache-2.0 and published to npm. The hosted platform behind advancelabs.dev/tools and the three MCP servers (the console, OAuth, billing, the Google and Bing integrations) moved to a private repository on 2026-10-20. Code published here before that date stays Apache-2.0.
Try it without installing anything: the six browser tools run free in the browser at advancelabs.dev/tools, with no sign-up and no account. Point the auditor at a URL and it returns a weighted, per-rule report in about a minute. Want it done for you? Advance Labs runs a monthly AEO retainer.
The hosted side is six browser tools (technical audit, E-E-A-T scan, llms.txt generator,
GA4 + GSC chat, backlink graph, authority) and three MCP servers (ai-visibility, backlink,
search) exposing 32 tools to Claude or any MCP client. They are proprietary and run on
advancelabs.dev. This repo is the open core: the audit engine packages, the
Chrome extension and the skills. See
docs/reference/tools.md for the full map.
The hosted site is drawn in dithered pixel art: a figure pushing a faceted sphere up a slope under a dusk sky.
[The MCP page: Connect the AEO Toolkit to your AI client]Answer Engine Optimization (AEO) is the practice of structuring your content so that AI assistants (ChatGPT, Perplexity, Claude, Gemini) cite your site when answering questions in your domain. Traditional SEO gets you ranked on the blue-link results page. AEO gets you quoted in the AI answer.
As AI-powered search becomes the default discovery layer, AEO is the new SEO.
The hosted technical audit runs 44 checks (31 technical SEO + 13 AEO) across crawlability, AI-bot access, structured data, metadata and answer readiness, scored out of 100, with a prioritised fix list and templates for any crawl-hint file you're missing. The E-E-A-T scan is a separate tool that scores 14 signals. The engine defines 58 in total (44 + 14), but the audit itself runs 44. Free, no account, and your data stays yours.
AEO/GEO Auditor puts the same engine on your toolbar. Open any page, click the icon, and get a 0 to 100 AI-readiness score with a letter grade and a list of what to fix. Export it as a PDF.
It runs auditRules from packages/scoring/src/audit.ts: 44 checks across 9 categories (31 technical-SEO + 13 AEO) from extension 0.3.0, built on scoring 0.3.x. The Chrome Web Store build before that (0.2.0) ran 40, so the listing changes when 0.3.0 is published. The 14 E-E-A-T signals are a separate scorer the extension does not run, 58 is the engine total (44 + 14), not what any one audit runs.
Everything happens in your browser. No account, no server, no analytics, no telemetry. The only network requests are to the audited site's own robots.txt, sitemap.xml, and llms.txt, which is what the host permission is for. Nothing is stored, because nothing is sent.
apps/chrome-extension · publishing runbookBuild it yourself:
Plus @advance-labs/net-guard and @advance-labs/types. The one
application here is apps/chrome-extension; the hosted console is not open source.
Six packages are published to npm and usable on their own:
The hosted tools at advancelabs.dev/tools need no install at all.
Read the full documentation at docs.advancelabs.dev/aeo-toolkit.
Once built, the packages compose like this:
Listed in the official MCP Registry
as dev.advancelabs/aeo-search, dev.advancelabs/aeo-visibility and dev.advancelabs/aeo-backlink.
The three MCP servers are hosted, not installed. They are Streamable-HTTP endpoints, so there is
nothing to npm install and no local process to run. Point any MCP client at the URL.
Claude Code: one command per server:
Drop --scope user to register them in the current project only. Check the result with
claude mcp list.
Claude.ai / Claude Desktop: Settings → Connectors → Add custom connector, then paste the URL.
Cursor (~/.cursor/mcp.json), Windsurf, or any client that takes a JSON block:
Three things that trip people up:
/mcp is required. The bare /api/mcp/<slug> returns the adapter's own
"Not found", which looks like a routing bug and is not.aeo-search has a login, and its discovery is path-scoped. It answers an anonymous
request with a 401 pointing at /.well-known/oauth-protected-resource/api/mcp/search/mcp; its
authorization server is /api/mcp/oauth. The ROOT /.well-known/oauth-* documents deliberately
return 404, because aeo-visibility and aeo-backlink need no login./api/mcp/ga-gsc/mcp still works as a compatibility alias for aeo-search; new configs should use
/api/mcp/search/mcp.
When a user asks ChatGPT "what is the best tool for X?", the answer comes from indexed content that AI models trust, not from ad-auction bidding. The trust signals for AI citation are:
Organization, FAQPage, HowTo)llms.txt: the AI equivalent of robots.txtAEO Toolkit automates auditing all of these.
Built with Turborepo · TypeScript 5 · Vitest · React 19
The site is pixel art: a figure pushing a faceted sphere under a dithered dusk sky. Art is drawn
at a coarse cell, snapped to a small palette (ink, paper, two dusk oranges) with a 4x4 Bayer
ordered dither and scaled up with hard edges. Labels use Geist Pixel Square, headings and body
Geist Sans, code Geist Mono. Corners are square and shadows are hard-offset. The palette, type,
tokens and rules are in brand/README.md, with the assets
beside it. Anything a user sees should follow it, and
docs/CONVENTIONS.md says how in code.
Built and maintained by Advance Labs · All Advance Labs products
AEO Toolkit is built and maintained by Advance Labs Inc., a software studio building Creatin, Cartrix, and this toolkit.
This project dogfoods its own tooling: advancelabs.dev ships with llms.txt, JSON-LD Organization schema, SSG-rendered pages, and canonical URLs, all patterns the scoring engine teaches.
We follow the Contributor Covenant: be respectful and constructive in all project spaces, and report unacceptable behavior to [email protected].
© 2026 Advance Labs Inc. · advancelabs.dev
Source: README.md at commit 8381d1a
Analyze website AEO
Crawl a URL, parse its HTML and structured data, and score it for answer-engine optimization (AEO). Returns an AEO-focused summary, AI-bot access, and crawl-hint files.
urlrequiredCheck AI visibility
Query Perplexity Sonar with a prompt and inspect its citations to determine whether the given URL is cited as a source, and at what rank.
urlrequiredpromptrequiredperplexityApiKeyrequiredDiscover ranking prompts
Generate realistic user prompts a site should aim to be cited for on a topic, using Perplexity Sonar. Optionally tests a few of them for live visibility.
urlrequiredtopicrequiredtestCountperplexityApiKeyrequiredGet visibility report
Combine an AEO audit of a URL with per-prompt AI-visibility checks into a single report with an overall citation rate.
urlrequiredpromptsrequiredperplexityApiKeyrequiredCompare competitor visibility
Run one Perplexity Sonar query and rank several competitor URLs by whether and where each is cited for the prompt.
urlsrequiredpromptrequiredperplexityApiKeyrequired100% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
dev.advancelabsOfficial publisher
Hosted MCP server for link-building research: finds brand mentions, link prospects and competitor link sources, verifies links, and drafts outreach emails.
dev.advancelabsOfficial publisher
Hosted MCP server exposing 20 read-only tools over Google Search Console, GA4 and Bing Webmaster data for SEO and AI-search (AEO) work.
pnpm --filter @advance-labs/chrome-extension package# → apps/chrome-extension/aeo-extension.zip, loadable via chrome://extensions (Developer mode → Load unpacked, on dist/)npm i @advance-labs/scoring # the 44-check audit enginenpm i @advance-labs/net-guard # SSRF-safe fetch: re-checks every redirect hopnpm i @advance-labs/crawler # polite crawler with robots.txt + rate limitingnpm i @advance-labs/html-parsernpm i @advance-labs/schema-validatornpm i @advance-labs/types # shared types, a dependency of the abovegit clone https://github.com/Advance-Labs/aeo-toolkit.gitcd aeo-toolkitpnpm installpnpm build # turbo builds every packagepnpm test # the full suite, no networkimport { crawl } from '@advance-labs/crawler'import { parseHtml } from '@advance-labs/html-parser'import { analyzeStructuredData } from '@advance-labs/schema-validator'import { buildAuditReport } from '@advance-labs/scoring'
const result = await crawl('https://example.com/', { maxPages: 2 })const html = result.pages.filter((p) => p.ok && p.body && p.contentType?.includes('html'))
const report = await buildAuditReport( { crawl: result, pages: html.map((p) => parseHtml(p.body, p.finalUrl)), structuredData: html.map((p) => analyzeStructuredData(p.body, p.finalUrl)), mode: 'full-site', }, { durationMs: 0, version: '1.0.0' },)
console.log(report.url, report.score.overall, report.score.grade)console.log(report.topFixes.slice(0, 3).map((f) => f.title))claude mcp add --transport http --scope user aeo-visibility https://aeo.advancelabs.dev/api/mcp/ai-visibility/mcpclaude mcp add --transport http --scope user aeo-backlink https://aeo.advancelabs.dev/api/mcp/backlink/mcpclaude mcp add --transport http --scope user aeo-search https://aeo.advancelabs.dev/api/mcp/search/mcp{ "mcpServers": { "aeo-visibility": { "url": "https://aeo.advancelabs.dev/api/mcp/ai-visibility/mcp" }, "aeo-backlink": { "url": "https://aeo.advancelabs.dev/api/mcp/backlink/mcp" }, "aeo-search": { "url": "https://aeo.advancelabs.dev/api/mcp/search/mcp" } }}aeo-toolkit/├── packages/ # the six published libraries, plus shared config├── apps/chrome-extension/├── apps/docs/ # Astro + Starlight docs site (renders ../../docs)├── docs/ # the documentation itself└── brand/ # the mark, lockups, palette and type (brand/README.md)