Manage your Google Business Profile, business information and customer engagement. Update listings, publish content, monitor reviews and maintain your local presence across Google services.
Claude Code is Anthropic's coding agent for the terminal. You add MCP servers with one command and approve access in the browser.
This guide connects Google Business to Claude Code through MewCP, so Claude Code can use Google Business's 35 tools, like list_locations, create_location and get_location, without your Google Business credentials ever reaching the app.
Google Business signs in through managed OAuth. MewCP stores the token encrypted, refreshes it before it expires and injects it only at call time. Your agent never holds it, so it can never leak it.
More apps
Full Google Search Console control for search analytics, sitemaps, sites, and URL inspection, directly from your AI workflows. This MCP server exposes the Google Search Console API for querying search traffic data, managing sitemaps and site properties, and inspecting the indexing status of any URL. It is built for SEO teams monitoring search performance, developers automating sitemap and property management, and analysts pulling search traffic data into reporting pipelines.
Brevo's marketing and CRM platform — manage contacts, lists and segments, send transactional and campaign email, run SMS and WhatsApp campaigns, and track deals and companies
Meta Ads connects AI agents to Facebook and Instagram advertising accounts to analyze campaign performance, create and edit campaigns, ad sets and creatives, manage custom audiences and product catalogs, inspect conversion tracking signals, run A/B tests, and investigate advertising issues.
HubSpot connects AI agents to CRM data and business workflows, enabling them to search and manage contacts, companies, deals, tickets, and engagement records, and access HubSpot tools through its remote MCP server.
Other clients
Google Business works the same way in every client below. Pick yours for its own guide.
Free to start.
Scope access to the exact Google Business tools and accounts you allow, work and personal side by side. Anything outside that scope is refused at call time, even when the model asks for it.
Each call is logged: what ran, on which account, and whether it worked. Failures come back structured, so the agent knows whether to retry instead of guessing.
Every app sits behind one secure MCP URL, and there is no server for you to deploy or keep running. Add an integration in the dashboard and it is live on the next call, with no config to change and no new credentials to wire up. Tools load only when a task needs them, so your agent stays fast and focused however many apps you connect.
Start Claude Code, run /mcp, pick the server and choose Authenticate. Approve access in the browser.
Start a new chat and ask: "List the tools you can use from MewCP." You should see your connected apps.
Lists the locations for the specified account, optionally filtered and sorted, and returns the matching Location objects with pagination info.
Creates a new Location that will be owned by the logged-in user, and returns the newly created Location. A newly created location is unverified and not publicly visible on Google Search or Maps until it is verified.
Returns the specified location as last set by the merchant; may not reflect updates from Google or user-generated content live on Google Maps.
Updates the specified location's fields per the given update mask, and returns the updated Location. Only the fields you provide are changed — others keep their current value. NOTE: this overwrites the current field values — the original state is not stored after the call. The response includes both the before and after state so you have a full record of what changed.
DESTRUCTIVE — REQUIRES EXPLICIT USER CONFIRMATION BEFORE CALLING. Permanently deletes the location. This action is irreversible — the location and its data cannot be recovered via this API (the Google Business Profile website may offer other recovery paths). NEVER call this tool autonomously or as part of an automated flow. You MUST stop, tell the user exactly what will be deleted and that it is permanent, and wait for their explicit written confirmation before proceeding.
Returns the specified location as it appears live on Google Maps and Search, which may differ from the merchant's version, along with masks of what Google changed and what's still pending.
Retrieves attributes for a location as last set by the merchant.
Updates attributes for a given location per the given attribute mask, and returns the updated Attributes. Only the fields you provide are changed — others keep their current value. NOTE: this overwrites the current field values — the original state is not stored after the call. The response includes both the before and after state so you have a full record of what changed.
Retrieves attributes for a location as they appear live on Google Maps and Search, which may differ from the merchant's version.
Gets the specified chain, returning NOT_FOUND if the chain does not exist.
Searches for a chain based on chain name and returns the list of matching chains.
Returns a list of business categories matched by the front of the category name (e.g. 'food' matches 'Food Court' but not 'Fast Food Restaurant').
Returns a list of business categories for the provided language and category (GConcept) IDs.
Returns the list of attributes that would be available for a location with the given primary category and country. Provide exactly one of: `parent` (the resource name of an existing location), OR `category_name` together with `region_code` and `language_code`. Set `show_all` to true to get metadata for all available attributes regardless of `parent`/`category_name` — in that case `region_code` and `language_code` are required. Use `page_token` from a previous response to page through results.
Searches all of the possible locations on Google that are a match to the specified request and returns the matching GoogleLocation entries. Exactly one of `location` or `query` must be provided.
Returns the values for each date in a given time range for a single specified daily metric. Only daily data is available; hourly metrics are not supported.
Returns the values for each date in a given time range for multiple specified daily metrics at once. Only daily data is available; hourly metrics are not supported.
Returns the search keywords used to find a business in Search or Maps, each accompanied by impression counts aggregated on a monthly basis.
Lists the accounts the authenticated user owns or has management rights to (or, with parent_account, the accounts directly accessible from an Organization or User Group), and returns the Account objects with a next-page token. The user's personal account is always the first item unless filtered out, and `type` is the only supported filter field.
Returns the specified account, including its name, type, role, permission level, verification and vetted state, and organization info for organization accounts. If the account does not exist or the caller has no access rights to it, the call fails with statusCode 404 and error code UPSTREAM_ERROR.
Creates an account of the given type and primary owner, and returns the new Account. Personal accounts and Organizations cannot be created; User Groups cannot have a Personal account as primary owner; Location Groups cannot have as primary owner a Personal account that belongs to an Organization, and cannot be owned by another Location Group.
Updates the specified business account's accountName (the only editable field) and returns the updated Account; Personal accounts cannot be updated. Only the fields you provide are changed — others keep their current value. NOTE: this overwrites the current field values — the original state is not stored after the call. The response includes both the before and after state so you have a full record of what changed.
Lists the admins of the specified account and returns each admin's resource name, name (or invitee email while pending), role, and whether their invitation is still pending. Personal accounts have no admins: Google rejects them with statusCode 400 ("A PERSON_ACCOUNT cannot have admins"); use list_location_admins for a location's admins.
Lists the pending invitations for the specified account (at most 1000), optionally filtered by target type, and returns each invitation's resource name, invited role, target type, and target account or location.
Lists all admins of the specified location and returns each admin's resource name, name (or invitee email while pending), role, and whether their invitation is still pending.
Lists the local posts (updates, events, offers) of a location and returns the LocalPost objects with a next-page token. Takes the v4 location name accounts/{accountId}/locations/{locationId}, not the locations/{locationId} form the other location tools use.
Returns the specified local post, including its summary, topic type, call to action, event and offer details, media, state (LIVE, PROCESSING, REJECTED) and Google Search link. Fails with statusCode 404 if the post does not exist.
Creates a local post on the specified location and returns the new LocalPost. EVENT and OFFER posts require event (title and a full schedule), offer should only be set on OFFER posts, call_to_action has no effect on OFFER posts, and ALERT posts can be unavailable for authoring.
Updates the fields of the specified local post named in the update mask, and returns the updated LocalPost. Only the fields you provide are changed — others keep their current value. NOTE: this overwrites the current field values — the original state is not stored after the call. The response includes both the before and after state so you have a full record of what changed.
DESTRUCTIVE — REQUIRES EXPLICIT USER CONFIRMATION BEFORE CALLING. Permanently deletes the local post from the location's Business Profile. This action is irreversible — the post cannot be recovered. NEVER call this tool autonomously or as part of an automated flow. You MUST stop, tell the user exactly what will be deleted and that it is permanent, and wait for their explicit written confirmation before proceeding.
Lists the customer reviews of a verified location and returns the reviews (reviewer, star rating, comment, owner reply) together with the location's average rating, total review count and a next-page token. Takes the v4 location name accounts/{accountId}/locations/{locationId}, not the locations/{locationId} form the other location tools use; unverified locations fail upstream.
Returns the specified review of a verified location, including the reviewer, star rating, comment, media and the owner's reply text. Google does not return the reply's reviewReplyState or policyViolation from this endpoint (they come back null); use list_reviews or batch_get_reviews to see whether a reply is APPROVED, PENDING or REJECTED. Fails with statusCode 404 if the review does not exist or has been deleted.
Returns one paginated list of reviews across up to 50 verified locations of an account, each review paired with its location name, plus a next-page token.
Sets the owner's public reply to the specified review of a verified location, creating the reply if none exists, and returns the saved reply text and time. The returned reviewReplyState is null because Google does not report moderation state here; call list_reviews or batch_get_reviews afterwards to see whether the reply is APPROVED, PENDING or REJECTED with a policy violation. Google's Business Profile API policies prohibit automating or triggering review replies without the business owner's prior specific and express consent, and replies must follow Google's prohibited and restricted content policies. Read the review first, write a reply specific to what the reviewer said, show the draft to the user and post it only once they approve it. Generic or copy-pasted replies across many reviews can be rejected (e.g. REPETITIVE or GENERIC_QUALITY). NOTE: this overwrites the current reply — the original state is not stored after the call. The response includes both the before and after state so you have a full record of what changed.
DESTRUCTIVE — REQUIRES EXPLICIT USER CONFIRMATION BEFORE CALLING. Permanently deletes the owner's reply to the specified review of a verified location; the review itself stays. This action is irreversible — the reply text cannot be recovered. NEVER call this tool autonomously or as part of an automated flow. You MUST stop, tell the user exactly what will be deleted and that it is permanent, and wait for their explicit written confirmation before proceeding.