Ai Visibility Mcp について
Ai Visibility Mcp は、AI クローラーや検索でのサイトの可視性を調べる MCP サーバーです。監査に加え、robots.txt、JSON-LD、llms.txt の修正案を生成し、再確認まで行えます。
主な機能
- 0122 種の AI クローラーのアクセス確認
- 02根拠付きの AI 可視性スコア
- 03複数サイトの監査結果の比較
- 04複数 LLM でのブランド言及確認
- 05robots.txt、JSON-LD、llms.txt の生成
活用シーン
- 01robots.txt や Cloudflare によるアクセス制限の調査
- 02構造化データや llms.txt の不足確認
- 03自社サイトと競合の AI 可視性比較
- 04LLM の回答でのブランド掲載状況の確認
MCP 対応
サイト監査、ブランド言及確認、修正ファイル生成のツールを MCP クライアントに提供します。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
このサーバーのパッケージやリモートエンドポイントはまだ取得できていません。プロジェクトの README の手順に従ってください。
ツール
ローカルサーバーのツールはマシン上で起動して初めて取得できます。メンテナーはまだツール一覧を提供していません。
詳細
ai-visibility-mcp
AI があなたのウェブサイトをどのように認識するかを監査し、修正する MCP サーバーです。robots、スキーマ、LLM での言及、Cloudflare の AI デフォルト設定を対象に、問題を監査し、修正内容を生成し、1 つのループで再監査します。
多くのウェブサイトは、意図せず AI 検索から見えない状態になっています。Cloudflare のボット管理のデフォルト設定では、GPTBot / ClaudeBot / PerplexityBot がブロックされます。SPA は、JavaScript を実行しないクローラーに空の <div id="root"> を表示します。マーケティングチームは、ChatGPT、Claude、Perplexity の回答に自社ブランドが表示されていないことに気づきません。トラフィックが途絶えるまでは。
ai-visibility-mcp は、1 回のエージェントセッション内で監査と修正のループを完結させます。
- 監査 — AI による認識を妨げている要因を特定します
- 修正 — 問題を解決する成果物を生成します
- 適用 — サイト所有者が出力を適用します
- 再監査 — 修正が反映されたことを確認します
ツール
監査ツール
| ツール | 目的 | API キーが必要ですか? |
|---|---|---|
check_ai_bot_access(domain) | 22 種類の AI ユーザーエージェントを対象とした、ボットごとの robots.txt と Cloudflare の AI デフォルト設定フラグ | いいえ |
audit_ai_visibility(domain) | 説明可能な減点項目(robots、meta、JSON-LD、sitemap、llms.txt、SPA シェル)に基づく 0〜100 の総合スコア | いいえ |
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?) | AI ボットへのアクセスを許可する修正版 robots.txt。既存のルールを維持し、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 エージェントには、実際のウェブを監査できるツールが必要です。このツールはその一つです。
- LLM の回答でのブランド表示は、新しい SEO です。 1 回の 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 アドレスへの接続を拒否します。リダイレクト先も再検証します。
- 1 日あたりの利用上限。 LLM 呼び出しは
MAX_DAILY_USD(デフォルトは $5.00)で制限され、~/.cache/ai-visibility-mcp/spend.jsonに保存されます。ループによる増幅で Perplexity / OpenRouter のクレジットが使い切られることはありません。 - 1 回あたりのコスト上限。
MAX_COST_PER_CALL(デフォルトは $0.10)とLLM_MAX_OUTPUT_TOKENS(デフォルトは 1024)により、単一のツール呼び出しのコストを確実に制限します。 - ユーザーコンテンツは保存しません。 1 日あたりの利用合計を除き、ディスクに記録される内容はありません。
設定
| 環境変数 | デフォルト | 用途 |
|---|---|---|
PERPLEXITY_API_KEY | — | check_llm_mention で Perplexity モデルを使用する場合に必要です |
OPENROUTER_API_KEY | — | OpenRouter 経由で OpenAI / Gemini / Claude を使用する場合に必要です |
MAX_COST_PER_CALL | 0.10 | ツール呼び出しごとの上限額(USD) |
MAX_DAILY_USD | 5.00 | UTC 1 日あたりの上限額(USD)。永続化されます |
LLM_MAX_OUTPUT_TOKENS | 1024 | LLM 呼び出しごとの出力トークン数の上限 |
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。
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。