How to Connect Google Business Profile to ChatGPT & Codex

Aug 3, 2026 by Ahmed Ali

TL;DR Connect Google Business Profile to ChatGPT and Codex for location reports, reviews, posts, hours, photos, and approval-gated profile management.

How to Connect Google Business Profile to ChatGPT & Codex

To connect Google Business Profile to ChatGPT and Codex, authorize your managed locations in Markifact, add Markifact from ChatGPT Plugins, and attach the same plugin in Codex with /apps. The connection can report across locations and manage reviews, posts, hours, profile details, customer questions, and photos. Start with a read-only report, then keep every public or profile change behind an explicit approval.

This guide uses the hosted Google Business Profile MCP inside the wider Markifact MCP platform. You do not need to build a Google Cloud project, maintain Business Profile API credentials, or run a local MCP server.

The quick version

  1. Connect Google Business Profile inside Markifact.
  2. Open Plugins in ChatGPT and search for Markifact.
  3. Add or connect Markifact, then authorize the workspace containing your Business Profile connection.
  4. Attach Markifact to a new ChatGPT conversation.
  5. Select the intended locations and run a read-only performance report.
  6. In Codex, use /apps to attach Markifact separately.
  7. Review and approve every reply, post, hours change, profile update, Q&A answer, or media change before it runs.

The Google authorization lives in Markifact. ChatGPT and Codex are the AI clients that request operations through that managed connection.

What ChatGPT and Codex can do with Google Business Profile

This is a read-and-write connection, not a reporting-only connector. The current operation catalog is grouped below so you can see exactly where analysis ends and account management begins.

Workflow Current operation examples Access
Location discovery and status business_profile_select_accounts, business_profile_get_location_info, business_profile_check_location_status Read
Performance and local search demand business_profile_list_report_fields, business_profile_get_report Read
Reviews and replies business_profile_list_reviews, business_profile_reply_to_review, business_profile_delete_review_reply Read plus approval-gated writes
Posts and offers business_profile_list_posts, business_profile_publish_post, business_profile_update_post, business_profile_delete_post Read plus approval-gated writes
Customer Q&A business_profile_list_questions, business_profile_answer_question Read plus approval-gated write
Hours and profile details business_profile_update_hours, business_profile_update_location Approval-gated writes
Photos and videos business_profile_list_media, business_profile_upload_photo, business_profile_delete_media Read plus approval-gated writes

Reporting currently includes total views, Search views, Maps views, calls, direction requests, website clicks, messages, bookings, food orders, menu clicks, and local search terms where Google makes those fields available.

The write catalog is broad, but it is still controlled. ChatGPT or Codex prepares a specific operation with specific locations and values. Markifact presents the external change for approval before it reaches Google.

Before you connect

You need:

  • A Google account that owns or manages the intended Business Profile locations
  • A Markifact workspace
  • Permission to connect Google Business Profile in that workspace
  • Access to ChatGPT Plugins or Codex apps under your account and workspace policy

Google Business Profile uses OAuth with the business.manage scope. Google's OAuth implementation guide explains the authorization used to access and modify profile data on behalf of the signed-in user.

Use only listings you own or are authorized to manage. Google's Business Profile API policies require prior specific and express consent for automated public changes, including review replies. That policy is one reason the write flow should never be an invisible background action.

1. Connect Google Business Profile in Markifact

Open Connections in Markifact, choose Google Business Profile, and start the Google authorization flow.

Markifact Google Business Profile connection dialog
Connect the Google account that manages the intended Business Profile locations.

Sign in with the Google account that manages the locations you need. Review the consent screen, complete authorization, and return to Markifact.

If you manage several businesses or client accounts, name the saved connection clearly. A useful convention is:

Google Business Profile - Northstar Cafes - UAE

Confirm the connection before opening ChatGPT. The plugin cannot discover a location that the connected Google user cannot access.

2. Find Markifact in ChatGPT Plugins

Open ChatGPT Plugins and search for Markifact. ChatGPT currently labels this directory Plugins, so older screenshots or guides that say Apps may show the previous interface.

Current ChatGPT Plugins directory with Markifact entered in search
Open the current Plugins directory and search for Markifact after signing in.

Sign in if prompted. Open the Markifact listing available to your account and follow the current add or connect flow. Workspace administrators can restrict plugin availability, so a Team or Enterprise user may need an administrator to enable it first.

The approved-plugin route does not require developer mode and does not require you to paste https://api.markifact.com/mcp into ChatGPT. That remote endpoint is used by clients that need a custom MCP URL, such as the separate Claude setup.

When ChatGPT opens the Markifact authorization flow, choose the workspace containing the Google Business Profile connection from step 1. The two authorization layers are separate:

  1. Google authorizes Markifact to access the Business Profile locations.
  2. You authorize ChatGPT to use Markifact for the current account or workspace.

3. Attach Markifact to a ChatGPT conversation

Start a new conversation and select Markifact from the plugin or tool picker. The exact picker label can vary as the ChatGPT interface changes, but the important state is that Markifact is attached before you send the Business Profile request.

ChatGPT composer with Markifact selected for a Business Profile report
Attach Markifact, name the date range and metrics, and make the first request read-only.

Use this first prompt:

Use Markifact and my connected Google Business Profile locations.

List every available location with its name and location ID.
Then compare the last 30 complete days by location.
Include total views, Search views, Maps views, calls,
direction requests, and website clicks.
Sort by total views from highest to lowest.
Do not make any changes.

This gives ChatGPT enough information to select locations and use business_profile_get_report without guessing the account, date range, or metrics.

4. Verify the first location report

The reporting operation supports multiple locations, date presets, fixed ranges, comparisons, filters, sorting, and limits. Google's Business Profile Performance API is the underlying reporting family for profile views and customer actions.

Illustrative Google Business Profile report in ChatGPT using business_profile_get_report
Illustrative multi-location result using the real read-only reporting operation.

Illustrative data. The locations and values are fictional, while the operation and field types are real.

Before acting on the result, check:

  1. Every location belongs to the intended business.
  2. The range contains complete days.
  3. The metrics are available for those locations.
  4. The comparison uses the same length and appropriate weekdays.
  5. Search and Maps totals look plausible against the Business Profile interface.

If you want local search demand, ask for searchTerm and monthlySearches. If you want to relate discovery to on-site behavior, continue in the same workspace with GA4 in ChatGPT and Codex. For paid local campaigns, use the separate Google Ads connection guide.

Use Google Business Profile in Codex with /apps

Codex can use the same Markifact plugin connection, but app enablement and permissions can be separate from a ChatGPT conversation.

In Codex:

  1. Type /apps.
  2. Search for Markifact.
  3. Select it so Codex inserts the app reference into the prompt.
  4. State the locations, intended operation, and whether external writes are allowed.

OpenAI's current Codex command documentation describes /apps as the command for browsing apps and connectors and inserting one as $app-slug.

Codex using Markifact to prepare a Google Business Profile post for approval
Illustrative Codex request with Markifact attached and the external post still waiting for approval.

Codex is especially useful when you want the Business Profile result turned into a local artifact, such as a Markdown report, CSV review queue, or content calendar. Writing a local report file is different from changing Google Business Profile. A post, reply, hours change, profile edit, Q&A answer, upload, or deletion is still an external operation and still needs approval.

Manage reviews without losing control

Start with business_profile_list_reviews. It returns review IDs, locations, star ratings, comments, dates, and reply status. That gives ChatGPT or Codex a precise queue before any public response is drafted.

List reviews from the last 30 days across all selected locations.
Put unanswered one-star and two-star reviews first.
Return location, review ID, rating, comment, date, and reply status.
Draft a response for each, but do not publish anything.

After checking one draft, request the exact write separately:

Prepare business_profile_reply_to_review for review REV-10482
at the Marina location using the approved response below.

[PASTE APPROVED RESPONSE]

Show the exact public text and wait for approval before posting.

Illustrative ChatGPT approval for business_profile_reply_to_review
Confirm the location, review ID, rating, and exact public reply before approving.

Google's reviews resource supports listing reviews and managing the business reply. If a reply already exists, business_profile_reply_to_review replaces it. business_profile_delete_review_reply removes only the business reply, not the customer's review.

Do not approve a response that exposes personal information, invents compensation, argues with the reviewer, or uses a generic answer that ignores the actual complaint.

Publish and manage Business Profile posts

Markifact can list existing posts, publish new ones, update supported fields, and delete posts. business_profile_publish_post supports:

  • Standard updates with whats_new
  • Events with a title and start and end time
  • Offers with event details and optional coupon information
  • Optional public images
  • Calls to action such as Book, Order, Shop, Learn More, Sign Up, and Call where supported
  • Immediate publishing or a scheduled Markifact execution

Draft first:

Draft a Google Business Profile update for Downtown, Marina, and Jumeirah.
Announce the new weekend brunch menu in under 100 words.
Use LEARN_MORE with https://northstar.example/brunch.
Do not publish anything.

Then prepare the write:

Prepare business_profile_publish_post for the three selected locations.
Post type: whats_new.
Use the approved copy and LEARN_MORE URL.
Show every target location, the full text, CTA, URL, and publish time.
Wait for approval.

Google's local post creation method creates a post for a specific location. Multi-location publishing can produce a separate result for each profile, so inspect each returned status rather than assuming one success means every location succeeded.

Update hours and profile details carefully

Full management also includes opening hours and profile fields.

business_profile_update_hours can set regular weekly hours or special holiday hours. The supplied set replaces the existing set of that type, so the payload must include every open day or special date you intend to keep.

Read the current hours for the Downtown location.
Prepare special hours for August 30, 2026: 10:00 to 18:00.
Show the complete special-hours payload and what it will replace.
Do not run the update until I approve it.

business_profile_update_location can update description, phone numbers, website, internal labels, store code, and open status. It also supports advanced Business Profile fields. Changes to a business name, storefront address, or categories can trigger Google re-verification, so inspect the current value first and update one location at a time for location-specific fields.

Use business_profile_get_location_info for Marina.
Compare the current website, phone, description, and open status
with the approved values below. Prepare only the fields that differ.
Show the update mask and wait for approval.

[PASTE APPROVED VALUES]

Manage customer questions and photos

Use business_profile_list_questions to retrieve customer questions before preparing business_profile_answer_question. A new business answer replaces the previous business answer for that question, so confirm the question resource and final public wording.

For media, use business_profile_list_media to audit existing photos and videos. business_profile_upload_photo can add a public JPG or PNG by category, including cover, logo, exterior, interior, product, menu, team, or additional. business_profile_delete_media is permanent and should use the exact media resource returned by the list operation.

List media for every selected location.
Flag locations missing a cover photo or logo photo.
Do not upload or delete anything.

This is also where Google Maps MCP can help with separate public-place and competitor research. Keep competitor research distinct from changes to profiles you manage.

Copy-paste prompts for ChatGPT and Codex

Monthly location comparison

Compare the last complete month with the previous complete month
for every selected Business Profile location.
Include Search views, Maps views, calls, directions, and website clicks.
Rank locations by the absolute change in total actions.
Explain only what the returned data supports. Do not make changes.

Local search-term opportunities

Use business_profile_get_report with searchTerm and monthlySearches.
Return the top 30 terms by location for the last complete month.
Group similar intent and flag terms that suggest missing website content.
Do not change any profile.

Profile consistency audit

Retrieve location information for every selected profile.
Compare primary category, website, phone, hours, rating, and review count.
Flag missing or inconsistent values.
Prepare a proposed correction table, but do not update Google.

Holiday-hours preparation

Read the current hours for all selected locations.
Prepare special hours for the approved holiday schedule below.
Return one complete payload per location and identify every existing value
that would be replaced. Wait for approval before any update.

[PASTE APPROVED HOLIDAY SCHEDULE]

Review-response queue

List unanswered reviews from the last 14 days.
Put one-star and two-star reviews first.
Draft a concise response for each based only on the review text.
Return review ID, location, rating, original comment, and draft.
Do not publish replies.

Understand the permission and approval layers

There are four boundaries to keep clear:

  1. Google OAuth: the connected Google user determines which Business Profile locations Markifact can access.
  2. Markifact workspace scope: the selected workspace and saved connection determine which business the plugin can reach.
  3. ChatGPT or Codex plugin access: each client can require separate enablement and permission review.
  4. Operation approval: every external write waits for explicit approval with its exact target and payload.

Use separate workspaces or connections for unrelated clients. Name locations in every write prompt. Read the payload as if it were already public before you approve it.

For destructive operations, add an extra check. Deleting a post or media item is permanent. Replacing hours can remove omitted periods. Changing a name, address, or category can trigger re-verification. Approval is the last checkpoint, not a substitute for inspecting current state first.

Troubleshooting

Markifact does not appear in ChatGPT Plugins

Sign in, confirm that Plugins are available to your account, and search the current directory rather than using an old /apps link. Team and Enterprise administrators can restrict plugin availability. Ask the workspace administrator to enable Markifact if the listing is hidden.

ChatGPT is connected but no Business Profile locations appear

Check the Google Business Profile connection inside Markifact. Confirm that the Google user manages those locations and that you authorized the correct Markifact workspace. Reconnect Google if its authorization has expired.

Codex does not show Markifact under /apps

Confirm that the plugin is installed or available to the same ChatGPT account, then check Codex app enablement separately. Do not assume that attaching Markifact in one ChatGPT conversation automatically attaches it in Codex.

The report is empty or a metric is missing

List the available report fields first, verify the date range, and test one location. Some metrics depend on profile type, customer activity, and Google's data availability.

A write operation is missing

Refresh the Markifact plugin or connector metadata, confirm the workspace and operation scope, and verify that your user has permission to perform that Business Profile action. Do not substitute a different operation name.

The approval shows the wrong location

Cancel it. Restate the exact location name and location ID, retrieve current state again, and prepare a new payload. Never approve a multi-location write based only on a brand name.

A post or photo fails for one location

Inspect the result for that location. Check the public image URL, dimensions, post type, CTA, language, and location eligibility. Treat multi-location results individually.

A practical first workflow

The safest first session is a complete read-to-write loop with one low-risk change:

  1. List every accessible location.
  2. Run a 30-day performance report.
  3. Retrieve profile details and unanswered reviews.
  4. Draft replies without publishing.
  5. Choose one review and verify its ID and location.
  6. Approve one carefully checked reply.
  7. Retrieve the review again and confirm the public reply.

That sequence proves account selection, reporting, review discovery, approval, execution, and verification without beginning with a broad multi-location edit.

Frequently asked questions

Can ChatGPT connect to Google Business Profile?

Yes. Connect Google Business Profile to Markifact with Google OAuth, then add Markifact from ChatGPT Plugins and authorize the same workspace. ChatGPT can request both reporting and approval-gated management operations.

Can Codex access Google Business Profile?

Yes. Use /apps in Codex to attach Markifact, then reference it as $markifact in the prompt. Codex can use the same Markifact Business Profile connection, although its app enablement and permissions can be separate from ChatGPT.

Can ChatGPT reply to Google reviews?

Yes. business_profile_list_reviews retrieves review IDs and reply status. business_profile_reply_to_review posts or replaces the business reply after you approve the exact location, review ID, and public text.

Can ChatGPT publish Google Business Profile posts?

Yes. business_profile_publish_post supports standard updates, events, and offers with optional images and eligible calls to action. Publishing is an approval-gated external write.

Can ChatGPT update opening hours and profile details?

Yes. Markifact exposes approval-gated operations for regular and special hours plus supported profile fields. Hours payloads can replace an entire set, and changes to names, addresses, or categories can trigger re-verification, so inspect current values first.

Do I need a Google Cloud project?

No. Markifact manages the hosted Google OAuth and Business Profile API integration. A direct self-hosted integration would require Google Cloud configuration, credentials, secure token storage, API access, and ongoing maintenance.

Does Google offer an official Google Business Profile MCP server?

Google documents the Business Profile APIs, but it does not currently list an official Google Business Profile MCP server. Markifact provides a managed MCP and plugin layer over the relevant Google APIs.

Is it safe to let ChatGPT manage a Business Profile?

The safe setup is scoped and approval-driven. Use the correct Google login, separate client workspaces or connections, start with read-only reports, inspect current state before edits, and approve only exact external payloads you understand.

Looking to automate your marketing?

Markifact is a no-code platform that allows you to automate your marketing workflows seamlessly. With Markifact, you can create workflows that connect your favorite marketing tools and automate repetitive tasks, saving you time and effort.

Start Automating your Marketing