Connectors · MSP & PSA
Google Business Profile MCP server for AI agents.
actionlake is an MCP gateway: one remote MCP server that connects Claude and other MCP clients to Google Business Profile and the rest of your systems. It gives your agent 74 Google Business Profile actions (40 reads, 24 writes and 10 that wait for a confirmation) and holds the Google Business Profile credential itself, so the agent never does. It paces Google Business Profile's limits and records every call. Connecting Google Business Profile needs your own Google Business Profile OAuth app and one admin sign-in.
100,000 free calls a month. No card, no email, no password: press Start a free sandbox on the next screen and keep the key it shows you.
claude mcp add --transport http actionlake https://connect.actionlake.com/mcpdo { action: "google_business_profile.accounts.list", intent: "check which Google Business Profile account is connected"}# List Business Profile accounts · read · 1 upstream call- 74actionsin one signed file
- 40readlook, never change
- 24writecreate and update
- 10wait for a yesdestructive, confirmed first
Set up
Connect Google Business Profile in three steps.
- 01
Add actionlake to Claude.
Run the command once in Claude Code; its consent page can create a free sandbox: 100,000 calls a month, no card. In the Claude app, add a custom connector with the URL below and paste your key on the consent page. Creating a new sandbox from the Claude app is not yet tested by us.
https://connect.actionlake.com/mcp - 02
Connect Google Business Profile.
OAuth 2.0, authorization code with PKCE. You register your own OAuth app with Google Business Profile, an admin signs in once, and you paste the app's client id and secret and the tokens from that sign-in; actionlake renews the access token from then on. actionlake stores what you paste write-only, sealed under your tenant's key.
Before the first sign-in, Google Business Profile needs an OAuth app of your own, registered in its developer portal. actionlake has no Google Business Profile app to lend you.
access_tokenAccess token from one sign-in with your own OAuth apprefresh_tokenRefresh token from the same sign-in; the access token is renewed from itclient_idGoogle OAuth client id (Google Cloud console > APIs & Services > Credentials; the project must be approved for…client_secretGoogle OAuth client secret
account { op: "connections.requirements", service: "google_business_profile" } # free: exactly what to paste, and what is found for you - 03
Make the first call. Check before a write.
Ask in plain words; Claude picks the action. Before anything changes,
checkvalidates the call and prices it, for free.do { action: "google_business_profile.accounts.list" }# list business profile accounts · read · 1 upstream callcheck { action: "google_business_profile.locations.create", input: { … } }# free: inputs, permissions, cost and confirmations, nothing sent
Google Business Profile at a glance
- Sign-in
- OAuth 2.0, authorization code with PKCE. You register your own OAuth app with Google Business Profile, an admin signs in once, and you paste the app's client id and secret and the tokens from that sign-in; actionlake renews the access token from then on.
- You provide
access_tokenrefresh_tokenclient_idclient_secret- Limits we pace to
- 300 calls a minute, per connection
- API covered
- Google Business Profile (locations, reviews, local posts, media, performance) API Business Profile APIs v1 (account management, business information, lodging, notifications, place actions, verifications, performance) + Google My Business v4.9
mybusinessbusinessinformation.googleapis.com - Built from
- Google Business Profile's documentation, read 23 October 2026mybusinessbusinessinformation.googleapis.commybusinessaccountmanagement.googleapis.combusinessprofileperformance.googleapis.com
- Service file
- Version 1.0.0, signed (Ed25519)
- Cached reads
- 40 of 40 reads, for up to an hour; a write clears what it affects
- Shared entities
- 1, so ask can line Google Business Profile up with your other systems
- Data
- Processed and stored in Sydney, Australia. No US region yet
Capabilities
What an AI agent can do in Google Business Profile.
74 actions in 23 areas. Every one carries its effect, so a key can allow the reads and hold the rest.
- 40readlook, never change
- 24writecreate and update
- 10destructivewait for a confirmation
Locations
73 read · 2 write · 2 destructive
List locations in an account · Create a location · Get a location · Update a location
Media
62 read · 3 write · 1 destructive
Add a photo or video from a URL or upload reference · List a location's media items · Start a media upload (get a data reference) · Get a media item
Local posts
52 read · 2 write · 1 destructive
Create a local post (update, event or offer) · List local posts for a location · Update a local post · Get a local post
Place action links
52 read · 2 write · 1 destructive
Create a place action link · List place action links for a location · Get a place action link · Update a place action link
Reviews
53 read · 1 write · 1 destructive
Get reviews across several locations · List reviews for a location · Get a review · Delete the reply to a review
Verifications
53 read · 2 write · 0 destructive
Fetch verification options for a location · List verifications of a location · Start verification of a location · Complete a pending verification
Account admins
41 read · 1 write · 2 destructive
Invite an account admin · List account admins · Update an account admin's role · Remove an account admin
Accounts
42 read · 2 write · 0 destructive
Create a location group account · List Business Profile accounts · Get a Business Profile account · Update a Business Profile account
15 more areas · 33 actions
- Location admins 4
- Google locations 3
- Invitations 3
- Location attributes 3
- Lodging 3
- Performance 3
- Categories 2
- Chains 2
- Customer media 2
- Food menus 2
- Notification settings 2
- Attributes 1
- Followers 1
- Place action types 1
- Verification tokens 1
Top actions
The Google Business Profile API, shaped for agents.
The ids your agent types, what each does, and the one name it shares with other systems. 10 of Google Business Profile's 10 action names are shared with at least one other connector, so an agent learns them once.
| Action | What it does | Effect | Same name in |
|---|---|---|---|
google_business_profile.locations.listList locations in an account | Lists the locations for the specified account. | read | crm.location.list48 connectors |
google_business_profile.locations.createCreate a location | Creates a new Location that will be owned by the logged in user. | write | crm.location.create41 connectors |
google_business_profile.locations.deleteDelete a location | Deletes a location. | destructive | crm.location.delete31 connectors |
google_business_profile.local_posts.createCreate a local post (update, event or offer) | Creates a new local post associated with the specified location, and returns it. | write | comm.social_post.create11 connectors |
google_business_profile.local_posts.listList local posts for a location | Returns a list of local posts associated with a location. | read | comm.social_post.list9 connectors |
google_business_profile.media.listList a location's media items | Returns a list of media items associated with a location. | read | this connector |
google_business_profile.media.createAdd a photo or video from a URL or upload reference | Creates a new media item for the location. | write | this connector |
google_business_profile.reviews.listList reviews for a location | Returns the paginated list of reviews for the specified location. | read | this connector |
google_business_profile.accounts.listList Business Profile accounts | Lists all of the accounts for the authenticated user. | read | this connector |
google_business_profile.chains.searchSearch business chains by name | Searches the chain based on chain name. | read | this connector |
google_business_profile.accounts.createCreate a location group account | Creates an account with the specified name and type under the given parent. | write | this connector |
google_business_profile.attributes.listList available attributes for a category or location | Returns the list of attributes that would be available for a location with the given primary category and country. | read | this connector |
Try it
Prompts to paste into Claude.
Each one names the Google Business Profile actions it will call, so you know what it reads and what it changes before you send it.
- Readread
List Business Profile accounts in Google Business Profile and tell me what stands out.
calls
google_business_profile.accounts.list - Writewrite
Create a location in Google Business Profile. Show me exactly what you will send before you save it.
calls
google_business_profile.locations.create
Governance for Google Business Profile
Destructive actions wait for a yes.
10 Google Business Profile actions are destructive. These are all of them:
- Delete a location
google_business_profile.locations.delete - Delete a local post
google_business_profile.local_posts.delete - Invite an account admin
google_business_profile.account_admins.create - Invite a location admin
google_business_profile.location_admins.create - Transfer a location to another account
google_business_profile.locations.transfer - Delete a media item
google_business_profile.media.delete - Delete the reply to a review
google_business_profile.reviews.delete_reply - Remove an account admin
google_business_profile.account_admins.delete - Remove a location admin
google_business_profile.location_admins.delete - Delete a place action link
google_business_profile.place_action_links.delete
A destructive action runs only with confirm: true. Under the human policy the agent cannot confirm for itself: the run stops until a named person approves, in the console or from a signed link in an email. The cap on a key is refused before the call is sent, never after.
Delete a location?
intent: the user asked me to delete a location
account { op: "keys.create", name: "google-business-profile-agent", allowed_actions: ["google_business_profile.*"], cap_calls: 2000, confirm_policy: "human_for_writes", approval_rules: [ { match: "google_business_profile.locations.delete", approver: "[email protected]" }, { match: "google_business_profile.local_posts.delete", approver: "[email protected]" }, { match: "google_business_profile.account_admins.create", approver: "[email protected]" } ]}Cost
What Google Business Profile costs on actionlake.
Every Google Business Profile action is one upstream call, the only thing actionlake bills. Searching, check, cost, account and any call Google Business Profile refused with 401, 403, 429 or a 5xx are free. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
- 1upstream call per actionall 74 Google Business Profile actions
- 74actions pageeach page of a long list is one call
- 40reads can be cacheda cache hit costs nothing
- 100,000calls a month, freepaid plans from US$49 a month for 250,000
Action index
Every Google Business Profile action.
74 actions by area: the id your agent calls, what it does, and its effect.
Locations7
google_business_profile.locations.createCreate a locationwritegoogle_business_profile.locations.deleteDelete a locationdestructivegoogle_business_profile.locations.getGet a locationreadgoogle_business_profile.locations.get_google_updatedGet the Google-updated version of a locationreadgoogle_business_profile.locations.listList locations in an accountreadgoogle_business_profile.locations.transferTransfer a location to another accountdestructivegoogle_business_profile.locations.updateUpdate a locationwrite
Media6
google_business_profile.media.createAdd a photo or video from a URL or upload referencewritegoogle_business_profile.media.deleteDelete a media itemdestructivegoogle_business_profile.media.getGet a media itemreadgoogle_business_profile.media.listList a location's media itemsreadgoogle_business_profile.media.start_uploadStart a media upload (get a data reference)writegoogle_business_profile.media.updateUpdate a media item's category or positionwrite
Local posts5
google_business_profile.local_posts.createCreate a local post (update, event or offer)writegoogle_business_profile.local_posts.deleteDelete a local postdestructivegoogle_business_profile.local_posts.getGet a local postreadgoogle_business_profile.local_posts.listList local posts for a locationreadgoogle_business_profile.local_posts.updateUpdate a local postwrite
Place action links5
google_business_profile.place_action_links.createCreate a place action linkwritegoogle_business_profile.place_action_links.deleteDelete a place action linkdestructivegoogle_business_profile.place_action_links.getGet a place action linkreadgoogle_business_profile.place_action_links.listList place action links for a locationreadgoogle_business_profile.place_action_links.updateUpdate a place action linkwrite
Reviews5
google_business_profile.reviews.batch_getGet reviews across several locationsreadgoogle_business_profile.reviews.delete_replyDelete the reply to a reviewdestructivegoogle_business_profile.reviews.getGet a reviewreadgoogle_business_profile.reviews.listList reviews for a locationreadgoogle_business_profile.reviews.replyReply to a review (create or update the reply)write
Verifications5
google_business_profile.verifications.completeComplete a pending verificationwritegoogle_business_profile.verifications.fetch_optionsFetch verification options for a locationreadgoogle_business_profile.verifications.get_voice_of_merchant_stateGet a location's Voice of Merchant statereadgoogle_business_profile.verifications.listList verifications of a locationreadgoogle_business_profile.verifications.verifyStart verification of a locationwrite
Account admins4
google_business_profile.account_admins.createInvite an account admindestructivegoogle_business_profile.account_admins.deleteRemove an account admindestructivegoogle_business_profile.account_admins.listList account adminsreadgoogle_business_profile.account_admins.updateUpdate an account admin's rolewrite
Accounts4
google_business_profile.accounts.createCreate a location group accountwritegoogle_business_profile.accounts.getGet a Business Profile accountreadgoogle_business_profile.accounts.listList Business Profile accountsreadgoogle_business_profile.accounts.updateUpdate a Business Profile accountwrite
Location admins4
google_business_profile.location_admins.createInvite a location admindestructivegoogle_business_profile.location_admins.deleteRemove a location admindestructivegoogle_business_profile.location_admins.listList location adminsreadgoogle_business_profile.location_admins.updateUpdate a location admin's rolewrite
Google locations3
google_business_profile.google_locations.list_recommendedList Google locations recommended for an accountreadgoogle_business_profile.google_locations.reportReport a problem with a Google locationwritegoogle_business_profile.google_locations.searchSearch Google Maps for matching locationsread
Invitations3
google_business_profile.invitations.acceptAccept an invitationwritegoogle_business_profile.invitations.declineDecline an invitationwritegoogle_business_profile.invitations.listList pending invitations for an accountread
Location attributes3
google_business_profile.location_attributes.getGet a location's attributesreadgoogle_business_profile.location_attributes.get_google_updatedGet the Google-updated attributes of a locationreadgoogle_business_profile.location_attributes.updateUpdate a location's attributeswrite
Lodging3
google_business_profile.lodging.getGet a hotel location's lodging attributesreadgoogle_business_profile.lodging.get_google_updatedGet the Google-updated lodging attributesreadgoogle_business_profile.lodging.updateUpdate a hotel location's lodging attributeswrite
Performance3
google_business_profile.performance.fetch_multi_daily_metricsFetch daily metric time series for a locationreadgoogle_business_profile.performance.get_daily_metricsGet one daily metric time series for a locationreadgoogle_business_profile.performance.search_keywords_monthlyList monthly search keyword impressionsread
Categories2
google_business_profile.categories.batch_getGet business categories by namereadgoogle_business_profile.categories.listList business categoriesread
Chains2
google_business_profile.chains.getGet a business chainreadgoogle_business_profile.chains.searchSearch business chains by nameread
Customer media2
google_business_profile.customer_media.getGet a customer-contributed media itemreadgoogle_business_profile.customer_media.listList customer-contributed mediaread
Food menus2
google_business_profile.food_menus.getGet a location's food menusreadgoogle_business_profile.food_menus.updateUpdate a location's food menuswrite
Notification settings2
google_business_profile.notification_settings.getGet an account's Pub/Sub notification settingreadgoogle_business_profile.notification_settings.updateUpdate an account's Pub/Sub notification settingwrite
Attributes1
google_business_profile.attributes.listList available attributes for a category or locationread
Followers1
google_business_profile.followers.get_metadataGet a location's follower countread
Place action types1
google_business_profile.place_action_types.listList available place action typesread
Verification tokens1
google_business_profile.verification_tokens.generateGenerate a verification token (trusted partners)write
Questions
The Google Business Profile MCP server, answered.
Is there a Google Business Profile MCP server for Claude?
Yes. actionlake is an MCP gateway: a remote MCP server that gives Claude, or another MCP client, 74 Google Business Profile actions across locations, media, local posts and place action links, through the same eight tools it uses for every other connector. actionlake is independent; it is not made or endorsed by Google Business Profile.
What do I need to connect Google Business Profile?
Your own Google Business Profile OAuth app, registered with Google Business Profile (its client id and client secret), and the access and refresh tokens from one admin sign-in. actionlake has no Google Business Profile app of its own, so this is not a one-step consent. actionlake renews the access token as it expires. The free call account { op: "connections.requirements", service: "google_business_profile" } lists exactly what to paste.
Can an AI agent delete or change things in Google Business Profile?
Only if its key allows it, and only with an explicit confirmation. 10 Google Business Profile actions are destructive, including delete a location, delete a local post and invite an account admin. Each runs only with confirm: true. Under the human confirm policy, or an approval rule on the key, the run waits until a named person approves it.
Will an AI agent use up my Google Business Profile API limit?
actionlake paces every call to the limits in the Google Business Profile service file: 300 calls a minute per connection. Repeated reads are answered from cache (40 Google Business Profile actions can be), which never reaches Google Business Profile.
What does a Google Business Profile action cost?
One upstream call, the only unit actionlake bills. A list that pages bills one call per page (74 Google Business Profile actions page). Cache hits, searches, dry runs and calls Google Business Profile refused with 401, 403, 429 or a 5xx are free. The Free plan includes 100,000 calls a month with no card. Paid plans start at US$49 a month for 250,000 calls, with overage from US$0.30 down to US$0.18 per 1,000.
Which Google Business Profile API does it cover?
The Google Business Profile (locations, reviews, local posts, media, performance) API Business Profile APIs v1 (account management, business information, lodging, notifications, place actions, verifications, performance) + Google My Business v4.9 at mybusinessbusinessinformation.googleapis.com. It is built from Google Business Profile's documentation as read on 23 October 2026. 74 actions in 23 areas, each one in the signed service file (version 1.0.0).
Does actionlake keep my Google Business Profile data, and where?
actionlake processes and stores data in Sydney, Australia; there is no US region yet. Reads may be cached for up to an hour, and a write clears the reads it affects. Each run's request and response is kept, sealed, for your plan's trace window: 1 day on Free, 3 days on Starter, 7 days on Pro, 14 days on Team, 30 days on Business and 30 days on Enterprise. Your Google Business Profile credential is sealed under your tenant's key, never logged and never returned. Your traffic is not used to train models.
Which AI clients can use it?
Claude Code, tested by us end to end, and the Claude app as a custom connector, tested by us with an existing key. Other MCP clients that support remote servers over Streamable HTTP (MCP revisions 2025-06-18 and 2025-11-25) and OAuth dynamic client registration, or a bearer header, should connect the same way; we have not tested them. Or plain REST, under the same action names.
Give your agent Google Business Profile today.
Start free - 100,000 calls/month, no card. No signup. Hard caps on every key. Cached answers are free.