Bot Protection には MCP サーバーがあります。AI アシスタントがダッシュボードの画面を読み、「このリクエストはなぜブロックされた?」「昨日 /login を攻撃したのは何?」「今週サイトを読んだ AI は?」といった質問に答えられます。読むのはダッシュボードに表示されるのと同じデータで、お客様のアカウントのものだけです。読み取り専用なので、設定を変えることも、/v1/decide を呼ぶことも、どこかにデータを送ることもありません。
MCP キーを作成する
ダッシュボードのセットアップページの MCP キーで、MCP キーを作成を選びます。キーは kz_mk_ で始まり、一度だけ表示されます。アシスタントの設定にコピーしてください。API キーを作成できる人なら誰でも作成できます。MCP キーは API キーではありません。MCP サーバーでのみ使え、API キーは MCP サーバーでは拒否されます。ほかのシークレットと同じく、リポジトリには入れないでください。
サーバーは https://korzen.dev/bot-protection/mcp にあり、Streamable HTTP で接続します。各クライアントは Authorization: Bearer ヘッダーでキーを送ります。
アシスタントを接続する
Claude Code
claude mcp add --transport http korzen https://korzen.dev/bot-protection/mcp \ --header "Authorization: Bearer $KORZEN_MCP_KEY"
Claude Desktop
claude_desktop_config.json (Settings、Developer、Edit config) で、ヘッダーを渡す mcp-remote を使います。
{
"mcpServers": {
"korzen": {
"command": "npx",
"args": ["-y", "mcp-remote", "https://korzen.dev/bot-protection/mcp", "--header", "Authorization:${KORZEN_MCP_HEADER}"],
"env": { "KORZEN_MCP_HEADER": "Bearer kz_mk_..." }
}
}
}
Codex
~/.codex/config.toml で、キーは環境変数 KORZEN_MCP_KEY に入れます。
[mcp_servers.korzen] url = "https://korzen.dev/bot-protection/mcp" bearer_token_env_var = "KORZEN_MCP_KEY"
Cursor
~/.cursor/mcp.json、またはプロジェクトの .cursor/mcp.json で設定します。
{
"mcpServers": {
"korzen": {
"url": "https://korzen.dev/bot-protection/mcp",
"headers": { "Authorization": "Bearer ${env:KORZEN_MCP_KEY}" }
}
}
}
Claude と ChatGPT の Web コネクタは OAuth でのサインインを求めますが、このサーバーはまだ対応していません。上のように、ヘッダーを設定できるクライアントを使ってください。
ツール
| ツール | 読む内容 |
|---|---|
get_decision | /v1/decide が返した request_id で指定した 1 件の判定。判定ページと同じく、クラス、ボットスコア、根拠の種類、国、ネットワーク、クローラーを、お客様のしきい値とともに返します |
list_decisions | 判定ページの行。フィルターは find (リクエスト ID、IP、User-Agent)、path、class、country、asn、crawler、evidence、ua、since、older で、limit で最大 50 行まで |
attacks | 概要ページの攻撃と、その期間の判定数とボット数。since は 24h、7d、30d のいずれか |
ai_traffic | AI トラフィックのページ。どの AI クローラーや AI アシスタントが、どのくらいの頻度で、どのページを読んだか。since は上と同じ |
応答はすべて JSON です。訪問者が書いたもの (パスや User-Agent のファミリー) は visitor_supplied の下に入り、制御文字、双方向制御文字、ゼロ幅文字は \u{...} のエスケープで書かれます。訪問者は User-Agent にアシスタント向けの言葉を書けますが、サーバーはそれをデータとして渡し、指示としては扱いません。クライアントのツール呼び出しの承認はオンのままにしてください。
サーバーが決してしないこと
- 何も変更しません。設定、ルール、キー、プランのいずれもです。
- ほかのアカウントのデータは読みません。キーが読めるのは自分のアカウントだけです。
/v1/decideを呼ばず、イベントも送らず、判定としても数えません。無料です。- データを第三者に送らず、キーやツールの応答をログに残しません。各呼び出しのログ行に残るのは、ツール、引数の名前、応答のサイズです。
- ダッシュボード以上のものは見せず、検知がどう判定するかも見せません。
上限
MCP キーごとに、1 分あたり 60 回、1 日あたり 2,000 回まで呼び出せます。超えると、サーバーは RateLimit と Retry-After ヘッダー付きで 429 を返します。呼び出しは 5 秒以内に応答するか、時間がかかりすぎたことを伝えます。1 つのアカウントで持てる MCP キーは 25 個までです。
キーを失効させる
セットアップページでは、各 MCP キーの作成日と最終使用日時 (分単位) が表示されます。失効を選ぶとすぐに止まり、アシスタントの次の呼び出しは 401 で拒否されます。API キーとサーバーからの呼び出しには影響しません。