search-console-mcp
search-console-mcp
Google Search Console 用の MCP サーバーで、公式の Search Console API を AI エージェント向けのツールとして公開します。
焦点は 検索パフォーマンスとインデックスの健全性 です — クエリ、ページ、国、デバイス、日付ごとのクリック数、インプレッション数、CTR、掲載位置を照会し、URL がインデックスされているかどうか、されていない場合の理由を確認し、アカウントのサイトマップとプロパティを管理します。
意図的に行わないこと: URL の(再)インデックス要求は行いません — 別の Indexing API は求人投稿ページとライブ配信ページのみをサポートしているため —、プロパティの所有権確認も行いません(所有権を確認するには、所有者がサービスアカウントを各プロパティに追加する必要があります)、Google Analytics のデータも扱いません(これは無関係な Analytics Data API の対象です)。
削除はオプトインです。
delete_sitemapとdelete_siteは、GOOGLE_SEARCH_CONSOLE_ALLOW_DESTRUCTIVEが設定されている場合にのみ登録されます。構成 を参照してください。
インストール
claude mcp add search-console \
-e GOOGLE_SERVICE_ACCOUNT_KEY_PATH=/path/to/service-account.json \
-e GOOGLE_SEARCH_CONSOLE_SITE_URL=https://example.com/ \
-- npx -y @orellbuehler/search-console-mcp-e フラグは -- セパレータの前に置く必要があります。-- 以降のものはすべてサーバープロセスに渡され、設定としては読み込まれません。
サービスアカウントキーの取得
Google Cloud コンソール でプロジェクトを選択または作成し、Google Search Console API を有効にします。
IAM と管理 → サービスアカウント → サービスアカウントを作成 に進みます。省略可能な「アクセス権限を付与」の手順はスキップしてかまいません — Search Console の権限は Cloud IAM ロール経由ではなく、個別に付与されます。
新しいサービスアカウントを開き、[キー] タブで [鍵を追加 → 新しい鍵を作成 → JSON] を選択します。ファイルは一度だけダウンロードされ、再度取得することはできません。
Search Console でプロパティを開き、[設定 → ユーザーと権限 → ユーザーを追加] に移動し、サービスアカウントのメールアドレス(
name@project-id.iam.gserviceaccount.com)を貼り付けます。付与する権限:読み取りツール(アナリティクス、サイトマップ、URL 検査)には制限付きまたはフル
submit_sitemapとdelete_sitemapにはフル
サーバーに表示させたいすべてののプロパティで手順 4 を繰り返します。サービスアカウントが自らプロパティを検証することはできません。
ダウンロードした JSON ファイルを
GOOGLE_SERVICE_ACCOUNT_KEY_PATHに指定します。
JSON キーはパスワードと同じように扱ってください。付与したすべての権限をそのまま持ち、事前の第二要素もありません。リポジトリの外に保管し、chmod 600 を検討してください。
構成
変数 | 必須 | 説明 |
| いずれか | ダウンロードしたサービスアカウントの JSON キーへのパス |
| いずれか | サービスアカウントの JSON キーを生の JSON 文字列として直接指定 |
| 不要 | デフォルトのプロパティ。ツールで |
| 不要 |
|
プロパティは、https://example.com/ のような URL プレフィックスプロパティ(プロトコルと末尾のスラッシュが区別されます — https://example.com/ と http://example.com/ は別のプロパティです)または、sc-domain:example.com のような ドメインプロパティ(すべてのサブドメインとプロトコルをカバーします)のいずれかとして識別されます。プロパティが Search Console に追加されたときの形式を使ってください。正確な文字列は list_sites で確認できます。
Claude Code での使い方
{
"mcpServers": {
"search-console": {
"command": "npx",
"args": ["-y", "@orellbuehler/search-console-mcp"],
"env": {
"GOOGLE_SERVICE_ACCOUNT_KEY_PATH": "/path/to/service-account.json",
"GOOGLE_SEARCH_CONSOLE_SITE_URL": "https://example.com/"
}
}
}
}プロンプト例
今月の上位検索クエリはどのようなものですか?
Google から最も多くのクリックを得ているページはどこですか? また、前の28日間と比べてどう変化しましたか?
「pricing」を含むクエリのうち、順位が 10 位未満のものを表示して — クイックウィン候補です。
モバイルとデスクトップのトラフィックの内訳はどうなっていますか?
過去3か月の日ごとのクリック数とインプレッション数をグラフにして。
インプレッションはあるのにクリックがほとんどない国はどこか?
https://example.com/blog/launch はインデックスされていますか? されていない場合、その理由は?
サイードマップを一覧にして、エラーや警告があるものがあれば教えて。
昨日のサイト再構築後、サイトマップを再送信して。
「mcp server」でランキングされるページのうち、互いに競合しているページはどれか?
今四半期の Discover のトラフィクと、ウェブ検索のトラフィックを比較して。
ツール
検索アナリティクス
ツール | 説明 |
| フルパワーのパフォーマンスクエリ: 任意のディメンション、フィルタ、正規表現、検索タイプ、最大 25,000 行のページングに対応 |
| クリック数が上位の検索クエリ。ページ、国、デバイスで絞り込み可能 |
| クリック数が上位のペざ。クエリの部分文字列、国、デバイスで絞り込み可能 |
サイトマップ
ツール | 説明 |
| 送信済みサイトマップを、ステータス、エラー、警告、インデックス済み URL 数ととも一覧表示 |
| 1 つのサイトマップの処理ステータスと内容を取得 |
| 新しいサイトマップを送信、または既存のサイトマップを再送信して再処理を依頼 |
| Search Console からサイトマップを削除( |
サイト
ツール | 説明 |
| サービスアカウントがアクセスできるすべてのプロパティを権限レベル付きで一覧表示 |
| 1 つのプロパティの権限レベルを取得 |
| 検証済みプロパティをアカウントに追加 |
| アカウントの閲覧リストからプロパティを削除( |
URL 検査
ツール | 説明 |
| URL の Google インデックスの状況: 判定、カバレッジ、カノニカル、最終クロール、リッチ結果、robots を確認 |
メモと注意点
パフォーマンスデータは約 2〜3 日遅れます。 便利ツールはデフォルトで 3 日前までの日付範囲を対象とします。
data_state: "all"は最新のデータを含みますが、不完全な可能性があります。データ保持期間は 16 か月です。 それより古いクエリは行を返しません。
プライバシーフィルタ。 まれなクエリの行は非表示になるため、クエリごとの行の合計は実際の合計よりも小さくなります。正確な合計が必要な場合は、ディメンションなしでクエリしてください。
1 回の呼び出しで約 25,000 行。
start_rowでページングしてください。row_limit未満の行数を返す応答が最後のページです。URL 検査の割り当ては、プロパティごとに 1 日あたり約 2,000 回、1 分あたり 600 回です。 一括ではなく、選択して検査してください。
hourディメンション はdata_state: "hourly_all"が必要で、直近の約 10日間のみを対象とします。検索データは LLM に渡されます。 ツールが返すものはすべてモデルのコンテキストになります。データが環境の外へ出てはならないプロパティは接続しないでください。
開発
npm install
npm run build # tsc -p tsconfig.build.json -> dist/
npm test # vitest run
npm run lint # eslint src
npm run typecheck # tsc --noEmit
npm run format # prettier --write .ビルドしたサーバーを実際のプロパティに対してスモークテスト:
GOOGLE_SERVICE_ACCOUNT_KEY_PATH=/path/to/service-account.json \
GOOGLE_SEARCH_CONSOLE_SITE_URL=https://example.com/ \
npx @modelcontextprotocol/inspector node dist/index.jsCI / リリース
CI は Node 20 と Node 22 で format:check、lint、typecheck、test、build を実行します。公開は npm のトラステッド パブリッシング(OIDC、トークンなし)による GitHub release で行われます:
npm version patch
git push --follow-tags
gh release create "v$(node -p "require('./package.json').version")" --generate-notesライセンス
MIT © Orell Bühler
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Connectors
SEO research, audits, backlinks, GSC, and content workflow tools for AI agents.
Turn Search Console data into SEO actions, content, publishing, indexing, and AI insights.
Open-source SEO manager for coding agents: keyword research, content PRs, rank + Search Console.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/OrellBuehler/search-console-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server