PluginBench
MCP Server
Active
MIT

io.github.mikusnuz/meta-ads MCP Server

io.github.mikusnuz/meta-ads

135 tools for Facebook & Instagram ad campaign management via Meta Marketing API v26.0

What is the io.github.mikusnuz/meta-ads MCP server?

The meta-ads MCP server provides 135 tools for managing Facebook and Instagram ad campaigns, audiences, creatives, insights, catalogs, and more through Meta's Marketing API v26.0. It enables AI agents to create and optimize ad campaigns, manage audiences and targeting, upload media assets, track performance, and automate ad operations.

This server gives you programmatic control over Meta ad accounts. Use it to create campaigns and ad sets, manage creatives and media, build and refine audiences, check performance metrics, run A/B tests, manage product catalogs for dynamic ads, set up automation rules, and search the Facebook Ad Library. Essential for anyone automating ad operations or building AI-driven campaign management workflows.

How to install io.github.mikusnuz/meta-ads

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
Environment / auth
  • META_ADS_ACCESS_TOKEN
    required
    secret

    Meta Marketing API access token

  • META_AD_ACCOUNT_ID

    Meta Ad Account ID (e.g. act_123456)

  • META_APP_ID

    Meta App ID

  • META_APP_SECRET
    secret

    Meta App Secret

  • META_BUSINESS_ID

    Meta Business Manager ID

  • META_PIXEL_ID

    Meta Pixel ID

~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "meta-ads": {
      "command": "npx",
      "args": [
        "-y",
        "@mikusnuz/meta-ads-mcp"
      ],
      "env": {
        "META_ADS_ACCESS_TOKEN": "<YOUR_META_ADS_ACCESS_TOKEN>",
        "META_AD_ACCOUNT_ID": "<YOUR_META_AD_ACCOUNT_ID>",
        "META_APP_ID": "<YOUR_META_APP_ID>",
        "META_APP_SECRET": "<YOUR_META_APP_SECRET>",
        "META_BUSINESS_ID": "<YOUR_META_BUSINESS_ID>",
        "META_PIXEL_ID": "<YOUR_META_PIXEL_ID>"
      }
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • list_campaigns — List campaigns with filtering and pagination
  • get_campaign — Get campaign details by ID
  • create_campaign — Create a new campaign
  • update_campaign — Update campaign settings
  • delete_campaign — Delete a campaign
  • copy_campaign — Copy an existing campaign with ad sets and ads
  • get_campaign_adsets — List ad sets within a campaign
  • get_campaign_ads — List ads within a campaign
  • get_campaign_leads — Get leads from a campaign
  • list_adsets — List ad sets with filtering
  • get_adset — Get ad set details by ID
  • create_adset — Create a new ad set
  • update_adset — Update ad set settings
  • delete_adset — Delete an ad set
  • copy_adset — Copy an existing ad set to same or different campaign
  • get_adset_targeting_sentence — Get human-readable targeting description
  • get_adset_ads — List ads within an ad set
  • get_adset_leads — Get leads from an ad set
  • list_ads — List ads with filtering
  • get_ad — Get ad details by ID

Use cases

  • Create and manage full Facebook and Instagram ad campaign funnels from campaign setup through ad delivery
  • Monitor ad performance in real-time and pause underperforming campaigns based on ROAS or other metrics
  • Build and refine custom audiences, lookalike audiences, and saved audiences for precise targeting
  • Run A/B tests between ad creatives and ad sets to optimize campaign performance
  • Manage product catalogs and data feeds for dynamic product ads and retargeting campaigns
  • Automate ad operations with rules that pause, adjust budgets, or modify ads based on performance thresholds

io.github.mikusnuz/meta-ads MCP server FAQ

What is the meta-ads MCP server?

It's an MCP server that provides 135 tools for programmatic management of Facebook and Instagram ad campaigns via Meta's Marketing API v26.0. You can create campaigns, manage audiences, upload creatives, track performance, run experiments, and automate ad operations.

Is this server free to use?

The server itself is free (MIT licensed), but you need a Meta Business Account with an active ad account and a valid access token to use it. Meta's advertising services have their own costs.

How do I install this in Cursor or Claude?

Add it to your MCP configuration with: `npx -y @mikusnuz/meta-ads-mcp`. You'll need to set environment variables for META_ADS_ACCESS_TOKEN and META_AD_ACCOUNT_ID at minimum.

What authentication is required?

You need a Meta Marketing API access token (META_ADS_ACCESS_TOKEN) and your ad account ID (META_AD_ACCOUNT_ID). Optional: APP_ID, APP_SECRET, BUSINESS_ID, and PIXEL_ID for specific features.

What permissions does my access token need?

Depends on what you use: ads_management (campaign/ad CRUD), ads_read (read/insights), business_management (business tools), leads_retrieval (lead forms), catalog_management (product catalogs), and pages_read_engagement (lead forms on pages).

Can I manage multiple ad accounts?

The server is configured for one ad account per instance via META_AD_ACCOUNT_ID. To manage multiple accounts, you'd need separate MCP server instances with different tokens and account IDs.

README (reference)

Source of truth, from the repository.

meta-ads-mcp

npm version License: MIT

MCP server for the Meta Marketing API v26.0 — 135 tools for managing Facebook & Instagram ad campaigns, audiences, creatives, insights, catalogs, and more.

When to Use

Use this MCP when you need to:

  • "Create a new Facebook ad campaign" — use create_campaign, create_adset, create_ad, and create_creative to build a full funnel
  • "Check how my ads are performing today" — use get_account_insights or get_campaign_insights with today's date range
  • "Pause all campaigns with ROAS below 2" — use list_campaigns + get_campaign_insights to find underperformers, then update_campaign to pause
  • "Set up A/B test between two ad creatives" — use create_experiment to run a controlled test between ad sets
  • "Create a lookalike audience from my customers" — use create_custom_audience, add_users_to_audience, then create_lookalike_audience
  • "Upload ad images and create a carousel ad" — use upload_image for each image, then create_creative with carousel format
  • "Get a detailed performance report for last 30 days" — use create_async_report for large date ranges, then get_async_report to retrieve
  • "Search the Facebook Ad Library for competitor ads" — use search_ad_library to find public ad data
  • "Set up automated rules to pause underperforming ads" — use create_rule with conditions like CPA > threshold
  • "Manage my product catalog for dynamic ads" — use create_catalog, create_feed, and upload_feed to set up dynamic product ads

Installation

{
  "mcpServers": {
    "meta-ads": {
      "command": "npx",
      "args": ["-y", "@mikusnuz/meta-ads-mcp"],
      "env": {
        "META_ADS_ACCESS_TOKEN": "your-access-token",
        "META_AD_ACCOUNT_ID": "123456789",
        "META_APP_ID": "your-app-id",
        "META_APP_SECRET": "your-app-secret",
        "META_BUSINESS_ID": "your-business-id",
        "META_PIXEL_ID": "your-pixel-id"
      }
    }
  }
}

Environment Variables

VariableRequiredDescription
META_ADS_ACCESS_TOKENYesMeta Marketing API access token
META_AD_ACCOUNT_IDYesAd account ID (numeric, without act_ prefix)
META_APP_IDOptionalApp ID — required for token exchange/debug
META_APP_SECRETOptionalApp secret — required for token exchange/debug
META_BUSINESS_IDOptionalBusiness Manager ID — required for business tools
META_PIXEL_IDOptionalPixel ID — required for conversion tools

Tools (135)

Campaign Management (25)

ToolDescription
list_campaignsList campaigns with filtering and pagination
get_campaignGet campaign details by ID
create_campaignCreate a new campaign
update_campaignUpdate campaign settings
delete_campaignDelete a campaign
copy_campaignCopy an existing campaign with ad sets and ads
get_campaign_adsetsList ad sets within a campaign
get_campaign_adsList ads within a campaign
get_campaign_leadsGet leads from a campaign
list_adsetsList ad sets with filtering
get_adsetGet ad set details by ID
create_adsetCreate a new ad set
update_adsetUpdate ad set settings
delete_adsetDelete an ad set
copy_adsetCopy an existing ad set to same or different campaign
get_adset_targeting_sentenceGet human-readable targeting description
get_adset_adsList ads within an ad set
get_adset_leadsGet leads from an ad set
list_adsList ads with filtering
get_adGet ad details by ID
create_adCreate a new ad
update_adUpdate ad settings
delete_adDelete an ad
copy_adCopy an existing ad to same or different ad set
get_ad_previewGenerate ad preview HTML
get_delivery_estimateGet delivery estimate for an ad set

Creatives (6)

ToolDescription
list_creativesList ad creatives
get_creativeGet creative details
create_creativeCreate a new ad creative
update_creativeUpdate an ad creative
create_dynamic_creativeCreate a dynamic creative
generate_previewGenerate ad preview from creative spec without an existing ad

Media Assets (12)

ToolDescription
list_imagesList ad images
upload_imageUpload an image from a URL or local file
get_imageGet image details
delete_imageDelete an image
list_videosList ad videos
upload_videoUpload a video from a URL or local file
get_videoGet video details
delete_videoDelete a video
list_canvasesList Instant Experience canvases
get_canvasGet canvas details
create_canvasCreate a canvas
delete_canvasDelete a canvas

Audiences & Targeting (16)

ToolDescription
list_custom_audiencesList custom audiences
get_audienceGet audience details
create_custom_audienceCreate a custom audience
update_audienceUpdate audience settings
delete_audienceDelete an audience
add_users_to_audienceAdd users to a custom audience
remove_users_from_audienceRemove users from a custom audience
create_lookalike_audienceCreate a lookalike audience
get_audience_healthGet audience health, delivery status, and match rate
list_saved_audiencesList saved audiences
get_saved_audienceGet saved audience details
search_targetingSearch targeting interests, behaviors, demographics
search_locationsSearch targetable locations
search_targeting_mapBrowse targeting category tree
get_reach_estimateEstimate audience reach for targeting spec
get_targeting_suggestionsGet related targeting suggestions

Insights & Reporting (6)

ToolDescription
get_account_insightsAccount-level performance metrics
get_campaign_insightsCampaign-level performance metrics
get_adset_insightsAd set-level performance metrics
get_ad_insightsAd-level performance metrics
create_async_reportCreate an async insights report
get_async_reportPoll async report status and results

Leads (5)

ToolDescription
get_form_leadsGet leads from a lead form
get_leadGet a single lead by ID
create_lead_formCreate a new lead generation form on a page
list_lead_formsList lead gen forms for a page
get_lead_formGet lead form details

Catalog & Commerce (17)

ToolDescription
list_catalogsList product catalogs
get_catalogGet catalog details
create_catalogCreate a product catalog
update_catalogUpdate a catalog
list_product_setsList product sets in a catalog
create_product_setCreate a product set
get_product_setGet product set details
update_product_setUpdate a product set
list_productsList products in a catalog
get_productGet product details
update_productUpdate a product
list_feedsList data feeds for a catalog
create_feedCreate a data feed
upload_feedUpload data to a feed
get_feed_uploadsGet feed upload history
batch_productsBatch create, update, or delete products (up to 5,000/request)
get_batch_statusCheck status of a catalog batch operation

Automation & Rules (5)

ToolDescription
list_rulesList automated rules
get_ruleGet rule details
create_ruleCreate an automated rule
update_ruleUpdate a rule
delete_ruleDelete a rule

Experiments (5)

ToolDescription
list_experimentsList A/B test experiments
create_experimentCreate an experiment
get_experimentGet experiment details
update_experimentUpdate an experiment
get_experiment_resultsGet experiment results

Conversions (4)

ToolDescription
send_conversion_eventSend server-side conversion event via Conversions API
send_offline_eventSend an offline conversion event
list_offline_event_setsList offline event sets
create_offline_event_setCreate an offline event set

Budget & Planning (8)

ToolDescription
list_budget_schedulesList budget schedules
create_budget_scheduleCreate a budget schedule
update_budget_scheduleUpdate a budget schedule
delete_budget_scheduleDelete a budget schedule
list_rf_predictionsList Reach & Frequency predictions
create_rf_predictionCreate a Reach & Frequency prediction
get_rf_predictionGet prediction details
delete_rf_predictionDelete a prediction

Brand Safety (5)

ToolDescription
list_block_listsList publisher block lists
create_block_listCreate a block list
add_to_block_listAdd URLs/domains to a block list
remove_from_block_listRemove entries from a block list
delete_block_listDelete a block list

Account & Business (15)

ToolDescription
get_ad_accountGet ad account details
list_ad_accountsList ad accounts for a business
update_ad_accountUpdate ad account settings
get_account_activitiesGet account activity log
list_account_usersList users with access to the account
list_businessesList businesses you have access to
get_businessGet business details
list_business_ad_accountsList ad accounts in a business
list_business_usersList users in a business
add_business_userAdd a user to a business
remove_business_userRemove a user from a business
list_business_pagesList Facebook Pages owned by a business
list_business_instagram_accountsList Instagram accounts owned by a business
list_system_usersList system users for a business
create_system_userCreate a system user

Auth & Token (3)

ToolDescription
exchange_tokenExchange short-lived token for long-lived token
refresh_tokenRefresh a long-lived token
debug_tokenDebug/inspect token metadata

Ad Library (1)

ToolDescription
search_ad_librarySearch Meta Ad Library for public ad data

Resources (3)

URIDescription
ads://accountAd account overview — status, balance, currency, timezone, and total spend
ads://campaigns-overviewAll active campaigns with budget information
ads://spending-todayToday's spending summary — spend, impressions, clicks, and reach

Prompts (3)

PromptDescription
campaign_wizardStep-by-step guide to create a full ad campaign from scratch
performance_reportAnalyze ad performance with detailed breakdowns and recommendations
audience_builderBuild and refine target audiences using Meta's targeting tools

Permissions Required

Your Meta access token needs the following permissions depending on which tools you use:

PermissionTools
ads_managementAll campaign, ad set, ad, and creative CRUD operations
ads_readAll read/list operations and insights
business_managementBusiness tools, system users, account assignments
leads_retrievalLead form and lead data tools
catalog_managementCatalog, product set, product, and feed tools
pages_read_engagementLead forms linked to pages

License

MIT

Related MCP servers

MCP server for npm package management — publish, version, search, audit, and more

1
JavaScript
MIT
View repository →

PexBot simulated spot/futures trading, competitions, portfolios, and AI analytics.

1
JavaScript
MIT
View repository →

MCP server for Umami Analytics API v2 — websites, stats, events, reports, and realtime

6
TypeScript
MIT
View repository →

Unified MCP server for App Store Connect and Google Play Console — manage iOS and Android app releases, metadata, and reviews from Claude.

26
TypeScript
MIT
View repository →

Create and manage documents, spreadsheets, and presentations from your AI assistant.

View repository →

Claude 나 Codex 에서 벨로그(velog.io) 글을 읽고 쓰고 백업한다. 다이어그램과 시퀀스도 그린다. 공개 발행은 사람이 켤 때만 열린다.

View repository →