Skip to main content
Glama
draltaway

ai-visibility-mcp

by draltaway

ai-visibility-mcp

An MCP server that tells an AI assistant how discoverable a website is to AI search engines and assistants (ChatGPT, Claude, Perplexity, Google AI Overviews).

Point it at a URL and it reports the signals that decide whether those systems can find, read, and cite a site, then rolls them into a skimmable 0-100 score.

What it checks

Signal

Why it matters

AI crawler access in robots.txt

If GPTBot, ClaudeBot, PerplexityBot, etc. are blocked, the site is invisible to those engines

/llms.txt present

A plain-text map of the site's key facts, written for LLMs

Structured data (JSON-LD)

Machine-readable meaning that answer engines lift and cite

sitemap.xml present

Helps crawlers find every page

Title, meta description, H1

Basic on-page signals an engine reads first

Related MCP server: maxaeo-ai-visibility-mcp

Install

git clone https://github.com/draltaway/ai-visibility-mcp
cd ai-visibility-mcp
python -m pip install -e .

Standard-library HTTP only. The single dependency is FastMCP.

Use it from Claude Code

claude mcp add ai-visibility -- ai-visibility-mcp

Use it from Claude Desktop

Add to claude_desktop_config.json:

{
  "mcpServers": {
    "ai-visibility": {
      "command": "ai-visibility-mcp"
    }
  }
}

Then ask: "Check the AI visibility of stripe.com."

Example output

{
  "url": "https://stripe.com",
  "score": 90,
  "summary": "Strong: AI engines can find, read, and cite this site.",
  "checks": {
    "ai_crawlers_allowed": true,
    "ai_crawlers_blocked": [],
    "llms_txt": true,
    "sitemap": false,
    "homepage_reachable": true,
    "structured_data": true,
    "title": true,
    "meta_description": true,
    "h1": true
  }
}

The tool

check_ai_visibility(url: str) -> dict returns { url, score, summary, checks }. It accepts a bare host (example.com) or a full URL and defaults to https.

License

MIT. Built by Dallin Rowley.

Available Tools

1 tool
check_ai_visibilityA

Check how discoverable a website is to AI assistants and AI search engines.

ParametersJSON Schema
NameRequiredDescriptionDefault
urlYesThe site to check, e.g. "example.com" or "https://example.com".

Output Schema

ParametersJSON Schema
NameRequiredDescription

No output parameters

TDQS

A3.5/5.0
Behavior3/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

No annotations are provided, so the description carries the full burden of behavioral disclosure, and it only states the tool's purpose. It does not reveal whether the check involves a live network fetch, what signals are analyzed (e.g., robots.txt, llms.txt, meta tags), or whether results are instantaneous or sampled. Nothing is disclosed that contradicts annotations because no annotations exist.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is a single, front-loaded sentence with zero wasted words, stating the action before the object. It is efficient, though slightly terse — a phrase clarifying what 'discoverable' means could be added without hurting conciseness.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

This is a low-complexity tool with one required parameter and an output schema present, so the description does not need to describe return values and the input is fully documented in the schema. The main context gap is the absence of any explanation of what 'AI discoverability' is based on, but for such a simple tool the definition is nearly complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100% — the url parameter already documents its type and accepted formats ('example.com' or 'https://example.com'). The tool description adds no additional meaning about the parameter, so the baseline 3 is appropriate.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description states a clear action ('Check') and a specific resource/scope ('how discoverable a website is to AI assistants and AI search engines'), so an agent can tell what the tool does at a glance. There are no sibling tools to distinguish from, and the term 'discoverability' is left slightly undefined, so it falls just short of a 5.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Because there are no sibling tools, there are no alternatives to exclude, but the description still provides only implied use context: if an agent wants to know a site's AI visibility, this is the tool. There is no explicit when-to-use guidance, exclusions, or prerequisites, making the usage guidance minimally adequate.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 1 tool updatev0.1.0
    • First observedcheck_ai_visibility

TDQS

A3.7/5.0

Scored across 1 tool

Disambiguation5/5

With only one tool, there is no possibility of confusion or overlap. The tool's purpose is clearly unique and distinct.

Naming Consistency5/5

A single tool with a descriptive snake_case verb_noun name. There is no inconsistency to assess, but the naming is clear and follows conventional MCP patterns.

Tool Count3/5

A single tool feels thin for a dedicated MCP server, even for a focused purpose. The borderline count leaves little room for related operations but is not excessively sparse.

Completeness4/5

The tool directly covers the core stated purpose of checking AI visibility. Minor gaps exist, such as batch checks or historical analysis, but they do not block the primary use case.

Maintenance

ActivityMaintained
ResponsivenessNo issues

Related MCP Connectors

Related MCP Servers

  • A
    license
    Not graded
    quality
    C
    maintenance
    Evaluates any website's AI visibility with 15 checks across crawlability, structure, content, and connectivity, and provides actionable fixes.
    1 npm
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Enables AI agents to check whether a public website is crawlable, understandable, and ready for AI search workflows through local-only audits of robots.txt, sitemaps, metadata, and llms.txt.
    3
    45 npm
    1
    MIT
  • A
    license
    A
    quality
    B
    maintenance
    Check whether a website is visible to AI search engines (ChatGPT, Perplexity, Claude, Google AI Overviews). Returns a 0-100 readiness score, a grade, and a specific fix for each gap. Dependency-free, no API keys.
    2
    3 npm
    MIT
  • A
    license
    A
    quality
    A
    maintenance
    Provides AI-visibility scoring and site auditing capabilities for websites, enabling agents to check how sites appear in AI engines like ChatGPT and Perplexity, run full SEO/security audits, and monitor changes over time.
    15
    180 npm
    MIT