More articles 14 min read

Meta Muse connector: your AI media buyer on TikTok and Snap too

The Apogee connector makes Meta Muse your media buyer on Meta, TikTok and Snapchat: setup, API key, morning brief, launches, pauses and Bridge, step by step.

Mathieu Malige Founder, Apogee Published
Contents
  1. Muse’s job description as a media buyer
  2. Hiring Muse: the Meta Muse connector for Apogee, step by step
  3. Muse on Meta Ads: launching the new batch of creatives
  4. Muse on TikTok Ads and Snapchat Ads
  5. Its morning routine: the brief, then the pauses
  6. The Monday report, platform by platform
  7. Prompts to copy
  8. Its rules: what it never does without you
  9. What if the connection gets stuck?
  10. Going further

Apogee’s Meta Muse connector turns Muse, Meta’s personal agent, into a media buyer on your Meta, TikTok and Snapchat accounts. Muse already connects your Meta ad accounts; with Apogee, it sends the morning brief, launches your new creatives in bulk, prepares the pause of ads that burn budget and moves your Meta winners to TikTok and Snapchat. It prepares, you approve: nothing goes live without your yes. Here is its job description, how to plug it in and the prompts to copy.

Muse launches 12 Meta ads with Apogee: the launch card, Testing US campaign, 3 ad sets, copy written from each video, ads created paused, with the Launch and Not now buttons
One card, one tap: 12 ads created in the testing campaign, one ad set per concept.

Muse’s job description as a media buyer

Muse is Meta’s personal agent, available in the United States and Canada. It plugs into your services through connectors, can ask for your approval before every write and every important read, and repeats tasks at the frequency you give it. Muse for Small Business already connects Meta ad accounts in a few clicks; Apogee adds, through its advertising MCP server, TikTok, Snapchat, bulk launches and the Bridge, with guardrails.

Its taskPlatformWhenWhat you approve
The morning briefMeta, TikTok, SnapchatEvery morningNothing, it only reads
Launch the new batch of creativesMeta, TikTok, SnapchatAs soon as a batch lands in DriveThe launch recap
Prepare the pause of ads that burn budgetMeta, TikTokEvery eveningThe list of pauses, with Allow once
Send Meta winners to TikTok and SnapchatBridgeEvery MondayThe Bridge recap
The weekly reportPlatform by platformEvery MondayNothing, it only reads

With Apogee, three things are off limits: no action without your yes, no total across platforms, no account that is not connected to Apogee.

Hiring Muse: the Meta Muse connector for Apogee, step by step

You need access to Muse, open in the United States and Canada according to Meta, and Apogee’s Pro, Growth or Scale plan, MCP server included; the 7-day trial for €1 is enough to test it.

Muse plugs into services in two ways. Connectors from its catalog are added under Settings > Connectors: Connect, read the screen, Continue, then sign in to the service. For a service missing from the list, Meta’s help says to ask Muse to create a custom connector: it guides the setup, can look up the service’s API details and keeps the credentials in its vault. That is how Apogee plugs into Muse, with its MCP server URL.

The message to send Muse:

Prompt to copy
Create a custom connector named Apogee, with a capital A, for the MCP server at https://app.apogee.ad/mcp
  1. In Apogee, open Settings → Personal agents and pick Meta Muse: the server URL shows with Copy, and a Create an API key button is ready if Muse asks for one.
  2. Send the message above to Muse and follow its questions.
  3. If it asks for a key, create it as shown below and paste it in the secure field Muse opens, never in a message in the conversation.
  4. In Muse, check Settings > Permissions, Connectors section: keep Ask for actions, or Always ask.
  5. Test with a question that only reads.
Personal agents section of Apogee's settings with Meta Muse selected: the server URL, the Create an API key button and the four steps
For Muse, Apogee puts the key button right inside the steps.

What Meta’s help says about custom connectors

PointAccording to Meta, as of November 3, 2026
SetupRequested from Muse in the conversation; it guides the setup
CredentialsKept in Muse’s vault
Review by MetaNone: Meta does not review custom connectors
MCP server URL, OAuth sign-inNot documented by Meta: Muse may ask for a key instead
CountriesUnited States and Canada

Apogee accepts both modes, its sign-in page or an API key. These steps follow Meta’s help and Apogee’s guide; if your screens differ, look for connectors and their permissions in Muse’s settings.

The API key, if Muse asks for one

  1. In Apogee, open Settings → API, API keys section, then click Create key.
  2. Name: a name that says what the key is for, such as “Muse”.
  3. Scopes: only what Muse needs, at least one.
  4. Expires: 30 days, 90 days (the default), 1 year, or a date of your choice up to a year ahead.
  5. Click Create key and copy the key (apk_…): Apogee shows it only once. Close with I saved it, then paste it in Muse’s secure field.
AccessWhat it allowsFor which task
ReadRead accounts, campaigns, ads and statisticsBrief, report
LaunchImport creatives, prepare and launch ads, transfer with the BridgeLaunches, Bridge
ActionsPauses, activations, budgets, targeting, duplicatesCutting an ad, adjusting a budget

Give Muse its own key, not shared with a script or another assistant: you can revoke it without breaking anything else. An Apogee account holds at most 10 active keys.

Day one: check that it sees your accounts

Prompt to copy
Using the Apogee connector, list my Meta, TikTok and Snapchat ad accounts with their currency. Don’t change anything.

Muse should answer with the accounts connected to Apogee, through the list_ad_accounts tool. If it fails, check that the key has not expired and that it has the Read access.

Muse on Meta Ads: launching the new batch of creatives

Muse already connects your Meta accounts. Apogee does not replace that link: it brings what a media buyer’s launch needs.

NeedWith Apogee in Muse
Bulk launches on MetaDozens of creatives read with your naming convention, one ad per creative, all formats together
Importing creativesFrom a Google Drive, Dropbox or Frame.io link, without downloading
Reusing your settingsThe latest ad set and ad of the campaign, or a saved template
GuardrailsA recap and an explicit yes, paused by default, 25 launches per account over 24 hours
Prompt to copy
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 does next, with Apogee’s tools:

  1. The creatives: import_link then import_status bring them into Apogee. Nothing reaches Meta at this stage.
  2. The settings: get_latest_in_campaign picks up the latest ad set and the latest ad in the campaign.
  3. The interview: get_launch_questions returns the Apogee app’s questions, each with a recommended answer. Muse asks them one topic at a time, without answering for you.
  4. Ads and texts: one creative in 9:16, 4:5 and 1:1 makes a single ad; one primary text, one headline and one description per ad, in the market’s language.
  5. The recap, then the launch: prepare_launch creates nothing. After your yes, launch, then launch_status until it is done. Answer Allow once to Muse’s approval request.

A Meta rejection shows up in launch_status, with the cause and the fix; until you confirm the fix, Muse does not relaunch the same error.

The launch routine: the new batch, every morning

Prompt to copy
Every weekday at [time], check my Google Drive folder [folder link]. If there are creatives that are not launched yet, prepare a launch in my [campaign] campaign of [ad account], one ad set per concept, with my naming convention and the settings of the latest ad set launched there. Send me the full recap and wait for my yes before you launch. If there is nothing new, say nothing.

For a folder, two options: sharing with “Anyone with the link”, or the Drive connected to Apogee. The first run asks every question, the next ones reuse your answers.

Muse on TikTok Ads and Snapchat Ads

Sending Meta winners over with the Bridge

Muse sees your Meta ads; Apogee’s Bridge takes them further. It creates paused copies of your best videos on TikTok and Snapchat, with texts adapted to each platform, without exporting a file or touching the original Meta ads:

Prompt to copy
Send my 10 best Meta ads of the week to TikTok and Snapchat, in a new ad group and a new ad squad of my testing campaigns. Create everything paused, and show me the full recap before you create anything.
Muse sends the top 10 Meta ads to TikTok and Snapchat with Apogee's Bridge: 10 ads sent on each platform, copy adapted
The Meta top 10 heads to TikTok and Snapchat: the original ads stay intact.

The transfer chains four tools: get_top_performers picks, list_bridge_transfers skips ads already sent, prepare_bridge_transfer shows the recap, bridge_transfer runs after your yes. The first time, it asks you for what the destination requires and Meta does not provide: the TikTok identity, the Snapchat public profile, the call to action. Only videos go through the Bridge; TikTok texts are capped at 100 characters with no emoji, Snapchat headlines at 34 characters.

As a routine, every Monday:

Prompt to copy
Every Monday at [time], take my [number] best Meta ads of last week by [ROAS or CPA] in [Meta ad account] that are not on TikTok yet, and prepare them on TikTok in my [TikTok campaign] campaign of [TikTok ad account], in a new ad group. Send me the full recap and wait for my yes. Create everything paused.

Launching straight on TikTok and Snapchat

Name a TikTok or Snapchat account in the prompt and Muse launches there as it does on Meta. TikTok creates an ad group (an image becomes a carousel there, and your existing posts can run as Spark Ads with list_tiktok_posts), Snapchat an ad squad. Templates saved in the app (Quick Bulk Edit, Save as template) save you from repeating everything; Muse reads them with list_platform_templates, and never creates or deletes one:

Prompt to copy
Launch the videos in [link] on Snapchat ([Snapchat ad account]) in a NEW ad squad of my [campaign] campaign, with my saved template [template name]. Create everything paused, and show me the full recap before you create anything.

See Meta, TikTok and Snapchat in Apogee for what each platform accepts. Each platform gets its own recap, in its account’s currency, and waits for its own yes.

Its morning routine: the brief, then the pauses

According to Meta’s help, you describe a recurring task to Muse with its frequency. Muse confirms it, sends you a message at each run and lists it in the Upcoming tab, from the assistant icon at the top of the screen. It runs in your time zone until you cancel it; to change or stop it, just ask Muse. Under Manage permissions, the Artifacts and scheduled tasks section lets you give one approval per scheduled task.

The morning brief, read-only:

Prompt to copy
Every morning at [time], send me yesterday on Meta ([Meta ad account]), TikTok ([TikTok ad account]) and Snapchat ([Snapchat ad account]), each platform on its own: spend, CPA, ROAS, and the 3 best and 3 worst ads. Alert me when a platform’s CPA is more than [threshold]% above its 7-day average. Never add the platforms together. If something should change, propose it and wait for my yes.

Muse reads Meta with get_account_overview and get_top_performers, TikTok and Snapchat with get_platform_overview, get_platform_daily_breakdown and get_platform_top_performers. The numbers come from Apogee’s cross-platform stats.

The pause of the ads that burn budget, prepared every evening:

Prompt to copy
Every evening at [time], find the ads in [ad account] that spent more than [multiple] times my target CPA without a purchase over the last [days] days, on Meta and TikTok. Prepare their pause and send me the list (name, platform, spend, why). Wait for my yes before you do it.
Muse's morning brief with Apogee: spend, ROAS and winners, then the card that pauses 2 ads, with the Pause and Not now buttons
The brief reads the numbers; the pause only happens after your tap.

Preparing changes nothing: pause_ad or pause_adset on Meta and set_platform_status on TikTok store the action in Apogee. You say yes for every ad or only for the ones you name, and Muse then calls execute_action. The plan stays valid 24 hours and runs only once.

The Monday report, platform by platform

Prompt to copy
Give me this week’s report on Meta, TikTok and Snapchat, platform by platform: spend, ROAS, winners, how the copies sent with the Bridge did, and the ads to cut. Propose the changes, but don’t do anything.

The report stays per platform, in each account’s currency, time zone and attribution: Apogee never makes a total, since a TikTok conversion is not counted like a Meta conversion. The Bridge results come from get_bridge_stats.

Prompts to copy

On top of the routines above, six prompts that earn their keep every week:

Prompt to copy
What are my 5 best Meta ads of the last 7 days by ROAS, with their spend? Don’t change anything.
Prompt to copy
What are my 5 best TikTok and Snapchat ads of the last 7 days, platform by platform, with their spend in the account’s currency? Don’t change anything.
Prompt to copy
Duplicate the [name] ad set with a 20% higher budget, paused, and show me the recap.
Prompt to copy
Prepare the pause of the TikTok ads that spent more than 2 times my target CPA without a purchase over 5 days, and wait for my yes.
Prompt to copy
Take my Meta ad [Meta ad] from [Meta ad account] and send it to Snapchat: campaign [campaign], ad squad [Snapchat ad squad]. Create everything paused, and show me the full recap before you create anything.
Prompt to copy
Where does my latest launch stand? If there are errors, tell me what to fix.

Its rules: what it never does without you

Muse asks for your approval based on its settings, according to Meta’s help:

  • Settings > Permissions, Connectors section: Ask for actions asks before every write and every important read; Always ask asks every time.
  • Manage permissions breaks permissions down by Connectors, Artifacts and scheduled tasks and Allowed websites.
  • On a request, the buttons are Allow once, Allow for this task, Allow for this site, Always allow (for that connector) and Deny, with View task details to read the details before you choose.

For an Apogee launch, pause or budget, answer Allow once, never Always allow. Muse’s connector documentation points the same way: a sensitive write is always approved once, or denied.

Apogee keeps its own guardrails, whatever Muse’s settings:

GuardrailValue
Before any launch or changeA full recap and your yes
Status of created adsPaused by default
Prepared planValid 24 hours, runs only once
Daily budgetRefused above the cap, 500 in the account’s currency by default
Launches and Bridge transfers25 per ad account over 24 hours

Reads stay free up to your plan’s daily limit (5,000 on Pro, 10,000 on Growth and Scale); an ad created costs 15 credits and a change 2, charged only on success. To cut access: with a key, Settings → API in Apogee, API keys list, Revoke next to Muse’s key, which stops everything using it at once; with Apogee’s sign-in page, Settings → Personal agents, Disconnect. Either way, also ask Muse to cancel the scheduled tasks that went through Apogee.

What if the connection gets stuck?

  • Muse is not available where you are: it is limited to the United States and Canada. The same prompts work with Claude Duet, ChatGPT dots or Grok Bot.
  • Muse cannot find Apogee: ask it again to create the custom connector, with the exact URL https://app.apogee.ad/mcp.
  • Calls fail: the key may have expired or been revoked. Create a new one under Settings → API and replace it in Muse.
  • Muse reads but launches nothing: the key lacks the Launch access. Create a key with the right access.
  • A scheduled task waits and does nothing: check its approval under Manage permissions → Artifacts and scheduled tasks.

Going further

The feature Multi-platform Three ad platforms, one workflow, one creative tracked end to end. See the feature

Frequently asked questions

How do I connect Apogee to Meta Muse?

Ask Muse to create a custom connector named Apogee for the MCP server at https://app.apogee.ad/mcp, then follow its questions. If it asks for a key, create one in Apogee (Settings → API) with only the access it needs, and paste it in the secure field Muse opens, never in the conversation.

Does Meta Muse support MCP servers?

Meta's help says you can ask Muse to create a custom connector for a service missing from the catalog, but it mentions neither an MCP server URL nor an OAuth sign-in. Apogee provides its MCP server URL, and an API key if Muse asks for one.

Can Meta Muse manage TikTok and Snapchat ads?

Muse connects Meta ad accounts on its own. For TikTok and Snapchat, it goes through a connector such as Apogee: it then reads your numbers platform by platform, prepares launches and Bridge transfers, and Apogee waits for your yes on each recap before it creates anything.

Where is Meta Muse available?

As of November 3, 2026, Meta says Muse is available in the United States and Canada. Elsewhere, the same tasks run through another personal agent connected to Apogee, such as Claude Duet, ChatGPT dots or Grok Bot.

Why add Apogee if Muse already connects my Meta accounts?

Muse's Meta connector links your Meta ad accounts. Apogee covers Meta, TikTok and Snapchat in the same conversation, launches dozens of creatives read with your naming convention, imports from Google Drive, Frame.io or Dropbox, and sends your Meta videos to TikTok or Snapchat with the Bridge.

Can Meta Muse launch ads without my approval?

No. Apogee prepares a plan, shows the full recap and only runs it after your yes. Ads are created paused by default, and the plan expires after 24 hours and runs only once. On Muse's side, keep the Ask for actions setting and answer Allow once, never Always allow, to an Apogee action.

Book a demo

Pick the time that suits you.

Open in a new tab

Loading the calendar…

Talk to Founder