Setting Up Google Business Profile MCP for Claude

Stuart Clark avatar
Setting Up Google Business Profile MCP for Claude

AI-Powered SEO & CRO  ·  stuseo.uk

PART 7 OF 13

Setting Up Google Business Profile MCP for Claude

Manage local listings, reviews and posts in bulk from one conversation

AI-POWERED SEO & CRO WITH CLAUDE — 13-PART SERIES

You are reading Part 7 of 13. Start from the beginning if you haven’t read the introduction yet.

A WORK IN PROGRESS

This guide is different from the others in the series: I’m still trialling it. The setup below is complete, but Google hasn’t yet approved my API access, which is the one step you can’t speed up. I’ll update this post with real examples and lessons once it’s working.

Why connect Google Business Profile to Claude?

For local businesses, Google Business Profile often drives more enquiries than the website itself. Managing it well is slow, though, especially across multiple locations. Hours, categories and attributes need to stay consistent. Every review deserves a reply. Local posts go stale. Performance data sits in a separate dashboard for each listing.

A Google Business Profile MCP server gives Claude access to the Business Profile APIs, so you can inspect, compare and update your listings in plain English. The goal is bulk management: handling ten or fifty listings in one conversation, rather than clicking through them one at a time.

As with every server in this series, MCP is an open standard, so the server below also works with Claude Code, Cursor, VS Code, Codex and other MCP-compatible tools.

The server we’ll use: A1 Google Business Profile MCP

Google doesn’t publish an official Business Profile MCP server. This guide uses the open-source A1 Google Business Profile MCP (npm package mcp-google-business, MIT licence). It provides 20 tools covering accounts and locations, profile information, categories and attributes, performance metrics, reviews and local posts. It runs on your own computer and talks directly to Google.

The catch: Google must approve API access first

This is the part that catches most people out. Unlike GA4 or Search Console, a Google account and OAuth credentials are not enough. Google Cloud projects start with a Business Profile API quota of zero requests per minute, so every call fails until Google approves an Application for Basic API Access. Approved projects get 300 requests per minute per API.

According to the server’s documentation, Google expects you to have:

  • A verified, active Business Profile that has existed for at least 60 days.
  • An owner or manager role on that profile, using the same Google account you apply from.
  • A business website that matches the application.

Start the application early. You can do the rest of the setup while you wait.

Before you start

  1. Install the Claude desktop app.
  2. Install Node.js version 20 or newer. Check it in a terminal with node -v.
  3. Sign in to Google with an account that owns or manages your Business Profile listings.

Step 1: Create a Google Cloud project and enable the APIs

In the Google Cloud Console, create a new project or select an existing one, such as the project from the GA4 setup in Part 2. Go to APIs & Services → Library and enable each of these four APIs:

  • My Business Account Management API
  • My Business Business Information API
  • Business Profile Performance API
  • Google My Business API (the legacy v4 API, which still handles reviews and local posts)

Make a note of your project number, shown on the project’s Dashboard. You’ll need it for the application.

Step 2: Apply for Basic API Access

Open Google’s Business Profile API contact form while signed in with the account that manages your profile. Choose Application for Basic API Access and complete the form, including your project number and business website. Then wait for Google’s reply by email.

To check whether you’ve been approved, go to APIs & Services → Enabled APIs & services, open one of the Business Profile APIs, and look at the Quotas tab. A limit of 0 per minute means you’re still waiting.

Step 3: Set up the OAuth consent screen

  1. Go to APIs & Services → OAuth consent screen and configure it. Choose External as the user type, and enter an app name and your email address.
  2. Under Audience (or Test users), add the Google account that manages your Business Profile.

Note that while an External app is in Testing status, Google expires its refresh tokens after seven days. Once everything works, consider moving the app to In production on the same screen. For an app only you use, you can continue past the “Google hasn’t verified this app” warning.

Step 4: Create an OAuth client

  1. Go to APIs & Services → Credentials → Create credentials → OAuth client ID.
  2. Choose Web application.
  3. Under Authorized redirect URIs, add https://developers.google.com/oauthplayground. You’ll use Google’s OAuth Playground in the next step.
  4. Click Create and copy the Client ID and Client secret. Treat the secret like a password.

Step 5: Get a refresh token

The server needs a refresh token, which lets it request fresh access on your behalf without you signing in each time. The simplest way to get one is Google’s OAuth Playground:

  1. Open the OAuth 2.0 Playground.
  2. Click the gear icon (top right), tick Use your own OAuth credentials, and paste your Client ID and Client secret.
  3. In Step 1 on the left, type https://www.googleapis.com/auth/business.manage into the box and click Authorize APIs.
  4. Sign in with the Google account that manages your profile and approve access.
  5. In Step 2, click Exchange authorization code for tokens.
  6. Copy the Refresh token value.

Step 6: Add the server to Claude

In the Claude desktop app, go to Settings → Developer → Edit Config and add the server inside mcpServers. If you already have servers from earlier parts, add this entry alongside them, separated by a comma:

{
  "mcpServers": {
    "google-business": {
      "command": "npx",
      "args": ["-y", "mcp-google-business@latest"],
      "env": {
        "GOOGLE_BUSINESS_CLIENT_ID": "your_client_id",
        "GOOGLE_BUSINESS_CLIENT_SECRET": "your_client_secret",
        "GOOGLE_BUSINESS_REFRESH_TOKEN": "your_refresh_token"
      }
    }
  }
}

Replace the three values with the ones from Steps 4 and 5. The server sends anonymous usage telemetry (tool names and version, never your credentials or profile data). To turn it off, add "ASKADS_TELEMETRY": "0" to the env section.

WINDOWS & MAC

Windows config file: %APPDATA%\Claude\claude_desktop_config.json
Mac config file: ~/Library/Application Support/Claude/claude_desktop_config.json

Step 7: Restart Claude and test

Save the config, fully quit Claude (from the system tray on Windows, or Cmd+Q on Mac) and reopen it. Then start with a read-only question:

“List my Google Business Profile locations and show the newest reviews that don’t have a reply.”

If you see your listings, you’re connected. If every request fails with a 429 or 403 quota error, your Basic API Access hasn’t been approved yet (see Step 2). Nothing is wrong with your setup.

What we want to achieve with Claude: bulk listing management

These are the workflows I’m setting up once access is approved. I’ll update this section with real results.

Keep listings consistent across locations

  • “Compare the categories, attributes and opening hours across all my locations and flag any that don’t match our standard.”
  • “Set holiday opening hours for 24 to 26 December on every location. Show me the changes first.”

Stay on top of reviews

  • “Find every review from the last 14 days without a reply, across all locations, and draft a reply for each. Don’t publish anything until I’ve approved them.”
  • “Summarise the recurring themes in one- and two-star reviews by location.”

Publish local posts at scale

  • “Draft a local post about our autumn offer, tailored to each location’s town, and show them to me before posting.”

Compare performance between listings

  • “Show calls, direction requests and website clicks for each location over the last 90 days, ranked, and highlight any that have dropped.”
  • “Which search keywords drive impressions for our weakest location compared with our strongest?”

Safeguards: Business Profile changes are public

Everything you change in Business Profile appears on Google Search and Maps straight away, and there’s no undo. The server marks which tools only read data and which change public information, so Claude asks you to confirm before making a change. A few extra habits help:

  • Start every session with read-only questions, and ask Claude to show the exact change before any update.
  • Approve review replies one by one. A new reply replaces any existing owner reply.
  • Be wary of the server’s raw API request tool, which can call any endpoint, including deletes.
  • Remember Google limits each profile to 10 edits per minute, so large bulk updates will take time.

Next up: Part 8 — Using an A/B Testing Platform with Claude via MCP.

2 responses to “Setting Up Google Business Profile MCP for Claude”

Leave a Reply

Your email address will not be published. Required fields are marked *