# Google Search Console setup for PopMCP

You end up with two values from one Google Cloud OAuth client, the Client ID (…apps.googleusercontent.com) and the Client secret (GOCSPX-…), which you paste into PopMCP's OAuth Client ID and OAuth Client Secret fields.

- Auth: OAuth authorization
- Setup time: 10 min
- API base URL: https://searchconsole.googleapis.com/webmasters/v3
- Credentials screen: https://console.cloud.google.com/auth/clients
- Provider docs: https://developers.google.com/webmaster-tools/v1/api_reference_index

## Before you begin

- A Google account that is a verified owner or a delegated user on the Search Console property
- A Google Cloud project you can edit. The Search Console API is free
- The PopMCP callback URL, copied from the connector screen before you start
- Editor or Owner on the Cloud project, so you can enable APIs and create OAuth clients

## Get your credentials

### 1. Enable the Google Search Console API

Pick your project in the project picker in the top bar, then go to APIs & Services → Library. Search for Google Search Console API and click Enable.

Screen: https://console.cloud.google.com/apis/library/searchconsole.googleapis.com

### 2. Fill in Branding, then publish the app

Open Google Auth Platform → Branding and enter the App name and User support email. Open Audience, set User type to External, and click Publish app.

Screen: https://console.cloud.google.com/auth/audience

### 3. Create a Web application OAuth client

Go to Google Auth Platform → Clients and click Create client. Choose Application type → Web application, name it `PopMCP`, then click Add URI under Authorized redirect URIs and paste the callback URL copied from PopMCP.

Screen: https://console.cloud.google.com/auth/clients/create

### 4. Copy the Client ID and secret into PopMCP

Copy both values from the OAuth client created dialog before you close it. Paste them into PopMCP's OAuth Client ID and OAuth Client Secret fields, click Connect, and choose the Google account that owns your Search Console property.

Screen: https://console.cloud.google.com/auth/clients

## Fields PopMCP asks for

- OAuth Client ID (clientId) [required]: From your Google Cloud project → APIs & Services → Credentials → OAuth client. Make sure the Search Console API is enabled for that project first (APIs & Services → Library).
- OAuth Client Secret (clientSecret) [required]: Stored encrypted; used server-side only and never shown again.

## Callback URL to register

https://app.popmcp.com/api/providers/google/callback

## Scopes requested

- https://www.googleapis.com/auth/webmasters

## Verify

After consenting, PopMCP lists your verified Search Console properties, and a query for last month's top queries returns the same clicks and impressions you see in the Performance report.

## Troubleshooting

### Error 400: redirect_uri_mismatch

Cause: The Authorized redirect URI on the client differs from the callback PopMCP sends, often by a trailing slash or http versus https.

Fix: Copy the callback out of PopMCP and paste it into Google Auth Platform → Clients → your client → Authorized redirect URIs, save, wait a minute, then retry.

### invalid_grant about a week after connecting

Cause: The OAuth app was left in Testing, so Google expired the refresh token after 7 days.

Fix: Google Auth Platform → Audience → Publish app, then reconnect once in PopMCP. Publishing needs no Google review and only adds a one-time unverified-app screen.

### 403 User does not have sufficient permission for site

Cause: The Google account you consented with is not a verified owner or user of that property.

Fix: In Search Console → Settings → Users and permissions, add that account with Full or Owner for sitemap writes, then reconnect.

### Property list is empty, or a domain property is missing

Cause: Domain properties are addressed as sc-domain:example.com and only appear if that exact property is verified for the account.

Fix: Verify the domain property in Search Console, or connect using the URL-prefix property you already own.

### 429 or quota exceeded during bulk query pulls

Cause: Search Analytics is capped at 1,200 queries per minute per site and per user.

Fix: Batch fewer date ranges at once and let PopMCP back off. The per-minute bucket resets on its own.

---

Source: https://www.docs.popmcp.com/docs/integrations/google-search-console/