# Connect ChatGPT to Apogee's MCP server: setup, checks, limits and errors

https://www.apogee.ad/developers/mcp/chatgpt/ (Markdown: https://www.apogee.ad/developers/mcp/chatgpt.md). Updated 2026-11-03.

ChatGPT (chatgpt.com) connects to Apogee's MCP server at `https://app.apogee.ad/mcp` with Apogee's sign-in (OAuth). It then works on your Meta, TikTok and Snapchat ad accounts through Apogee's 80 tools: it reads freely, and launches or changes ads only after your explicit yes to a recap.

## At a glance

- Server URL: `https://app.apogee.ad/mcp`
- Transport: Streamable HTTP, stateless: every request is a `POST` answered with JSON.
- Sign-in: Apogee's sign-in (OAuth 2.1 with PKCE): the assistant opens Apogee's page, you log in and click **Authorize**. ChatGPT cannot send an API key.
- Scopes: **Read** (`read`), **Launch** (`launch`), **Actions** (`actions`): ticked on Apogee's page when ChatGPT signs in; untick what it should not do ([scopes](https://www.apogee.ad/developers/authentication/#scopes)).
- Apogee plan: [Pro, Growth or Scale](https://www.apogee.ad/en/pricing/) (not Starter)
- Server instructions: On connection, Apogee tells ChatGPT how to launch: the interview, the recap, your yes ([read them](https://www.apogee.ad/developers/mcp/#instructions)).

## Set it up

1. Turn on developer mode: **Settings → Apps → Advanced settings → Developer mode**.
2. Go to **Settings → Apps → Create**. Name it Apogee, paste `https://app.apogee.ad/mcp` and choose **OAuth** as the authentication.
3. Click **Scan Tools**, log in to Apogee on the page that opens and click **Authorize**, then click **Create**.
4. The app shows with a **Dev** label: use it in a new chat.

Notes:

- ChatGPT cannot send an API key: it connects with Apogee's sign-in only.
- Workspaces: an admin allows it first in **Workspace settings → Permissions & Roles → Connected Data** (Developer mode / Create custom MCP connectors).
- OpenAI is moving custom MCP servers to [chatgpt.com/plugins](https://chatgpt.com/plugins) (**+ → Add custom MCP server**). If your menus look different, start there.

Checked on 2026-10-10 against: [OpenAI Help Center: developer mode and MCP apps](https://help.openai.com/en/articles/12584461-developer-mode-and-mcp-apps-in-chatgpt), [OpenAI docs: connect from ChatGPT](https://developers.openai.com/plugins/deploy/connect-chatgpt), [OpenAI docs: authentication](https://developers.openai.com/plugins/build/auth).

## Plans

- **On ChatGPT's side:** Business, Enterprise and Edu, on the web. On Pro, developer mode connects read tools only: you can read your numbers, not launch.
- **On Apogee's side:** the Pro, Growth or Scale plan includes the MCP server, with credits every month (10,000 on Pro, 30,000 on Growth, 100,000 on Scale); Starter does not. A 7-day trial for €1 includes a quarter of the plan's credits ([plans](https://www.apogee.ad/en/pricing/), [credits](https://www.apogee.ad/developers/credits/)).
- **Your ad accounts** connected in the Apogee app (Meta, TikTok or Snapchat): ChatGPT sees exactly what your Apogee account sees.

## Check the connection

Ask ChatGPT, in your own words:

1. "Which Apogee account are you connected to, and with which scopes?" ChatGPT calls [`whoami`](https://www.apogee.ad/developers/mcp/whoami/): the Apogee account this connection acts as, the credential used (an assistant's connection or an API key) and its scopes.
2. "List my Meta ad accounts on Apogee, then my TikTok and Snapchat ones." ChatGPT calls [`list_ad_accounts`](https://www.apogee.ad/developers/mcp/list-ad-accounts/), with `platform` set to `tiktok` or `snapchat` for the others. An empty list means no ad account of that platform is connected in the Apogee app.

Both are reads: free within the daily free reads, nothing changes. If ChatGPT does not find Apogee's tools, check that Apogee is turned on where the last step above says.

From a terminal: Without a credential the server answers `401` with a `WWW-Authenticate` header pointing to `https://app.apogee.ad/.well-known/oauth-protected-resource/mcp`: that is where OAuth discovery starts.

```bash
curl -i -X POST https://app.apogee.ad/mcp \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -d '{"jsonrpc":"2.0","id":1,"method":"tools/list"}'
```

## What it can do

ChatGPT gets Apogee's 80 tools, filtered by the scopes of its connection: a tool outside them is not even listed.

- **Read** (`read`, 54 tools): Read ad accounts, campaigns, ad sets, ads and their numbers on Meta, TikTok and Snapchat, the comments of your ads and the Bridge's stats; follow imports, launches and transfers (nothing is sent). For example: [`whoami`](https://www.apogee.ad/developers/mcp/whoami/), [`list_ad_accounts`](https://www.apogee.ad/developers/mcp/list-ad-accounts/), [`get_account_overview`](https://www.apogee.ad/developers/mcp/get-account-overview/), [`get_top_performers`](https://www.apogee.ad/developers/mcp/get-top-performers/), [`get_platform_overview`](https://www.apogee.ad/developers/mcp/get-platform-overview/), [`get_launch_questions`](https://www.apogee.ad/developers/mcp/get-launch-questions/).
- **Launch** (`launch`, 9 tools): Import and upload creatives, prepare and launch ads, run Bridge transfers, create a campaign. For example: [`import_link`](https://www.apogee.ad/developers/mcp/import-link/), [`prepare_launch`](https://www.apogee.ad/developers/mcp/prepare-launch/), [`launch`](https://www.apogee.ad/developers/mcp/launch/), [`prepare_bridge_transfer`](https://www.apogee.ad/developers/mcp/prepare-bridge-transfer/), [`execute_action`](https://www.apogee.ad/developers/mcp/execute-action/).
- **Actions** (`actions`, 18 tools): Pause, activate, change budgets and targeting, duplicate, create ad sets and ads from existing posts. For example: [`pause_ad`](https://www.apogee.ad/developers/mcp/pause-ad/), [`update_budget`](https://www.apogee.ad/developers/mcp/update-budget/), [`execute_action`](https://www.apogee.ad/developers/mcp/execute-action/).

By effect: 54 only read; 19 prepare a plan or an action; 4 write in Apogee only and 3 change the ad account, after your yes. Every tool, its parameters and its cost: [all the tools](https://www.apogee.ad/developers/mcp/#tools).

## Prompts to start with

Replace the [brackets] with your own names. Each prompt ends with Apogee's safety reminder: "Create everything paused, and show me the full recap before you create anything." or "Show me each change and wait for my yes before you make it."

### Launch from a Frame.io, Google Drive or Dropbox link

The same launch from a link: no download, no upload on your side.

```text
Take every creative in [link] and launch them in a NEW ad set in my [testing campaign] campaign of [ad account]. Reuse the settings of the latest ad set and the latest ad launched in that campaign. Create everything paused, and show me the full recap before you create anything.
```

What it asks you: Which ad account, when you have several. The files it found behind the link, then the ads it reads from their names: one ad per creative in all its formats. Confirm or correct them. The new ad set's name, and what it copies from the latest ad set and ad. Which Advantage+ enhancements to turn on. The whole recap, then your explicit yes.

Note: Works in every assistant. Google Drive, Dropbox and Frame.io links go through the account you connected in Apogee; a public Frame.io share works without one when downloads are allowed (reading it takes 20 to 30 seconds), a password-protected one does not.

### Weekly review: what to scale, what to cut

Your numbers read for you, and the changes proposed one by one. Nothing changes without your yes.

```text
Look at [ad account] over the last 7 days. Which ads should I scale and which should I cut, judged on [ROAS or CPA]? Show me the numbers, then propose the changes. Show me each change and wait for my yes before you make it.
```

What it asks you: Your targets, when Apogee does not know them yet (it can remember them in your business profile). Each proposed change (pause, budget up or down) with what it will change, and your OK for each one.

### Send a Meta ad to Snapchat or TikTok

An ad that works on Meta, sent to Snapchat or TikTok with Bridge, without exporting anything. The Meta ad is not touched.

```text
Take my Meta ad [Meta ad] from [Meta ad account] and send it to Snapchat: campaign [campaign], ad squad [ad squad]. Create everything paused, and show me the full recap before you create anything.
```

What it asks you: Which Snapchat or TikTok ad account, when you have several. What the destination still needs and cannot take from the ads already there: a Snapchat public profile, a TikTok identity, a website, a headline. What cannot be carried over as is (a call to action remapped, a video that is not vertical): your yes accepts it. The whole recap, then your explicit yes.

Note: Videos only on Snapchat and TikTok.

## Guardrails and limits

The server enforces them, whatever ChatGPT is told:

- **Your yes before anything changes.** A launch is [`prepare_launch`](https://www.apogee.ad/developers/mcp/prepare-launch/), the recap, then [`launch`](https://www.apogee.ad/developers/mcp/launch/); a change is an action tool, then [`execute_action`](https://www.apogee.ad/developers/mcp/execute-action/); a Bridge transfer is [`prepare_bridge_transfer`](https://www.apogee.ad/developers/mcp/prepare-bridge-transfer/), then [`bridge_transfer`](https://www.apogee.ad/developers/mcp/bridge-transfer/). Nothing is created, changed or transferred before your explicit yes to the whole recap.
- **Ads are created paused** unless you ask otherwise.
- **A prepared plan or action is valid 24 hours** and runs once.
- **Daily budget cap:** a daily budget above 500 in the ad account's currency is refused ([`budget_above_cap`](https://www.apogee.ad/developers/errors/#budget_above_cap)).
- **25 launches and Bridge transfers** per ad account in 24 hours through the MCP and the API.
- **2,000 units** per assistant connection or API key in 24 hours: a read 1, a change 2, Apogee's AI 5, a launch or a transfer 10.
- **MCP requests:** 600 on Pro, 1,200 on Growth and Scale per 15 minutes ([rate limits](https://www.apogee.ad/developers/rate-limits/)).
- **Credits:** reads are free up to 5,000 on Pro, 10,000 on Growth and Scale a day; a change on an ad platform, an ad created and Apogee's AI cost credits, only when they succeed ([credits](https://www.apogee.ad/developers/credits/)).
- **Each platform on its own:** Meta, TikTok and Snapchat keep their own currency and attribution; Apogee never adds them up.

## Errors and fixes

A refused tool call comes back to ChatGPT as a result with `isError: true` and the reason in words, so it can tell you what to do. The common ones:

- [`401`](https://www.apogee.ad/developers/errors/#invalid_api_key): Apogee needs authentication, or every call fails
  The sign-in was disconnected in Apogee, or its refresh token (valid 60 days) expired: connect again from the authorization step. An access token lasts 1 hour and ChatGPT renews it on its own.
- ChatGPT sees Apogee but says it cannot launch or change anything
  The connection lacks a [scope](https://www.apogee.ad/developers/authentication/#scopes), so those tools are not listed. Connect again and keep **Launch** and **Actions** ticked on Apogee's page. Your ChatGPT plan may also connect read tools only (see [Plans](https://www.apogee.ad/developers/mcp/chatgpt/#plans)).
- [`403 upgrade_required`](https://www.apogee.ad/developers/errors/#upgrade_required)
  The Apogee account is not on a plan with the MCP. It works again as soon as the account is on Pro, Growth or Scale.
- The option to add Apogee is missing or greyed out
  Your organization controls it: an administrator allows it first (see [Plans](https://www.apogee.ad/developers/mcp/chatgpt/#plans) and the notes under the steps).
- [`402 credits_exhausted`](https://www.apogee.ad/developers/errors/#credits_exhausted)
  This month's credits and the credit packs are used: buy a pack ([credits](https://app.apogee.ad/settings/credits)) or wait for the 1st of the month (UTC). Reads go on.
- [`429`](https://www.apogee.ad/developers/errors/#rate_limited) `rate_limited`, `quota_exceeded`, `daily_read_cap`
  A limit of the list above is reached: wait the seconds the answer gives ([rate limits](https://www.apogee.ad/developers/rate-limits/)).
- [`412 meta_not_connected`](https://www.apogee.ad/developers/errors/#meta_not_connected), `platform_not_connected`
  Apogee's own Facebook, TikTok or Snapchat connection expired, not ChatGPT's: log in to the Apogee app again, or reconnect the platform there.
- [`410 plan_expired`](https://www.apogee.ad/developers/errors/#plan_expired), `409 plan_already_launched`
  The recap was prepared more than 24 hours earlier, or already ran: ask ChatGPT to prepare it again.
- [`409 same_error_again`](https://www.apogee.ad/developers/errors/#same_error_again)
  The last launches on this ad account failed with the same error: fix its cause (the platform's message says what), then tell ChatGPT it is fixed.

Every code: [errors](https://www.apogee.ad/developers/errors/).

## Disconnect

- **In Apogee:** Settings → MCP → **Connected assistants**, then **Disconnect** next to ChatGPT. It loses access at once; ads already launched are not touched, and you can connect it again at any time.
- **In ChatGPT:** remove Apogee where you added it.

## Guides and related pages

- [ChatGPT MCP: connect Apogee in developer mode](https://www.apogee.ad/en/blog/chatgpt-mcp-connector/) (English) · [ChatGPT MCP : connecter Apogee en mode développeur](https://www.apogee.ad/blog/chatgpt-mcp-connector/) (Français) · [ChatGPT MCP: conectar Apogee en modo desarrollador](https://www.apogee.ad/es/blog/chatgpt-mcp-connector/) (Español)
- [ChatGPT for Facebook Ads: launch and track your ads with Apogee](https://www.apogee.ad/en/blog/chatgpt-facebook-ads/) (English) · [ChatGPT et Facebook Ads : lancer et suivre vos ads avec Apogee](https://www.apogee.ad/blog/chatgpt-facebook-ads/) (Français) · [ChatGPT y Facebook Ads: lanzar y seguir sus anuncios con Apogee](https://www.apogee.ad/es/blog/chatgpt-facebook-ads/) (Español)
- [Meta Ads MCP: run your ads from Claude, ChatGPT or Cursor](https://www.apogee.ad/en/blog/meta-ads-mcp/): the options for a Meta Ads MCP, compared
- Same vendor: [ChatGPT dots](https://www.apogee.ad/developers/mcp/chatgpt-dots/)
- [The MCP server](https://www.apogee.ad/developers/mcp/): how a launch works, every tool, prompt templates
- [Authentication](https://www.apogee.ad/developers/authentication/): API keys, OAuth, scopes
- [Every assistant, for AI agents](https://www.apogee.ad/developers/llms.txt)