mcpField
A
Ai Visibility Mcp

Ai Visibility Mcp

本地服务
github.com/krissanders商业与营销123 周前更新

关于 Ai Visibility Mcp

Ai Visibility Mcp 是面向网站运营者和营销团队的 MCP 服务,用于评估网站对 AI 爬虫和搜索的可见性。它还可生成 robots.txt、JSON-LD 和 llms.txt 修正内容,形成审计与复查流程。

主要功能

  1. 01检查 22 种 AI 爬虫的访问规则
  2. 02评估网站 AI 可见性并解释扣分
  3. 03比较多个网站的审计结果
  4. 04检查品牌在多个 LLM 中的提及
  5. 05生成 robots.txt、JSON-LD 和 llms.txt

适用场景

  1. 01排查 robots.txt 或 Cloudflare 对 AI 爬虫的限制
  2. 02识别缺少结构化数据或 llms.txt 的页面
  3. 03比较自有网站与竞争者的 AI 可见性
  4. 04检查品牌是否出现在 LLM 回答中

MCP 相关

作为 MCP 服务向客户端提供网站审计、品牌提及检查和修正文件生成工具。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

暂未收录安装方式

我们还没有获取到这个服务的安装包或远程地址,请按项目 README 中的说明安装。

代码仓库

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

ai-visibility-mcp

可审计并修复 AI 如何看待你的网站的 MCP 服务。Robots、架构标记、LLM 提及情况、Cloudflare 的 AI 默认设置——审计问题、生成修复方案,并在一个循环中重新审计。

Python MCP License: MIT

大多数网站都在不知不觉中无法被 AI 搜索发现。Cloudflare 的机器人管理默认设置会拦截 GPTBot / ClaudeBot / PerplexityBot。对于不会运行 JS 的爬虫,SPA 渲染的内容只是一个空的 <div id="root">。营销团队不知道自己的品牌没有出现在 ChatGPT、Claude 或 Perplexity 的回答中,直到流量开始枯竭。

ai-visibility-mcp 可在单次 Agent 会话中完成审计和修复闭环:

  1. 审计 — 找出阻碍 AI 发现网站的因素
  2. 修复 — 生成用于解决问题的内容
  3. 粘贴 — 网站所有者应用生成的内容
  4. 重新审计 — 验证修复是否生效

工具

审计工具
工具用途是否需要 API 密钥?
check_ai_bot_access(domain)针对 22 个 AI 用户代理检查各机器人对应的 robots.txt 规则及 Cloudflare AI 默认标记否
audit_ai_visibility(domain)0-100 的综合评分,并说明各项扣分原因(robots、meta、JSON-LD、sitemap、llms.txt、SPA 外壳)否
check_llm_mention(brand, query, aliases?, models?)跨模型品牌曝光情况(默认使用 Perplexity sonar、OpenAI gpt-4o-mini 和 Gemini 2.0 Flash)是
compare_competitors(your_domain, competitor_domains[])并行排名审计,最多同时执行 10 个否
生成工具(v0.3)
工具用途是否调用 LLM?
generate_robots_patch(domain, allow_bots?, deny_bots?)修正后的 robots.txt,开放 AI 机器人的访问权限;保留现有规则;检测 Cloudflare否
generate_json_ld(url, page_type?)适用于任意页面的 Schema.org JSON-LD 代码块;自动检测类型(Product/Article/Organization/FAQPage/SoftwareApplication/WebSite);验证必填字段是(gpt-4o-mini)
generate_llms_txt(domain, crawl_depth?, max_pages?)符合规范的 llms.txt;爬取首页和 sitemap;无法获取时回退到链接提取是(gpt-4o-mini)

为什么要做这个项目

  • Cloudflare 在 2024-2025 年更改了默认设置,以拦截 AI 爬虫。大多数网站所有者从未更新配置,因此 AI 机器人会遭到质询并离开。
  • MCP 市场在 2026 年上线(MCP Hive、Smithery、mcp.so、Glama)。每个 AI Agent 都需要能审计真实网络的工具。本项目就是其中之一。
  • 品牌在 LLM 回答中的曝光度已成为新的 SEO。 目前还没有一套完整方案,能通过单次 MCP 调用衡量品牌曝光度。

安装

需要 Python 3.10+ 和 uv。

git clone https://github.com/bestaiinsider/ai-visibility-mcp
cd ai-visibility-mcp
uv sync
cp .env.example .env  # fill in PERPLEXITY_API_KEY / OPENROUTER_API_KEY

运行

# stdio transport — Claude Desktop / Claude Code
uv run ai-visibility-mcp

# HTTP transport — remote agents
uv run ai-visibility-mcp --http --port 8000

Claude Desktop / Claude Code 配置

将配置添加到 ~/Library/Application Support/Claude/claude_desktop_config.json(Desktop)或 ~/.claude.json(CLI):

{
  "mcpServers": {
    "ai-visibility": {
      "command": "uv",
      "args": ["--directory", "/absolute/path/to/ai-visibility-mcp", "run", "ai-visibility-mcp"]
    }
  }
}

审计和修复循环

# Step 1 — audit
> audit_ai_visibility(domain="example.com")
  score: 55
  warnings:
    - "9/22 AI bots disallowed — site largely invisible to AI search"
    - "no JSON-LD structured data — LLMs lose entity grounding"
    - "no /llms.txt found at root"

# Step 2 — generate fixes
> generate_robots_patch(domain="example.com")
  → new_robots: "User-agent: GPTBot\nAllow: /\n\nUser-agent: ClaudeBot\nAllow: /\n..."
  → diff:       unified diff of exactly what changed
  → paste_target: "/robots.txt at site root, replaces existing"

> generate_json_ld(url="https://example.com/")
  → page_type_detected: "Organization"
  → script_tag: '<script type="application/ld+json">{"@context":"https://schema.org","@type":"Organization"...}</script>'
  → paste_target: "inside <head> of the page"

> generate_llms_txt(domain="example.com")
  → content: "# Example Corp\n\n> One-sentence summary...\n\n## Pages\n- [Home](...): ..."
  → paste_target: "/llms.txt"

# Step 3 — site owner pastes the three artifacts

# Step 4 — re-audit
> audit_ai_visibility(domain="example.com")
  score: 95   ← was 55

会话示例

> check_ai_bot_access(domain="bandcamp.com")

  summary: { total: 22, allowed: 13, disallowed: 9 }
  warnings: ["9/22 AI bots disallowed — site largely invisible to AI search"]
  blocked:  ["GPTBot", "ClaudeBot", "Google-Extended", "Bytespider",
             "CCBot", "Meta-ExternalAgent", "FacebookBot", "Amazonbot", "Diffbot"]

> audit_ai_visibility(domain="bandcamp.com")

  score: 49
  reasons:
    -36: 9 AI bots disallowed in robots.txt
    -10: no JSON-LD structured data
    -5:  no /sitemap.xml

> check_llm_mention(brand="Anthropic", query="Who makes the leading foundation AI models?")

  share_of_voice: 0.667
  by_model:
    perplexity/sonar          mentioned=true   citations=3
    openrouter/gpt-4o-mini    mentioned=true   citations=0
    openrouter/gemini-flash   mentioned=false  citations=0
  est_total_cost_usd: 0.00088
  daily_spend_usd:    0.00088 / $5.00 cap

安全措施

此服务会向调用方提供的域名和 LLM 服务商发起出站 HTTP 请求。v0.2 加固措施:

  • SSRF 防护。 所有出站 HTTP 请求都会拒绝环回地址、链路本地地址(AWS / GCP / Azure 元数据 IP)、RFC1918 地址、CGNAT 地址和 IPv6 ULA 地址。重定向会重新验证。
  • 每日支出上限。 LLM 调用受 MAX_DAILY_USD 限制(默认 $5.00),支出数据会保存到 ~/.cache/ai-visibility-mcp/spend.json。循环放大不会耗尽你的 Perplexity / OpenRouter 额度。
  • 单次调用费用上限。 MAX_COST_PER_CALL(默认 $0.10)和 LLM_MAX_OUTPUT_TOKENS(默认 1024)会严格限制任意单次工具调用的费用和输出量。
  • 不持久化用户内容。 除每日支出总额外,不会将任何内容记录到磁盘。

配置

环境变量默认值用途
PERPLEXITY_API_KEY—check_llm_mention 中的 Perplexity 模型必需
OPENROUTER_API_KEY—通过 OpenRouter 使用 OpenAI / Gemini / Claude 时必需
MAX_COST_PER_CALL0.10每次工具调用的 USD 费用上限
MAX_DAILY_USD5.00每个 UTC 日的 USD 费用上限,持久化保存
LLM_MAX_OUTPUT_TOKENS1024每次大模型调用的输出令牌硬性上限
AI_VISIBILITY_SPEND_FILE~/.cache/ai-visibility-mcp/spend.json覆盖支出记录文件的位置

开发

uv sync --extra dev
uv run pytest          # 40 tests
uv run ruff check .    # lint

状态

v0.3 — 审计与修复循环已完成。7 个工具(4 个审计工具 + 3 个生成工具),测试全部通过(40/40),已强化 SSRF 防护并设置支出上限。已针对 tealhq.com / bandcamp.com / anthropic.com 完成冒烟测试。

许可证

MIT。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。