meta-ads-mcp

MCP server for the Meta Marketing API v25.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
| Variable | Required | Description |
|---|
META_ADS_ACCESS_TOKEN | Yes | Meta Marketing API access token |
META_AD_ACCOUNT_ID | Yes | Ad account ID (numeric, without act_ prefix) |
META_APP_ID | Optional | App ID — required for token exchange/debug |
META_APP_SECRET | Optional | App secret — required for token exchange/debug |
META_BUSINESS_ID | Optional | Business Manager ID — required for business tools |
META_PIXEL_ID | Optional | Pixel ID — required for conversion tools |
Tools (135)
Campaign Management (25)
| Tool | Description |
|---|
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 |
create_ad | Create a new ad |
update_ad | Update ad settings |
delete_ad | Delete an ad |
copy_ad | Copy an existing ad to same or different ad set |
get_ad_preview | Generate ad preview HTML |
get_delivery_estimate | Get delivery estimate for an ad |
Creatives (6)
| Tool | Description |
|---|
list_creatives | List ad creatives |
get_creative | Get creative details |
create_creative | Create a new ad creative |
update_creative | Update an ad creative |
create_dynamic_creative | Create a dynamic creative |
generate_preview | Generate ad preview from creative spec without an existing ad |
Media Assets (12)
| Tool | Description |
|---|
list_images | List ad images |
upload_image | Upload an image from URL |
get_image | Get image details |
delete_image | Delete an image |
list_videos | List ad videos |
upload_video | Upload a video from URL |
get_video | Get video details |
delete_video | Delete a video |
list_canvases | List Instant Experience canvases |
get_canvas | Get canvas details |
create_canvas | Create a canvas |
delete_canvas | Delete a canvas |
Audiences & Targeting (16)
| Tool | Description |
|---|
list_custom_audiences | List custom audiences |
get_audience | Get audience details |
create_custom_audience | Create a custom audience |
update_audience | Update audience settings |
delete_audience | Delete an audience |
add_users_to_audience | Add users to a custom audience |
remove_users_from_audience | Remove users from a custom audience |
create_lookalike_audience | Create a lookalike audience |
get_audience_health | Get audience health, delivery status, and match rate |
list_saved_audiences | List saved audiences |
get_saved_audience | Get saved audience details |
search_targeting | Search targeting interests, behaviors, demographics |
search_locations | Search targetable locations |
search_targeting_map | Browse targeting category tree |
get_reach_estimate | Estimate audience reach for targeting spec |
get_targeting_suggestions | Get related targeting suggestions |
Insights & Reporting (6)
| Tool | Description |
|---|
get_account_insights | Account-level performance metrics |
get_campaign_insights | Campaign-level performance metrics |
get_adset_insights | Ad set-level performance metrics |
get_ad_insights | Ad-level performance metrics |
create_async_report | Create an async insights report |
get_async_report | Poll async report status and results |
Leads (5)
| Tool | Description |
|---|
get_form_leads | Get leads from a lead form |
get_lead | Get a single lead by ID |
create_lead_form | Create a new lead generation form on a page |
list_lead_forms | List lead gen forms for a page |
get_lead_form | Get lead form details |
Catalog & Commerce (17)
| Tool | Description |
|---|
list_catalogs | List product catalogs |
get_catalog | Get catalog details |
create_catalog | Create a product catalog |
update_catalog | Update a catalog |
list_product_sets | List product sets in a catalog |
create_product_set | Create a product set |
get_product_set | Get product set details |
update_product_set | Update a product set |
list_products | List products in a catalog |
get_product | Get product details |
update_product | Update a product |
list_feeds | List data feeds for a catalog |
create_feed | Create a data feed |
upload_feed | Upload data to a feed |
get_feed_uploads | Get feed upload history |
batch_products | Batch create, update, or delete products (up to 5,000/request) |
get_batch_status | Check status of a catalog batch operation |
Automation & Rules (5)
| Tool | Description |
|---|
list_rules | List automated rules |
get_rule | Get rule details |
create_rule | Create an automated rule |
update_rule | Update a rule |
delete_rule | Delete a rule |
Experiments (5)
| Tool | Description |
|---|
list_experiments | List A/B test experiments |
create_experiment | Create an experiment |
get_experiment | Get experiment details |
update_experiment | Update an experiment |
get_experiment_results | Get experiment results |
Conversions (4)
| Tool | Description |
|---|
send_conversion_event | Send server-side conversion event via Conversions API |
send_offline_event | Send an offline conversion event |
list_offline_event_sets | List offline event sets |
create_offline_event_set | Create an offline event set |
Budget & Planning (8)
| Tool | Description |
|---|
list_budget_schedules | List budget schedules |
create_budget_schedule | Create a budget schedule |
update_budget_schedule | Update a budget schedule |
delete_budget_schedule | Delete a budget schedule |
list_rf_predictions | List Reach & Frequency predictions |
create_rf_prediction | Create a Reach & Frequency prediction |
get_rf_prediction | Get prediction details |
delete_rf_prediction | Delete a prediction |
Brand Safety (5)
| Tool | Description |
|---|
list_block_lists | List publisher block lists |
create_block_list | Create a block list |
add_to_block_list | Add URLs/domains to a block list |
remove_from_block_list | Remove entries from a block list |
delete_block_list | Delete a block list |
Account & Business (15)
| Tool | Description |
|---|
get_ad_account | Get ad account details |
list_ad_accounts | List ad accounts for a business |
update_ad_account | Update ad account settings |
get_account_activities | Get account activity log |
list_account_users | List users with access to the account |
list_businesses | List businesses you have access to |
get_business | Get business details |
list_business_ad_accounts | List ad accounts in a business |
list_business_users | List users in a business |
add_business_user | Add a user to a business |
remove_business_user | Remove a user from a business |
list_business_pages | List Facebook Pages owned by a business |
list_business_instagram_accounts | List Instagram accounts owned by a business |
list_system_users | List system users for a business |
create_system_user | Create a system user |
Auth & Token (3)
| Tool | Description |
|---|
exchange_token | Exchange short-lived token for long-lived token |
refresh_token | Refresh a long-lived token |
debug_token | Debug/inspect token metadata |
Ad Library (1)
| Tool | Description |
|---|
search_ad_library | Search Meta Ad Library for public ad data |
Resources (3)
| URI | Description |
|---|
ads://account | Ad account overview — status, balance, currency, timezone, and total spend |
ads://campaigns-overview | All active campaigns with budget information |
ads://spending-today | Today's spending summary — spend, impressions, clicks, and reach |
Prompts (3)
| Prompt | Description |
|---|
campaign_wizard | Step-by-step guide to create a full ad campaign from scratch |
performance_report | Analyze ad performance with detailed breakdowns and recommendations |
audience_builder | Build 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:
| Permission | Tools |
|---|
ads_management | All campaign, ad set, ad, and creative CRUD operations |
ads_read | All read/list operations and insights |
business_management | Business tools, system users, account assignments |
leads_retrieval | Lead form and lead data tools |
catalog_management | Catalog, product set, product, and feed tools |
pages_read_engagement | Lead forms linked to pages |
License
MIT