aeo-mcp

aeo-mcp

An MCP server that gives AI agents tools to inspect a website's visibility to AI answer engines, including crawler permissions, llms.txt, structured data, on-page signals, and a full 29-check AI-readiness audit.

Category
Visit Server

README

aeo-mcp

An MCP server that gives AI agents — Claude, Claude Code, Cursor, anything speaking the Model Context Protocol — tools to inspect a website's visibility to AI answer engines. Crawler permissions, llms.txt, structured data, on-page signals, and a full 29-check AI-readiness audit (powered by answer-audit), each one tool call away. Read-only, no API keys, no telemetry.

Claude Desktop using aeo-mcp to inspect The Verge's AI crawler policy

Real session: Claude Desktop discovers The Verge allows GPTBot (OpenAI licensing deal) while blocking ClaudeBot, PerplexityBot, Google-Extended, and CCBot — one tool call.

Install

Claude Code

claude mcp add aeo -- npx -y aeo-mcp

Claude Desktop (claude_desktop_config.json)

{ "mcpServers": { "aeo": { "command": "npx", "args": ["-y", "aeo-mcp"] } } }

Cursor (.cursor/mcp.json)

{ "mcpServers": { "aeo": { "command": "npx", "args": ["-y", "aeo-mcp"] } } }

Tools

Tool When the agent uses it Input Returns
audit_url "How visible is this site to ChatGPT/Perplexity?" — full AEO health check { url } 0-100 score, grade, category breakdown, failed/warned checks with fixes
check_ai_crawlers "Is GPTBot blocked?" — robots.txt policy per AI bot { url } Per-bot allow/block verdicts with the matching rule, plus sitemaps
inspect_llms_txt "Does this site have llms.txt? Is it valid?" { url } Title, summary, sections with links, structural issues, raw excerpt
extract_structured_data "What schema markup does this page have?" { url } JSON-LD types, key fields per node, parse errors
extract_page_signals "Why do engines misread this page?" { url } Title, meta description, h1, canonical, lang, text ratio, heading outline, client-side-rendering flag

Bots checked by check_ai_crawlers: GPTBot, ClaudeBot, PerplexityBot, Google-Extended, CCBot, Bingbot.

Try these prompts

  • "Audit glowlab.com and summarize the top 3 AEO fixes."
  • "Compare the AI crawler policies of nike.com and adidas.com — who is more open to being cited?"
  • "Check if my site has a valid llms.txt, and if not, draft one from my page signals."

Security

The server fetches model-supplied URLs, so it ships with an SSRF guard: http/https only, DNS resolution checked against private and special ranges (loopback, RFC1918, link-local, unique-local, IPv4-mapped forms), re-validation on every redirect hop, 10 s timeout, 2 MB body cap, max 5 redirects. Violations return a clean tool error, never an exception. All tools are read-only and no LLM calls happen inside the server.

Development

npm install
npm run build   # required before npm test (the protocol test runs dist/)
npm test

Tests include a scripted stdio round-trip (initialize → tools/list → tools/call) against the built server. To inspect interactively:

npx @modelcontextprotocol/inspector node dist/index.js

License

MIT © Arthur Carlson

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured