How to Connect ChatGPT to Google and Meta Ad Accounts With MCP

To connect ChatGPT to ad-account data through MCP, add a trusted remote MCP connection, complete OAuth, ensure the relevant workspace memberships have enabled per-platform Read permission, select workspace/platform/account on each call, and verify the first response against the native platform. Adstudio's public MCP is currently read-only and supports Google Ads and Meta Ads. It is designed to help ChatGPT understand reachable workspace integrations and compare channels; it cannot change campaigns.

Before you connect

You need access to the relevant Google Ads or Meta Ads account, an MCP-capable ChatGPT experience, and permission to authorize a third-party connection for that account. Identify the workspace memberships and platform Read permissions that should be in scope first. The connection can reach every workspace you belong to; account scope is made explicit by selecting workspace, platform, and account on each call.

Read the ChatGPT MCP setup page and Adstudio MCP connection page for the current endpoint and supported connection details. The connection uses OAuth, current workspace memberships, and enabled per-platform Read permissions. Do not paste API tokens into a chat message, and do not assume that an account visible in your platform login is selected for the MCP connection until the call names its workspace, platform, and account. For a useful comparison point, Google documents its own official read-only Google Ads MCP server and its discovery, query, and metadata scope.

A safe setup sequence

  1. Add the Adstudio MCP connection in the ChatGPT client using the current endpoint shown on the hub.
  2. Follow the OAuth screen and review the enabled platform Read permissions and role for each workspace membership.
  3. Return to ChatGPT and ask it to run list_accounts to discover active workspace integrations before asking for metrics.
  4. Select one account by platform and account ID, then run a small date-bounded query.
  5. Compare that result with Google Ads or Meta Ads Manager and only then expand the analysis.

Use this first prompt:

“Call the account-discovery tool. List the active workspace integrations reachable through my current workspace memberships and enabled per-platform Read permission. Show platform, account ID, account name, currency if available, and any limits. Do not infer or select an account for me.”

Then test one account:

“For [platform and account ID], return campaign-level spend, clicks, conversions, and CPA for the last complete calendar week. Include the exact dates, currency, source account, and any attribution or freshness notes. Return the data before summarizing it.”

The point of these prompts is not ceremony. Account choice and source context are what keep a plausible answer from becoming a wrong client report.

Prompts that work well in ChatGPT

For a Google-only review:

“Using only the selected Google Ads account, compare the last 14 complete days with the preceding 14 days. Rank campaigns by change in CPA and show spend and conversions for both periods. Flag low-volume comparisons instead of drawing a conclusion.”

For Meta:

“Using only the selected Meta Ads account, find ad sets where spend rose but purchase volume fell over the last two complete weeks. Show daily values, campaign and ad-set names, and the fields returned by the source.”

For a cross-channel review:

“Query the selected Google Ads and Meta Ads accounts separately for the same complete dates. Preserve account, currency, attribution, and source labels. Compare patterns only after the separate tables; do not add unlike conversion definitions into one blended CPA.”

For provenance:

“For every number in your summary, state the platform, account ID, date range, metric field, currency, and whether the value is direct or calculated. If you cannot provide that context, say the number is unavailable.”

ChatGPT can reason over returned data, but the server determines what data is available. Ask it to show the evidence when the result affects a budget or client decision.

Common failures and fixes

No accounts appear. Confirm that the signed-in identity is a member of the intended workspace, has the platform Read permission allowed by its role, and select the intended workspace, platform, and account in the call. Refresh the connection after a permission change if the client has not updated its OAuth session.

The client cannot reach the server. Check that the MCP endpoint was copied from the current hub page, that the ChatGPT experience supports remote MCP connections, and that the OAuth flow completed in the same browser identity. A local network policy can also block a remote connection.

The answer is empty. Narrow the dates, select a concrete account ID, and ask which fields or breakdowns were unavailable. An empty result is not evidence that spend was zero.

The numbers do not match Ads Manager. Compare date boundaries, timezone, currency, attribution window, conversion action, and reporting freshness. Ask for the raw returned rows and calculated deltas before treating it as a bug.

ChatGPT proposes a change. The public Adstudio MCP is read-only. Treat any recommendation as analysis to review elsewhere; it cannot pause a campaign or edit a budget through these tools.

What this connection does not cover

The public service currently supports Google Ads and Meta Ads. It does not make TikTok Ads, OpenAI Ads, DV360, or other Adstudio integrations MCP-supported. It is also not a replacement for platform billing, policy appeals, creative upload, or campaign mutation.

For Claude's equivalent workflow, see how to connect Claude. For the underlying choice between read and write access, read read-only versus write MCP. If you want the protocol explained without setup steps, start with the ad-platform MCP explainer.

Bottom line

Connect ChatGPT only to accounts you mean to share, discover and select those accounts explicitly, validate a small result, and keep source context attached. With those habits, a read-only MCP connection is a useful research layer for Google Ads and Meta Ads—not an autonomous campaign manager.