gsc-mcp-connector
gsc-mcp-connector
セルフホスト型Google Search Console MCPサーバー。Cloudflare Workersに15分でデプロイ可能。ChatGPT、Claude、またはMCP対応クライアントに接続して、自然言語でGSCデータをクエリできます。
提供する機能
デプロイ後、プライベートなMCPエンドポイントが作成され、AIアシスタントに4つのツールを公開します。
list_sites— 認証済みユーザーがアクセス可能なすべてのプロパティを検出query_search_analytics— クリック数、インプレッション数、CTR、掲載順位。クエリ/ページ/国/デバイス/検索表示/日付でフィルタリング可能inspect_url— URLインスペクションAPIの完全な出力(インデックスステータス、正規URL、モバイル、AMP)list_sitemaps— 送信されたすべてのサイトマップとその処理ステータス
「過去28日間とその前の28日間で、クリック数の減少が最も大きいクエリトップ50は?」と質問すると、アシスタントがデータを取得し、差分を計算し、分析を記述します。もはやSQLエクスポートは不要です。
Related MCP server: Google Search Console MCP
仕組み
ChatGPT/Claude ──OAuth──▶ Your Worker ──OAuth──▶ Google
│
└─ holds your Google refresh_token
(encrypted, in OAuth grant props)2つのOAuthチェーン:
MCPクライアント → Worker : ChatGPT/ClaudeがWorkerに対してOAuth 2.1 + PKCEを実行。ログインUIは、デプロイ時に設定した静的な「アクセスキー」を要求します(コネクタゲート)。
Worker → Google : アクセスキーチェック後、ユーザーはGoogleの同意画面にリダイレクトされ、
webmasters.readonlyを許可します。結果のリフレッシュトークンはOAuth認可に保存され、ツール呼び出しのたびにWorkerが新しいアクセストークンをリフレッシュしてGSCを呼び出します。
ユーザーのGoogleアカウントがアクセスを制御します。サービスアカウント、GSCユーザー管理の手間、権限伝播の遅延は一切不要です。
前提条件
項目 | 費用 | 必須? |
ChatGPT Plus / Pro / Team または Claude.ai Pro / Team | 月額$20以上 | カスタムMCPコネクタは有料プラン限定です。 |
Cloudflareアカウント | 無料枠で十分 | はい |
Google Cloudプロジェクト | 無料 | はい — OAuthクライアント作成用 |
確認済みSearch Consoleプロパティ | 無料 | はい(すでにお持ちのはずです) |
Node.js 20+ + | 無料 | シークレット設定手順で推奨 |
Cloudflare Workersの無料枠(1日10万リクエスト)は、個人のSEO利用には十分です。有料のCloudflareプランは不要です。
クイックスタート(約15分)
1. Workerをデプロイする
このREADME上部のDeploy to Cloudflareボタンをクリックします。Cloudflareがリポジトリをアカウントにクローンし、依存関係をインストールし、https://gsc-mcp-connector.<あなたのサブドメイン>.workers.devのような公開URLを提供します。
注意 : この段階で、
MCP_BEARER_TOKEN、GOOGLE_OAUTH_CLIENT_ID、GOOGLE_OAUTH_CLIENT_SECRETの入力を求められます。Googleのものはまだありません。MCP_BEARER_TOKENには任意のランダムな16進文字列を入力し(後で変更可能)、Googleの2つのフィールドには何でも入力してください。これらはステップ4で適切に設定します。ボタンをスキップする場合は、リポジトリをローカルにクローンし、
npm installを実行し、その後npx wrangler deployを実行してください。
デプロイ後、Worker URLをメモしてください。ステップ3とステップ5の両方で必要になります。
2. コネクタアクセスキーを生成する
これは、Google OAuthの前のゲートとして使用される静的なランダム文字列です。コネクタを使用するすべてのユーザーは、ログインUIにこの文字列を貼り付ける必要があります。
openssl rand -hex 32出力を保存してください。これをシークレットとして設定し、ChatGPT/Claudeで使用します。
3. Google Cloudをセットアップする(OAuthクライアント)
docs/SETUP_GCP.mdのステップバイステップに従ってください。承認済みリダイレクトURIには、ステップ1のWorker URLを使用します。最終的にクライアントIDとクライアントシークレットが取得できます。
これが最も時間のかかる手順です(初回は約10分)が、一度だけ行えば完了です。
4. Workerシークレットを設定する
npx wrangler secret put MCP_BEARER_TOKEN
# paste the value from step 2
npx wrangler secret put GOOGLE_OAUTH_CLIENT_ID
# paste the Client ID from step 3
npx wrangler secret put GOOGLE_OAUTH_CLIENT_SECRET
# paste the Client Secret from step 3または、Cloudflareダッシュボードから: Workers & Pages → 該当Worker → Settings → Variables and Secrets → 各項目をタイプSecretとして追加します。
ヒント — Windowsでのエンコーディングの落とし穴 : ファイルの内容をパイプで渡す場合(例:
Get-Content | wrangler secret put)、そのファイルにUTF-8 BOMが含まれていると、BOMがシークレットに含まれてJSON解析が壊れます。Cloudflareダッシュボードまたは対話型のwrangler secret put(プロンプトで貼り付け)を使用すれば、この問題を完全に回避できます。
5. ChatGPTに接続する(Plus/Pro/Team)
ChatGPT → Settings → Connectors → Add custom connector :
Name :
gscMCP Server URL :
https://YOUR-WORKER-URL/mcp(/mcpで終わる必要があります)Authentication :
OAuth「I understand and want to continue」にチェック
Create
ポップアップがWorkerのログインUIを開きます。MCP_BEARER_TOKENを貼り付け → Continue with Googleをクリック → Googleがログインを求めます(GSCプロパティを所有するアカウントを使用) → webmasters.readonlyを許可 → ChatGPTにリダイレクトされ、コネクタが有効になります。
新しいチャットで、ツールバーのgscコネクタを有効にし、次のように質問します: 「Google Search Consoleのサイトを一覧表示して」。プロパティが表示されるはずです。
6. (オプション)Claude.aiに接続する(Pro/Team)
Settings → Integrations → Add custom integration → 同じURL、同じフローです。
ローカル開発
git clone https://github.com/JuJu78/gsc-mcp-connector
cd gsc-mcp-connector
npm install
cp .dev.vars.example .dev.vars
# edit .dev.vars with your real Client ID + Client Secret + bearer token
npx wrangler dev開発サーバーはhttp://localhost:8787で実行されます。ローカル開発では、GoogleのリダイレクトURIにHTTPSが必要なため、Google OAuthフローを完全に完了できません。完全なエンドツーエンドテストを行うには、Cloudflareにデプロイし、workers.dev URLに対してテストしてください。
制限事項
読み取り専用。 書き込み操作(サイトマップ送信、インデックスリクエスト)は意図的に除外されています。LLMコンテキストではリスクが伴うためです。必要な場合はPRを送信してください。
設計上シングルテナント。 1人のオペレーターがデプロイし、1つのベアラートークンがコネクタをゲートし、アクセスはGoogle OAuthフローを完了したユーザーにバインドされます。マルチユーザーSaaSスタイルは対象外です。
OAuth同意画面がテストモードの場合、テストユーザーは100人に制限されます(個人/チーム利用には十分以上)。より広く配布するには、アプリをGoogleの審査に提出する必要があります(
webmasters.readonlyは「センシティブ」スコープであり、手動レビューが必要です)。GSC APIクォータ — プロジェクトあたり1分間に1200クエリ、1日あたり3万クエリ。インタラクティブな使用には十分です。
日付範囲 — GSCは過去16ヶ月間のデータを返します。それ以前の日付はエラーになります。
トラブルシューティング
症状 | 原因 | 修正方法 |
Googleログイン中に | GCPの承認済みリダイレクトURIがWorkerの送信内容と完全に一致していない |
|
Googleログイン後に | ログインしたアカウントがOAuth同意画面のテストユーザーに含まれていない | OAuth同意画面 → 対象者 → テストユーザーにGmailを追加 |
ChatGPTでの認可後に | 以前の試行による古いOAuth認可が残っている | ChatGPTでコネクタを削除し、再作成する |
| v0.4+をデプロイする前に認可が作成された | ChatGPT/Claudeでコネクタを削除し、再作成する |
ベアラー貼り付け後に |
| 対話型の |
| 認証されたGoogleアカウントにGSCプロパティがない(またはアカウントが間違っている) | Google同意手順で使用したアカウントを確認 — GSCプロパティを所有している必要があります |
ChatGPTが「利用可能なツールがありません」と表示 | URLが | サーバーURLは |
スタック
Cloudflare Workers + Durable Objects(
agentsSDK ≥0.12経由)@cloudflare/workers-oauth-provider(OAuth 2.1 + DCR + PKCE用)@modelcontextprotocol/sdk(ツール定義用)KV名前空間
OAUTH_KV(OAuth状態用)Google OAuth 2.0フロー(Web Crypto APIでネイティブ署名、Node依存なし)
クレジット
Julien Gourdonによって構築されました — 検索とAIの交差点を探求するSEOコンサルタント。
ライセンス
MIT — LICENSEを参照してください。
This server cannot be installed
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- Alicense-qualityBmaintenanceSelf-hosted MCP server that exposes Google Search Console tools (list sites, query analytics, inspect URL, list sitemaps) via natural language to AI assistants like ChatGPT and Claude.MIT
- Alicense-qualityAmaintenanceOAuth-protected Google Search Console MCP for analytics, URL inspection, sitemap management, indexing requests, and SEO diagnostics. Open-source Cloudflare Workers implementation with 17 tools.145MIT
- Alicense-qualityCmaintenanceSelf-hosted MCP server that connects Google Search Console to AI assistants, enabling natural language queries about search analytics, sitemaps, and URL inspection data.MIT
- Alicense-qualityCmaintenanceSelf-hosted Google Search Console MCP server deployable to Cloudflare Workers, allowing natural language queries of GSC data via ChatGPT, Claude, or any MCP-capable client.MIT
Related MCP Connectors
SEO MCP server: crawl your site, find AI-visibility gaps, and ship the fix from your coding agent.
Hosted Amazon Seller Central and Amazon Ads MCP server for Claude, ChatGPT, Cursor, and agents.
Hosted Google Calendar MCP server for AI agents. No self-hosting or Google Cloud setup.
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/pradeepoct/gsc-mcp-connector'
If you have feedback or need assistance with the MCP directory API, please join our Discord server