Back to Blog
GuidesOct 29, 2026|7 min read

Using Claude to Manage Meta and TikTok Ads With MCP

EA
Eduard Andrei

Founder at Adship

Using Claude to Manage Meta and TikTok Ads With MCP

Most media buyers have already pasted a CSV of ad performance into a chat window and asked what to do. It works, but the data is stale the moment you paste it, and Claude cannot act on any answer. The Model Context Protocol (MCP) closes that gap: it lets an AI client call tools in another system directly. This guide explains what that means for ads, how Adship's MCP server works, how to connect it, and where the guardrails are.

What MCP is, in plain terms

MCP is an open protocol for connecting AI clients to tools and data. A server publishes a list of tools, each with a name, a description and an input schema. The client, such as Claude Desktop, Claude Code or Cursor, shows that list to the model, and the model decides when to call a tool. You stay in a normal conversation. Behind it, the model might call a tool that lists your campaigns, reads yesterday's spend, or pauses an ad.

Two practical consequences follow. The data is live, because the tool reads your account when you ask. And the model can take actions, not just give advice, which is why permissions and guardrails matter more than they do in a plain chat.

What the Adship MCP server exposes

Adship hosts a remote MCP server at https://mcp.adship.ai/mcp for your Meta and TikTok ad accounts. The tool list is long, and the names in the code are descriptive. Some real examples, grouped by what you would use them for:

  • Account overview and audits: list_ad_accounts, get_account_overview, run_full_account_audit.
  • Reading performance: get_ad_metrics, get_report, get_tiktok_report, get_spend_summary, get_insights_breakdown, get_audience_breakdown, get_budget_pacing, get_top_ads, get_change_history.
  • Campaign structure: list_campaigns, list_ad_sets, list_ads, create_campaign, duplicate_campaign.
  • Changes: pause_ad, enable_ad, update_status, update_budget, delete_entities.
  • Creative and launch: generate_ad_copy, edit_ad_creative, upload_creative, bulk_publish for Meta and bulk_publish_tiktok for TikTok.
  • Competitors: scrape_meta_ads_library, analyze_competitor, compare_competitors.
  • Rules and comments: list_ad_rules, create_ad_rule, list_comments, reply_to_comment, hide_comment.
  • TikTok: tools such as list_tiktok_identities and create_tiktok_campaign.

It manages Meta and TikTok. Google Drive and Sheets can supply source material for a launch, but Google Ads account management is not supported. The documentation pages list tool counts that differ from each other, so treat the exact total as moving and check the MCP docs for the current list.

Connect Claude: step by step

The same hosted URL works for every client. OAuth sign-in uses your Adship account, so no Meta access token is copied into the AI client.

Claude Desktop (recommended path)

  1. Open Settings, then Connectors, then Add custom connector.
  2. Name it Adship and paste the URL https://mcp.adship.ai/mcp.
  3. Run any ad question. The first tool call opens a sign-in window.

Claude Code

  1. Run claude mcp add --transport http adship https://mcp.adship.ai/mcp.
  2. Inside Claude Code, run /mcp to start the OAuth flow.

First-run authentication

  1. The first tool call returns a 401 with OAuth details.
  2. The client opens the Adship authorize page in your browser.
  3. You sign in, pick the workspace the agent can access, and approve the scopes.
  4. The client receives a token that lasts 24 hours and refreshes automatically, using OAuth 2.1 with PKCE.

Cursor and ChatGPT connectors work from the same endpoint. Older Claude Desktop builds can use the mcp-remote bridge described in the docs.

Scopes: you decide what Claude may do

The consent screen lists exactly what the connection can do, grouped by platform, and marks it "Can make changes" if any write scope is included. There are four scopes:

  • read:meta lists campaigns, ad sets, ads and creatives and reads metrics.
  • write:meta pauses, enables, changes budgets and publishes ads on Meta.
  • read:tiktok and write:tiktok do the same for TikTok.

An agent cannot widen its own access. The token carries only the scopes you approve, and every tool re-checks its scope on the server for each call. A read:meta token cannot pause an ad or touch TikTok. Team members with the viewer role can only obtain read scopes, even if write is requested. Adship also checks that the ad account belongs to the workspace you chose.

Start with read scopes only. Let Claude audit and explain for a week. Add write access when you trust how it reasons about your account.

You can see and revoke every connection in Adship under Settings, in the MCP tab, in the Your connections list.

Guardrails that exist in the tools

Scopes control who can write. The tools themselves add checks that catch common mistakes:

  • Deletion needs two steps. delete_entities first returns a dry-run preview of what would be deleted, and only deletes when called again with confirm: true. It takes at most 50 ids per call.
  • Budget slips are refused. update_budget compares the new amount with the current one and refuses a change below one twentieth or above 20 times the current budget unless you confirm it. This catches unit mistakes, such as sending major units where minor units are expected.
  • Creative edits preview first. edit_ad_creative defaults to a dry run.
  • Bulk publish launches paused. bulk_publish defaults new ads to PAUSED and is capped at 50 ads per call, with bounded parallelism. Enabling is a separate action.
  • Going live needs a paid plan. The server checks for a completed checkout before ads are published or enabled.
  • Rate limits. The server allows 60 requests per minute per token and 120 per minute per user, and Meta and TikTok apply their own limits too. Write calls to Meta are not retried in a loop.
  • Audit trail. Each tool call is recorded, and get_change_history shows what changed.
  • Untrusted text is fenced. Ad copy from competitors comes from strangers. Adship strips invisible characters, caps length and fences that text before it goes into a prompt. That reduces the risk of a prompt injection hidden in an ad, but no filter is perfect, so do not let an agent with write access act on instructions it found inside scraped content.

Compatible clients also surface approval prompts for tools marked as write or destructive. Keep those prompts on.

Example prompts to try

Start read-only:

  • "Run a full account audit on my main Meta account for the last 7 days and list the three biggest problems."
  • "Which ads spent more than their share of budget this week with no purchases? Show spend, window and currency."
  • "Compare my top five ads by ROAS for the last 14 days and tell me what they have in common."

Once write access is on:

  • "Pause the two worst ads from that list, but show me the preview first."
  • "Draft five headline variants for the winning ad and queue them as a paused bulk publish."

Ask Claude to state the date range and account currency in every answer. A number without a window is not a number you can act on.

How this differs from the in-app agent

Adship also has an in-app agent that scans your accounts, proposes actions and waits for an explicit Approve click before anything launches or changes irreversibly. MCP is a different door into the same account. The control there comes from scopes, tool-level checks and your client's own approval prompts rather than a single approval queue, so choose scopes with that in mind.

When this is not the right tool

  • If you want a hands-off system that optimizes without you, MCP is not that. Claude acts when you ask.
  • If you need Google Ads, this server does not manage it.
  • A model can misread data. Verify any figure you plan to spend against, and treat the first week as a trial.

Try it

MCP access sits alongside the rest of the product, so you need an Adship account first. Plans and the 7-day trial are on the pricing page. Setup details and the current tool list are in the MCP documentation. If you are weighing other tools that offer MCP or CLI access, our Madgicx alternatives guide lists several.

Meet the AI Ad Operating System

Scan, spy, create, and launch Meta and TikTok ads with guarded actions taken with your approval.

Start Free
Share this article

Research. Create. Launch. Learn.

Adship connects Agent, Ad Spy, Canvas, and Learning Loop across Meta and TikTok, with bulk launch and guarded actions built in.

Start your 7-day trial