mcpField
V
Valid — Vehicle Identity Mcp Server

Valid — Vehicle Identity Mcp Server

リモート
github.com/infopronto-maker法務・行政118 週間前に更新
リポジトリ

Valid — Vehicle Identity Mcp Server について

AI Agent Visibility は、AI エージェントやクローラーが利用する形式にサイトのコンテンツを変換する Cloudflare Worker テンプレートです。Workers AI でページを拡充して KV にキャッシュし、Markdown、JSON インデックス、クローラー指示、JSON-LD などを提供します。

主な機能

  1. 01Workers AI でコンテンツを拡充
  2. 02拡充したページを KV にキャッシュ
  3. 03llms.txt と Markdown ページを提供
  4. 04JSON インデックスと JSON-LD を提供
  5. 05クローラー指示と任意の認証確認を提供

活用シーン

  1. 01エージェントが読める形式でサイトページを公開
  2. 02エージェントの根拠付けや引用用に構造化データを提供
  3. 03付属 UI で発見用サーフェスをプレビュー

設定

リモートサーバーはインストール不要です。クライアントを選んで設定をコピーするか、ワンクリックで導入できます。

エンドポイントhttps://bzejstotdvsalpiqywbj.supabase.co/functions/v1/valid-mcp
インストールコマンドをコピー
Claude CodeTerminal
Cursor.cursor/mcp.json
VS Code.vscode/mcp.json
Claude Desktopclaude_desktop_config.json
Windsurf~/.codeium/windsurf/mcp_config.json

コマンドはターミナルで実行し、JSON は各クライアントの MCP 設定に貼り付けて再起動します。認可が必要なサーバーは初回接続時にログインを求めます。

すべてのエンドポイント
Streamable HTTPhttps://bzejstotdvsalpiqywbj.supabase.co/functions/v1/valid-mcp認証が必要

ツール

詳細

AI エージェントの可視性

Cloudflare にデプロイ

検索はリンクから回答へと移行しています。回答に表示されるには、各 AI エージェントやクローラーが求める形式で、コンテンツを読み取れるようにする必要があります。このテンプレートは、Workers AI を利用し、ひとつのコンテンツストアから、あらゆるエージェント発見用サーフェスでサイトを見つけやすくします。

仕組み: Worker は Workers AI を使ってコンテンツを一度だけ拡充し、わかりやすいタイトル、エージェント向けの概要、要点、トピックタグを作成して、KV にキャッシュします。その後、エージェントからのリクエストが想定されるすべてのサーフェスに、同じストアの内容を反映します。

  • /llms.txt および /llms-full.txt — llms.txt のインデックス規約
  • /index.json — 構造化エージェント向けの型付き JSON インデックス
  • /<slug>.md — ページごとの整形済み Markdown。グラウンディングや引用に最適です
  • /robots.txt — 名前を指定した AI クローラーを明示的に許可するディレクティブ
  • Content-Signal ヘッダー — エージェントによるコンテンツの利用方法を宣言します
  • JSON-LD(/jsonld、/<slug>.jsonld)— 従来型および AI クローラー向けの schema.org 構造化データ
  • Web Bot Auth (任意) — 署名済みエージェントの ID を検証します(RFC 9421、Ed25519)

エージェントが好む形式にかかわらず、同じデータを提供します。バンドルされた UI を使えば、各サーフェスをリアルタイムでプレビューしてコピーできます。

このテンプレートにはサンプルコンテンツが含まれているため、デプロイ後すぐに動作します。src/lib/content.ts を編集して独自のページに対応させるか、/api/resources にコンテンツを POST して、その場で拡充できます。

対象ユーザー

  • AI の回答に表示されたいすべての方。 読者が検索結果をクリックする代わりに ChatGPT、Claude、Perplexity に質問することが増えているなら、エージェントが引用できる、コンテンツの整理された構造化コピーを提供できます。
  • AEO(Answer Engine Optimization)を試している開発者。 新たに登場しているエージェント発見用の各種規約を、ひとつの Worker でまとめて確認できる実用的なリファレンスです。
  • エージェントからの 4xx が頻発しているチーム。 ボット分析で、AI エージェントが読み取れないパスにアクセスしていることがわかった場合に、エージェントが読めるコンテンツを提供して解決できます。

コマースに特化したバージョンをお探しですか? commerce-llms-txt-template をご覧ください。商品カタログに特化した /llms.txt を提供します。このテンプレートは、より汎用的で複数のサーフェスに対応するものです。

はじめに

このリポジトリ以外でこのテンプレートを使って新しいプロジェクトを始めるには、C3(create-cloudflare CLI)を使用します。

npm create cloudflare@latest -- --template=cloudflare/templates/agent-visibility-template

上記の Deploy to Cloudflare ボタンを使うと、プルリクエストごとにライブプレビューが生成されます。

セットアップ

  1. 依存関係をインストールします。

    npm install
    
  2. KV 名前空間を作成し、その ID を wrangler.jsonc に追加します(サンプルの名前空間 ID を置き換えてください)。

    npx wrangler kv namespace create VISIBILITY_CACHE
    
  3. wrangler.jsonc の vars にサイト情報(SITE_NAME、SITE_DESCRIPTION)を設定します。

  4. (任意)実行時書き込み API を使用する場合は、管理者シークレットを設定します。設定するまで POST ルートは無効です。

    npx wrangler secret put ADMIN_TOKEN
    
  5. ローカルで実行します。

    npm run dev
    
  6. デプロイします。

    npm run deploy
    

デプロイ後

Worker はバンドルされたサンプルコンテンツを使ってすぐに稼働するため、データソースは 必要ありません。ルート URL にアクセスしてサーフェスエクスプローラー UI を表示し、ライブの エージェント向けサーフェスを確認してください。

  • https://<your-worker>/llms.txt および /llms-full.txt
  • https://<your-worker>/index.json
  • https://<your-worker>/getting-started.md(サンプルのスラッグは任意)
  • https://<your-worker>/robots.txt

サーフェスへの最初のリクエスト時に Workers AI でコンテンツが拡充され、キャッシュされます。 以降のリクエストには KV から応答します。サンプルコンテンツを置き換えて (独自のコンテンツを追加するを参照)、自分のサイトに合わせてください。

設定

すべての設定は、vars 内の wrangler.jsonc に記述します。

変数説明デフォルト
SITE_NAMEサイト名。すべての画面に表示されますAcme Docs
SITE_DESCRIPTIONエージェント向けの一行説明(サンプル)
AI_MODELコンテンツ強化に使用する Workers AI モデル@cf/meta/llama-3.3-70b-instruct-fp8-fast
ENRICHMENT_CACHE_TTL強化済みレコードを KV にキャッシュする秒数3600
CONTENT_SIGNALContent-Signal ポリシー(robots.txt とヘッダーとして出力)ai-input=yes, search=yes, ai-train=no
ENABLE_WEB_BOT_AUTHオプションのエージェント識別機能を公開するかどうかfalse

シークレット(npx wrangler secret put <NAME> で設定し、コミットしないでください):

シークレット説明
ADMIN_TOKEN変更を行う API ルート(POST /api/resources、POST /api/refresh)に必要なベアラートークンです。未設定の場合、これらのルートは 401 を返します。

独自のコンテンツを追加する

オプション A — ソースを編集する: src/lib/content.ts のエントリーを独自のページ(slug、url、任意の title、および HTML または Markdown の body)に置き換えてから、再デプロイします。

オプション B — 実行時に POST する: ADMIN_TOKEN を設定し、コンテンツを API に送信すると、ただちに強化されて追加されます。

curl -X POST https://your-worker.workers.dev/api/resources \
  -H "authorization: Bearer $ADMIN_TOKEN" \
  -H "content-type: application/json" \
  -d '{"slug":"about","url":"https://example.com/about","title":"About","body":"<h1>About us</h1>..."}'

スラッグは ^[a-z0-9-]{1,63}$ に一致する必要があります。url は http(s) である必要があり、本文は 100 KB までです。ストアには最大 100 個のリソースを保存できます。ソースからキャッシュを消去して再強化するには、(認証も必要な)POST /api/refresh を呼び出してください。

エンドポイント

メソッドパス説明
GET/llms.txtllms.txt インデックス(Markdown)
GET/llms-full.txt全コンテンツをインライン化したもの(Markdown)
GET/index.json型付き JSON インデックス
GET/:slug.mdページごとの Markdown
GET/:slug.jsonldページごとの schema.org JSON-LD
GET/jsonldサイト全体の schema.org JSON-LD
GET/robots.txtAI ボット向けの指示
GET/api/siteサイト設定とサーフェス一覧(UI で使用)
GET/api/resources拡張されたリソースの JSON
GET/api/resources/:slug単一の拡張リソース
POST/api/resourcesリソースを拡張して追加/置換します(ADMIN_TOKEN が必要)
POST/api/refresh拡張キャッシュをクリアします(ADMIN_TOKEN が必要)
GET/.well-known/web-bot-auth/directory信頼されたエージェントキー(有効な場合)
POST/api/identity署名付きエージェントリクエストを検証します(有効な場合)

キャッシュ

拡張処理はコストのかかるステップ(ページごとに Workers AI を 1 回呼び出す)であるため、結果は KV の単一キーにキャッシュされ、ENRICHMENT_CACHE_TTL が期限切れになるまで再利用されます(デフォルトは 1 時間)。POST /api/resources は新規または変更されたページのみを拡張し、キャッシュをその場で更新します。POST /api/refresh はキャッシュをクリアするため、次の読み取り時にソースから再度拡張されます。Workers AI が一時的に利用できない場合、Worker は決定論的な拡張処理にフォールバックし、その劣化した結果を 60 秒間だけキャッシュします。これにより、一時的な障害がサーフェスに TTL 全体にわたって影響することを防ぎます。

既知の制限事項

  • 拡張処理はリクエストの処理中に実行されます。 キャッシュが空の状態からの最初のリクエストでは、すべてのページをインラインで拡張するため、キャッシュ済みの読み取りより時間がかかります。大規模なサイトでは、拡張処理をキューまたはスケジュールされた Cron Trigger に移してください。
  • ストアは 2 つの KV キーに保存され、KV の制限を十分に下回るよう、リソース数は 100 件、本文は 100 KB に制限されています。より大規模なカタログでは、リソースごとに KV キーを 1 つ使用する方法(または D1)に切り替え、ページネーションを追加してください。
  • KV は結果整合性です。 POST の後、別のリージョンでのサーフェス読み取りでは、一時的に以前のバージョンが返されることがあります。
  • 実行時の書き込みでは KV の読み取り・変更・書き込みを行います。 更新 API は軽量な管理者向け更新を想定しています。並行書き込みは避けてください。高頻度のワークフローや複数の書き込み元があるワークフローでは、Durable Object を通じて書き込みを直列化するか、ストアを D1 に移してください。
  • Web Bot Auth は最小限のリファレンス実装です(以下を参照)。堅牢化された実装ではないため、依存する前に現在のドラフトを確認してください。

任意:Web Bot Auth(エージェントの身元確認)

これまでの内容はすべて、コンテンツを読み取り可能にすることについてでした。Web Bot Auth は別の側面を担います。適切に動作するエージェントが、署名付きリクエスト(RFC 9421、Ed25519)で自分が何者かを証明できるようにします。デフォルトでは無効です。ENABLE_WEB_BOT_AUTH=true を設定すると、/.well-known/web-bot-auth/directory に鍵ディレクトリが、/api/identity に検証エンドポイントが公開されます。src/lib/web-bot-auth.ts のサンプルキーを、実際に信頼するエージェントのキーに置き換え、本番環境で利用する前に最新の Web Bot Auth ドラフトを確認してください。

テスト

npm test

テストスイートは公開インターフェイスにアクセスする前に KV キャッシュにデータを投入するため、Workers AI リクエストを行わずにローカルで実行できます。

ライセンス

リポジトリの LICENSE を参照してください。

コメント

MCP は初めてですか?

プロトコルの概要から最初のサーバーの導入まで、よくある疑問にまとめて答えます。

AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。