Skip to main content

Announcing StackOne Defender: leading open-source prompt injection guard for your agent Read More

TikTok Ads MCP Server
for AI Agents

Production-ready TikTok Ads MCP server with 51 extensible actions — plus built-in authentication, security, and optimized execution.

TikTok Ads logo
TikTok Ads MCP Server
Built by StackOne StackOne

Coverage

51 Agent Actions

Create, read, update, and delete across TikTok Ads — and extend your agent's capabilities with custom actions.

Authentication

Agent Tool Authentication

Per-user OAuth in one call. Your TikTok Ads MCP server gets session-scoped tokens with zero credentials stored on your infra.

Agent Auth →

Security

Agent Protection

Every TikTok Ads tool response scanned for prompt injection in milliseconds — 88.7% accuracy, all running on CPU.

Prompt Injection Defense →

Performance

Max Agent Context. Min Cost.

Free up to 96% of your agent's context window to enhance reasoning and reduce cost, on every TikTok Ads call.

Tools Discovery →

What is the TikTok Ads MCP Server?

A TikTok Ads MCP server lets AI agents read and write TikTok Ads data through the Model Context Protocol — Anthropic's open standard for connecting LLMs to external tools. StackOne's TikTok Ads MCP server ships with 51 pre-built actions, fully extensible via the Connector Builder — plus managed authentication, prompt injection defense, and optimized agent context. Connect it from MCP clients like Claude Desktop, Cursor, and VS Code, or from agent frameworks like OpenAI Agents SDK, LangChain, and Vercel AI SDK.

All TikTok Ads MCP Tools and Actions

Every action from TikTok Ads's API, ready for your agent. Create, read, update, and delete — scoped to exactly what you need.

Ad Groups

  • Create Ad Group

    Create a new ad group under an existing TikTok Ads campaign via POST /adgroup/create/, configuring audience targeting (location, demographics, interests, devices), budget and bid strategy, delivery schedule, ad placements, optimization goals, and brand safety settings in a single request

  • List Ad Groups

    Retrieve a paginated list of ad groups for a TikTok Ads advertiser account via GET /adgroup/get/, with optional filtering by campaign IDs, ad group status, objective type, name, or creation date range, returning full targeting, budget, schedule, placement, and bid configuration for each ad group

  • Update Ad Group

    Partially update an existing TikTok Ads ad group via POST /adgroup/update/, modifying only the fields you include in the request (name, budget, bid strategy, targeting, schedule, dayparting, or social settings) while all omitted fields retain their current values

Ads

  • Create Ad

    Create up to 20 ads within an existing ad group via POST /ad/create/, each defined as a creative object with ad format, identity profile, ad text, CTA, and optional assets (production only, ads enter TikTok review before delivery)

  • List Ads

    Retrieve ads (the lowest tier of TikTok's Campaign > Ad Group > Ad hierarchy) via GET /ad/get/ with filtering by campaign, ad group, ad IDs, delivery status, or creation date, returning creative details, review status, and delivery state

  • Update Ad

    Modify an existing ad's creative content, identity, ad text, CTA, or landing page via POST /ad/update/, with optional incremental (patch) update mode for select fields (production only, changes may trigger re-review)

Campaigns

  • Create Campaign

    Create a new advertising campaign under a TikTok Ads advertiser account via POST /campaign/create/, specifying the marketing objective, budget mode, and budget amount. Returns the newly assigned campaign_id for use in subsequent ad group and ad creation

  • List Campaigns

    Retrieve a paginated list of all advertising campaigns under a TikTok Ads advertiser account, with optional filtering by campaign IDs, delivery status, objective type, and creation date range via GET /campaign/get/ (TikTok Business API v1.3)

  • Update Campaign

    Partially update an existing TikTok Ads campaign's name, budget amount, or budget mode via POST /campaign/update/. Only explicitly provided fields are modified; omitted fields retain their current values. The campaign must not be in DELETE status

Images

  • Upload Image

    Upload an image to the advertiser's TikTok Ads creative library from a publicly accessible URL, returning an image_id for use in ad creatives

  • Search Images

    Search and retrieve ad image assets from the advertiser's creative library with optional filtering by image IDs, material IDs, or dimensions

Videos

  • Upload Video

    Upload a video to the advertiser's TikTok Ads creative library from a public URL or bind an existing TikTok video to the ad account, returning a video_id for use in ad creatives

  • Search Videos

    Search and retrieve ad video assets from the advertiser's creative library with optional filtering by video IDs, material IDs, or dimensions

Identitys

  • Create Identity

    Create a CUSTOMIZED_USER identity with a display name and optional avatar via POST /identity/create/, returning an identity_id for use in ad creation (note CUSTOMIZED_USER is deprecated for TikTok placement ads)

  • Delete Identity

    Permanently delete a CUSTOMIZED_USER identity via POST /identity/delete/. Since custom identities cannot be edited, delete and recreate to make changes

Pixels

  • Create Pixel

    Create a new TikTok Pixel for website conversion tracking via POST /pixel/create/. Returns the pixel_id and pixel_code for embedding in your website JavaScript or using with the Events API for server-to-server event tracking

  • Get Pixels

    Retrieve a paginated list of TikTok Pixels and their associated event configurations for an advertiser account via GET /pixel/list/, with optional filtering by pixel code, pixel ID, or pixel name (fuzzy match)

  • Update Pixel

    Update an existing TikTok Pixel's name, Advanced Matching configuration, first-party cookie settings, and expanded data sharing preferences via POST /pixel/update/. Supports both Manual and Automatic Advanced Matching for improved conversion attribution

Targeting Options

  • Search Targeting Options

    Search for targeting options by keyword across multiple categories (geographic locations, interest categories, interest keywords, and purchase intention keywords). Production only

  • List Targeting Options

    List available targeting options by type for specific geographic locations, currently supporting ISP (Internet Service Provider) targeting. Production only

Other (31)

  • Create Audience By Rule

    Create a rule-based custom audience by defining inclusion and exclusion rules that target users based on specific actions and behaviors (e.g., ad engagement, app activity, website visits)

  • Create Lookalike Audience

    Create a lookalike audience that finds new users similar to an existing source audience, expanding reach while maintaining targeting relevance. Production only (not available on sandbox)

  • Get Advertiser Info

    Retrieve comprehensive account profile, status, and configuration details for one or more TikTok Ads advertiser accounts via GET /advertiser/info/, including timezone, currency, role, balance, industry, and business verification status

  • List Advertisers

    List all TikTok Ads advertiser accounts authorized for the authenticated OAuth2 app via GET /oauth2/advertiser/get/. Returns account IDs, names, and statuses. OAuth2 authentication only -- not available with sandbox API keys

  • List Apps

    Retrieve all registered mobile apps associated with a TikTok Ads advertiser account via GET /app/list/, returning app IDs, names, platform types (Android/iOS), and download URLs. Required for creating APP_PROMOTION campaigns and configuring app-based ad groups. Production only -- not available on sandbox

  • Get All Audiences

    List all custom audiences (both owned and shared) under the advertiser account with pagination, returning audience IDs, names, types, and expiration info

  • Get Audience Details

    Retrieve detailed information for specific audiences by their IDs, including processing status, modification history, shared status, and lookalike specifications

  • Get Image Info

    Retrieve detailed metadata for one or more uploaded image assets by their IDs, including dimensions, file size, format, and CDN preview URLs

  • Get Video Info

    Retrieve detailed metadata for one or more uploaded video assets by their IDs, including duration, dimensions, processing status, and thumbnail URL

  • Get Identity List

    Retrieve all identities (public-facing ad profiles) under a TikTok Ads account via GET /identity/get/, with optional filtering by identity type or display name for Spark Ads workflows

  • Get Identity Info

    Retrieve detailed profile information for a specific identity via GET /identity/info/, including display name, avatar URL, username, and messaging capabilities (production only, returns error 50000 on sandbox)

  • Get Posts Under Identity

    Retrieve video and carousel posts published by a TikTok identity via GET /identity/video/get/, returning item_id values needed for Spark Ads creation (production only, requires a real TikTok account identity)

  • Get Music Authorization Info

    Check whether the background music in a TikTok post is licensed for ad use in specified target locations and time period via GET /identity/music/authorization/ (production only, must be called before creating Spark Ads with music)

  • Get Info About TikTok Posts

    Retrieve detailed metadata for one or more TikTok posts (video or carousel) via GET /identity/video/info/, including post content, engagement data, and Spark Ads eligibility (production only)

  • List Targeting Regions

    Retrieve the full list of targetable geographic regions (countries, states, cities, DMAs) with their TikTok location IDs, filtered by placement and campaign objective. Production only

  • List Interest Categories

    Retrieve the full hierarchical taxonomy of interest-based targeting categories with their TikTok category IDs for use in ad group interest targeting. Production only

  • List Targeting Languages

    Retrieve the full list of available language targeting options with their codes for use in ad group language targeting. Production only

  • List Action Categories

    Retrieve the taxonomy of behavioral action categories for targeting users based on recent in-app actions (video interactions, creator follows, hashtag views). Production only

  • Update Ad Group Status

    Batch enable, disable, or permanently delete up to 20 TikTok Ads ad groups in a single request via POST /adgroup/status/update/, with optional partial success mode to skip ineligible ad groups rather than failing the entire batch

  • Update Ad Group Budget

    Update the lifetime budgets of up to 20 ad groups immediately, or schedule daily/dynamic daily budget changes for up to 20 ad groups to take effect the following day at 00:00 in the ad account's time zone, via POST /adgroup/budget/update/

  • Update Ad Status

    Batch enable, disable, or permanently delete up to 20 TikTok ads or ACO (Automated Creative Optimization) ads via POST /ad/status/update/ (production only, deleted ads cannot be restored)

  • Update Custom Audience

    Update the display name of an existing custom audience. Does not modify the audience's matched user data or targeting rules

  • Update Campaign Status

    Batch update the delivery status of one or more TikTok Ads campaigns via POST /campaign/status/update/, supporting ENABLE, DISABLE, and DELETE operations. Disabling a campaign cascades to pause all child ad groups and ads; deleting is permanent and irreversible

  • Update Video Name

    Rename a video asset in the advertiser's creative library by specifying its video_id and the new file_name

  • Update Image Name

    Rename an image asset in the advertiser's creative library by specifying its image_id and the new file_name

  • Delete Audiences

    Permanently delete one or more custom audiences by their IDs. This action is irreversible and automatically removes the audience from any ad groups currently targeting it

  • Refresh Lookalike Audience

    Trigger a manual refresh of one or more lookalike audiences to re-analyze the source audience and update the matched users with the latest data. Production only (not available on sandbox)

  • Apply Audiences To Ad Groups

    Connect or disconnect a custom audience from one or more ad groups for inclusion or exclusion targeting. Production only (not available on sandbox)

  • Run Synchronous Report

    Run a synchronous integrated report via GET /report/integrated/get/ to retrieve ad performance metrics grouped by configurable dimensions (campaign, ad group, ad, or time). Returns up to 20,000 rows per request with support for BASIC, AUDIENCE, CATALOG, and other report types

  • Recommend Targeting Categories

    Get AI-recommended interest and behavioral action categories optimized for your campaign objective, placements, and target regions. Production only

  • Recommend Interest Keywords

    Get recommended interest keywords related to a seed keyword, returning keyword IDs for use in ad group interest keyword targeting. Production only

Set Up Your TikTok Ads MCP Server in Minutes

One endpoint. Any framework. Your agent is talking to TikTok Ads in under 10 lines of code.

MCP Clients

Agent Frameworks

Claude Desktop
{
  "mcpServers": {
    "stackone": {
      "command": "npx",
      "args": [
        "-y",
        "mcp-remote@latest",
        "https://api.stackone.com/mcp?x-account-id=<account_id>",
        "--header",
        "Authorization: Basic <YOUR_BASE64_TOKEN>"
      ]
    }
  }
}

More Marketing Automation MCP Servers

Klaviyo

162+ actions

Zoho CRM

126+ actions

Intercom

123+ actions

SendGrid

99+ actions

Braze

98+ actions

Mailchimp

80+ actions

Campaign Monitor

73+ actions

TikTok Ads MCP Server FAQ

TikTok Ads MCP server vs direct API integration — what's the difference?
A TikTok Ads MCP server and direct API integration serve different use cases. Direct API integration is for software-to-software — backend code calling TikTok Ads. A TikTok Ads MCP server is for AI agents — MCP clients like Claude and Cursor, plus framework agents built with OpenAI, LangChain, or Vercel AI — discovering and calling TikTok Ads at runtime. StackOne provides both.
How does TikTok Ads authentication work for AI agents?
TikTok Ads authentication for AI agents works through a StackOne Connect Session. Create one via the dashboard or the SDK — you get an auth link and ready-to-paste config for Claude Desktop, Cursor, and other MCP clients. Your user authenticates their own TikTok Ads account; StackOne handles token exchange, storage, and refresh. Credentials never reach the LLM, and each user is isolated via origin_owner_id.
Are TikTok Ads MCP tools vulnerable to prompt injection?
Yes — TikTok Ads MCP tools can be vulnerable to indirect prompt injection. Any tool that reads user-written content — documents, messages, tickets, records, or free-text fields — is a potential vector. StackOne Defender scans every tool response before it enters the agent's context — regex patterns in ~1ms, then a MiniLM classifier in ~4ms. 88.7% accuracy, CPU-only.
What is the context bloat of a TikTok Ads agent and how do I avoid it?
Context bloat happens when TikTok Ads tool schemas and API responses eat your TikTok Ads agent's memory, preventing it from reasoning effectively. A single TikTok Ads query can return a massive JSON response, and connecting multiple tools compounds the problem. Tools Discovery and Code Mode reduce context bloat — loading only relevant tools per query and keeping raw responses out of the agent's context.
Can I limit which actions my TikTok Ads agent can access?
Yes — you can limit which actions your TikTok Ads agent can access directly from the StackOne dashboard. Toggle actions on or off, or restrict them to specific accounts, with no code changes to your agent. Session tokens can be scoped to exact actions so if one leaks, exposure stays contained.
Can I create custom agent actions for my TikTok Ads MCP server?
Yes — you can create custom agent actions for your TikTok Ads MCP server using Connector Builder. It's an integration agent your coding assistant (Claude Code, Cursor, or Copilot) can invoke to research TikTok Ads's API, generate production-ready connector YAML, test against the live API, and validate before you ship.
When should I NOT use a TikTok Ads MCP server?
Skip a TikTok Ads MCP server if your integration is purely software-to-software — direct TikTok Ads API integration is simpler when no AI agent is involved. For deterministic, compliance-critical operations (financial transactions, regulatory reporting), direct API gives you predictable behavior without agent-driven decision-making. MCP shines when AI agents need to dynamically discover and call TikTok Ads actions at runtime.
What AI frameworks and AI clients does the StackOne TikTok Ads MCP server support?
The StackOne TikTok Ads MCP server supports both. MCP clients (paste-and-go apps): Claude Desktop, Claude Code, Cursor, VS Code, Goose. Agent frameworks (code SDKs you build with): OpenAI Agents SDK, Anthropic, Vercel AI, Google ADK, CrewAI, Pydantic AI, LangChain, LangGraph, Azure AI Foundry.

Put your AI agents to work

All the tools you need to build and scale AI agent integrations, with best-in-class connectivity, execution, and security.