Skip the install. Get this working in under 2 minutes.
Start a free trial on cloud.anythingmcp.com, add the TikTok Ads in one click, then point your AI client (Claude, ChatGPT, Copilot or Cursor) at the generated MCP endpoint. No Docker, no git clone, zero engineering experience required.
Summary
Let your AI analyse your TikTok ads: spend, impressions, clicks and conversions by campaign, ad group, ad, day or audience, plus campaigns, Smart+ campaigns, audiences, pixels and the creative library. Can pause or turn on campaigns, ad groups and ads and change campaign budgets once you switch those tools on and confirm.
Try asking
Example prompts for TikTok Ads
Click any prompt to copy it. Paste into Claude, ChatGPT, Cursor, Gemini, Copilot or OpenClaw to run it against this connector.
Claude is AI and can make mistakes. Please double-check responses.
💡 No install? Use cloud.anythingmcp.com directly. Sign in, click Connectors → TikTok Ads, paste your credentials, mint an MCP API key and you're done. No Docker, no
git clone, no local server.
TikTok Ads + Meta Muse
Let your AI analyse your TikTok ads: spend, impressions, clicks and conversions by campaign, ad group, ad, day or audience, plus campaigns, Smart+ campaigns, audiences, pixels and the creative library. Can pause or turn on campaigns, ad groups and ads and change campaign budgets once you switch those tools on and confirm.
Prerequisites
See the full setup instructions baked into the connector (visible in the in-app store when you select the connector). The required environment variables for this connector are:
TIKTOK_ADS_API_HOST, TIKTOK_ADS_ACCESS_TOKEN, TIKTOK_ADS_ADVERTISER_ID
Step 1 — Get credentials
- Sign in to the TikTok API for Business developer portal at
https://business-api.tiktok.com/portalwith a TikTok for Business account that can access your ad account, and click Become a Developer. - Under My Apps → Create an app, enter a name, a description and an Advertiser redirect URL (any https page of yours: you only copy a code from its address), and tick the permission scopes Ad Account Management, Ads Management, Reporting and Audience Management, plus Pixel Management and Creative Management for those tools. TikTok reviews new apps, usually within two or three business days.
- Once the app is approved, copy its App ID and Secret into
TIKTOK_ADS_APP_IDandTIKTOK_ADS_APP_SECRET. Both are optional: the connector only uses them to list the ad accounts your token covers. - Open the app's Advertiser authorization URL, sign in, tick the ad accounts and confirm. Your browser lands on the redirect URL with
auth_code=...in the address bar. The code works once and expires after an hour. - Exchange the code right away for a long-lived access token. This is a one-time step:
Pastecurl -X POST https://business-api.tiktok.com/open_api/v1.3/oauth2/access_token/ -H "Content-Type: application/json" -d '{"app_id":"<App ID>","secret":"<Secret>","auth_code":"<auth_code>"}'data.access_tokenfrom the answer intoTIKTOK_ADS_ACCESS_TOKENand one of thedata.advertiser_idsintoTIKTOK_ADS_ADVERTISER_ID. The token does not expire; it only stops working when the authorization is revoked or the app secret is reset. - Set
TIKTOK_ADS_API_HOSTtohttps://business-api.tiktok.com, install the connector and runtiktok_ads_get_advertiser_infoto check the account.
Sandbox: to try it without real spend, open your app in the developer portal → Sandbox, create a sandbox ad account and generate its token there; no review is needed. Use that token and the sandbox advertiser id, and set TIKTOK_ADS_API_HOST to https://sandbox-ads.tiktok.com. Sandbox accounts deliver no ads and report no real data.
One ad account per connector: every tool works on the ad account in TIKTOK_ADS_ADVERTISER_ID. A token often covers several accounts, and tiktok_ads_list_authorized_advertisers lists them. Install the connector again for each further account.
Status and budget changes are off by default: tiktok_ads_update_campaign_status, tiktok_ads_update_ad_group_status, tiktok_ads_update_ad_status and tiktok_ads_update_campaign_budget are switched off at install, because turning something on starts spending at once. Switch them on per tool if you want the AI to pause ads or change budgets. It then names the campaign, ad group or ad, the current and the new value, and waits for your yes. An ad only delivers when the ad, its ad group and its campaign are all on. Budgets are amounts in the account currency (50 means 50.00), and TikTok refuses a budget below its minimum or below 105% of what has already been spent. The connector never creates campaigns or ads.
Reports: tiktok_ads_get_report returns spend, impressions, clicks, conversions and more per campaign, ad group, ad or for the whole account, by day or by hour, or broken down by age, gender, country or placement. Daily rows cover up to 30 days per request, so the AI splits longer periods; totals without a time breakdown can span up to a year. Dates follow the ad account's timezone and amounts its currency.
Common errors: TikTok reports errors as a code in an otherwise normal answer, and the connector turns them into a clear error. 40001: the app or token lacks permission for this account or action, so authorize the ad account again with the needed scopes. 40104 or 40105: the token is invalid, expired or revoked, or belongs to another account; generate a new one. 40100: too many requests, wait a moment. 40300: TikTok does not know the advertiser id.
The connector does not create or edit campaigns, ad groups, ads or audiences, upload creatives, manage Business Center or cover TikTok Shop.
Step 2 — Install the adapter
curl -fsSL https://raw.githubusercontent.com/HelpCode-ai/anythingmcp/main/docker-compose.quickstart.yml -o docker-compose.yml
printf 'JWT_SECRET=%s\nENCRYPTION_KEY=%s\n' "$(openssl rand -hex 32)" "$(openssl rand -hex 32)" > .env
docker compose up -d
Step 3 — Add the connector in Muse
Your server URL: in AnythingMCP, open MCP Servers → the server this connector is on, and copy its URL (
https://cloud.anythingmcp.com/mcp/…). Use it wherever this guide showsYOUR_SERVER_ID.
Muse adds remote MCP servers as custom connectors and signs in to them with OAuth.
- In Muse, open Settings → Connectors and choose Add custom connector.
- Paste the MCP server URL
https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID. - Muse opens the AnythingMCP sign-in page: sign in and approve access.
- In a chat, ask Muse for something that needs the
TikTok Adstools.
You can also set it up from a chat, on the web, in the iOS and Android apps or in WhatsApp. Send Muse this message:
Create a Custom Connector for a new remote MCP server, then connect to it:
Name: AnythingMCP
Transport: remote streamable HTTP
URL: https://cloud.anythingmcp.com/mcp/YOUR_SERVER_ID
Auth: OAuth
Self-hosting? Use your instance's public HTTPS address instead of https://cloud.anythingmcp.com. Muse connects from Meta's cloud, so localhost does not work.
Available tools
| Tool | What it does |
|---|---|
tiktok_ads_list_authorized_advertisers | List every ad account (advertiser_id and name) the access token was authorized for |
tiktok_ads_get_advertiser_info | Read the configured ad account: name, company, status, currency, timezone, country, balance and more |
tiktok_ads_list_campaigns | List the campaigns of the ad account: id, name, objective, budget mode and budget, operation and secondary status, creation time |
tiktok_ads_list_smart_plus_campaigns | List the Upgraded Smart+ campaigns of the ad account (TikTok's automated campaign type), which tiktok_ads_list_campaigns may not show in… |
tiktok_ads_list_ad_groups | List the ad groups of the ad account (TikTok's name for ad sets): campaign, budget, schedule, bidding, optimization goal, placements… |
tiktok_ads_list_ads | List the ads of the ad account: ad group and campaign, ad text, call to action, landing page, video_id or image_ids, identity and status |
tiktok_ads_get_report | Run a synchronous performance report: spend, impressions, clicks, conversions and more, per campaign, ad group, ad, day or audience… |
tiktok_ads_list_custom_audiences | List the custom and lookalike audiences of the ad account: id, name, type, size (cover_num), whether it is valid for ads and when it expires |
tiktok_ads_get_custom_audiences | Read up to 100 custom audiences in detail, with their rules, source and recent history |
tiktok_ads_list_saved_audiences | List the saved audiences (stored targeting presets) of the ad account |
tiktok_ads_list_pixels | List the TikTok Pixels of the ad account with their code, setup mode and events |
tiktok_ads_get_pixel_event_stats | Count the events pixels received per event type over a date range of at most 30 days (UTC): a quick check that tracking works |
tiktok_ads_get_videos | Read up to 60 videos of the ad account's creative library by video_id (from tiktok_ads_list_ads): file name, duration, size, format and a… |
tiktok_ads_search_videos | Search the videos of the ad account's creative library, newest first |
tiktok_ads_get_images | Read up to 100 images of the ad account's creative library by image id: file name, size, format and URL |
tiktok_ads_list_identities | List the identities ads can run under: custom identities and the TikTok accounts linked to the ad account or its Business Center |
tiktok_ads_update_campaign_status | Turn campaigns on (ENABLE, starts spending) or pause them (DISABLE) |
tiktok_ads_update_ad_group_status | Turn ad groups on (ENABLE, starts spending) or pause them (DISABLE) |
tiktok_ads_update_ad_status | Turn ads on (ENABLE, starts spending) or pause them (DISABLE) |
tiktok_ads_update_campaign_budget | Change the budget of a campaign that has its own budget (budget_mode BUDGET_MODE_DAY, BUDGET_MODE_DYNAMIC_DAILY_BUDGET or… |
Example prompts
- "How much did we spend on TikTok last week, and which campaign had the lowest cost per conversion?"
- "Show daily spend, clicks and conversions for each campaign over the last 30 days."
- "Break down last month's results by age and gender."
- "Is our TikTok Pixel still receiving purchase events? Compare the last 7 days with the week before."
FAQ
Where is Muse available? Meta currently offers Muse in the US and Canada, on the web, in the iOS and Android apps and in WhatsApp.
Does Meta review this connector? No. Meta doesn't review custom connectors. Muse sees only the tools you switched on for this MCP server in AnythingMCP, and you can disconnect it anytime under Settings → Connectors.
Next steps
Was this guide helpful?