Wraps Meta Marketing API v25.0 with 135 tools covering the full lifecycle of Facebook and Instagram ad campaigns. You get campaign, ad set, and ad CRUD operations, creative management with image and video uploads, custom and lookalike audience building, insights reporting with async support for large date ranges, lead form integration, product catalog management for dynamic ads, automated rules, and A/B testing. Useful when you're building performance dashboards, automating campaign optimizations based on ROAS thresholds, bulk managing creative assets, or syncing product feeds for e-commerce retargeting. Requires Meta access token and ad account ID, with optional business manager and pixel IDs for extended functionality.
Public tool metadata for what this MCP can expose to an agent.
whoiamGet the authenticated user's identity, team, plan permissions, and Facebook token status. Call this first to verify authentication and get context.Get the authenticated user's identity, team, plan permissions, and Facebook token status. Call this first to verify authentication and get context.
No parameter schema in public metadata yet.
get_campaignRetrieve full configuration details for a single Facebook campaign by its ID, including objective, status, spending cap, and bid strategy. Use get_by_ids for multiple campaigns.1 paramsRetrieve full configuration details for a single Facebook campaign by its ID, including objective, status, spending cap, and bid strategy. Use get_by_ids for multiple campaigns.
requestobjectget_campaignsRetrieve configuration details for up to 50 Facebook campaigns in a single request by their IDs. More efficient than calling get_by_id for each campaign individually.1 paramsRetrieve configuration details for up to 50 Facebook campaigns in a single request by their IDs. More efficient than calling get_by_id for each campaign individually.
requestobjectlist_campaignsList all Facebook campaigns in an ad account with optional filtering by status, objective, or date range. Returns campaign-level configuration including objective, buying type, and budget settings.1 paramsList all Facebook campaigns in an ad account with optional filtering by status, objective, or date range. Returns campaign-level configuration including objective, buying type, and budget settings.
requestobjectpause_campaignPause a currently active Facebook campaign, stopping delivery of all its ad sets and ads simultaneously. Only applicable to campaigns with ACTIVE status. Can be reactivated without recreating the campaign structure.1 paramsPause a currently active Facebook campaign, stopping delivery of all its ad sets and ads simultaneously. Only applicable to campaigns with ACTIVE status. Can be reactivated without recreating the campaign structure.
requestobjectstart_campaignActivate an existing Facebook campaign by setting its status to ACTIVE. Use this tool when a paused campaign should resume delivery without changing its objective, budget strategy, or structure. Provide the ad account ID and the target entity ID. This is a write operation that...1 paramsActivate an existing Facebook campaign by setting its status to ACTIVE. Use this tool when a paused campaign should resume delivery without changing its objective, budget strategy, or structure. Provide the ad account ID and the target entity ID. This is a write operation that...
requestobjectset_campaign_budgetSet the exact budget value for an existing Facebook campaign in the ad account currency. Use this tool for campaign-level budgets, which are typically used in CBO (Campaign Budget Optimization). Provide account_id, entity_id, the final target budget value, and optionally apply...1 paramsSet the exact budget value for an existing Facebook campaign in the ad account currency. Use this tool for campaign-level budgets, which are typically used in CBO (Campaign Budget Optimization). Provide account_id, entity_id, the final target budget value, and optionally apply...
requestobjectincrease_campaign_budgetIncrease the budget of an existing Facebook campaign by a positive delta. This tool does not set a final budget target; it only adds to the current campaign budget. Use it when the user wants to raise budget by a percentage or by a concrete increase amount. The value is interp...1 paramsIncrease the budget of an existing Facebook campaign by a positive delta. This tool does not set a final budget target; it only adds to the current campaign budget. Use it when the user wants to raise budget by a percentage or by a concrete increase amount. The value is interp...
requestobjectdecrease_campaign_budgetDecrease the budget of an existing Facebook campaign by a positive delta. This tool does not set a final budget target; it only subtracts from the current campaign budget. Use it when the user wants to reduce budget by a percentage or by a concrete decrease amount. The value i...1 paramsDecrease the budget of an existing Facebook campaign by a positive delta. This tool does not set a final budget target; it only subtracts from the current campaign budget. Use it when the user wants to reduce budget by a percentage or by a concrete decrease amount. The value i...
requestobjectadd_text_to_campaign_nameAdd text to a Facebook campaign name. Use this tool when you need to prepend or append text to an existing campaign name, not when you need to remove or replace existing text. Provide account_id, entity_id, text, and optionally position and separator. This tool works only for...1 paramsAdd text to a Facebook campaign name. Use this tool when you need to prepend or append text to an existing campaign name, not when you need to remove or replace existing text. Provide account_id, entity_id, text, and optionally position and separator. This tool works only for...
requestobjectremove_text_from_campaign_nameRemove specific text from a Facebook campaign name. Use this tool when you need to delete existing text from the beginning, end, or any position in the name, not when you need to prepend new text or replace one substring with another. Provide account_id, entity_id, text, and o...1 paramsRemove specific text from a Facebook campaign name. Use this tool when you need to delete existing text from the beginning, end, or any position in the name, not when you need to prepend new text or replace one substring with another. Provide account_id, entity_id, text, and o...
requestobjectreplace_text_in_campaign_nameReplace one substring with another inside a Facebook campaign name. Use this tool when you need a targeted rename operation, not when you only need to prepend, append, or remove text. Provide account_id, entity_id, text_name_from, and text_name_to. This tool works only for cam...1 paramsReplace one substring with another inside a Facebook campaign name. Use this tool when you need a targeted rename operation, not when you only need to prepend, append, or remove text. Provide account_id, entity_id, text_name_from, and text_name_to. This tool works only for cam...
requestobjectget_adsetRetrieve full configuration details for a single Facebook ad set, including audience targeting, daily or lifetime budget, bid strategy, optimization goal, and schedule. Use get_by_ids for multiple ad sets.1 paramsRetrieve full configuration details for a single Facebook ad set, including audience targeting, daily or lifetime budget, bid strategy, optimization goal, and schedule. Use get_by_ids for multiple ad sets.
requestobjectget_adsetsRetrieve configuration details for up to 50 Facebook ad sets in a single request by their IDs. More efficient than calling get_by_id for each ad set individually.1 paramsRetrieve configuration details for up to 50 Facebook ad sets in a single request by their IDs. More efficient than calling get_by_id for each ad set individually.
requestobjectlist_adsets_by_accountList all Facebook ad sets in an ad account with optional filtering by status, date range, or custom conditions. Returns ad set configuration including targeting, budgets, and optimization settings.1 paramsList all Facebook ad sets in an ad account with optional filtering by status, date range, or custom conditions. Returns ad set configuration including targeting, budgets, and optimization settings.
requestobjectlist_adsets_by_campaignList all Facebook ad sets within a specific campaign. Returns targeting, budget, and bidding configuration for each ad set. Use get_insights for performance data instead of configuration.1 paramsList all Facebook ad sets within a specific campaign. Returns targeting, budget, and bidding configuration for each ad set. Use get_insights for performance data instead of configuration.
requestobjectpause_adsetPause a currently active Facebook ad set, stopping delivery of all ads within it. Only applicable to ad sets with ACTIVE status. Ads within the ad set are also paused. The ad set can be reactivated later.1 paramsPause a currently active Facebook ad set, stopping delivery of all ads within it. Only applicable to ad sets with ACTIVE status. Ads within the ad set are also paused. The ad set can be reactivated later.
requestobjectget_adset_activitiesRetrieve activity for a specific Facebook ad set. This tool queries the parent ad account activity log and filters it to the requested ad set, so use it to answer questions like what happened to this ad set, when it happened, and who triggered it. Prefer event_time as the true...1 paramsRetrieve activity for a specific Facebook ad set. This tool queries the parent ad account activity log and filters it to the requested ad set, so use it to answer questions like what happened to this ad set, when it happened, and who triggered it. Prefer event_time as the true...
requestobjectstart_adsetActivate an existing Facebook ad set by setting its status to ACTIVE. Use this tool to resume delivery for an ad set that already has its budget, schedule, and targeting configured. Provide the ad account ID and the target entity ID. This is a write operation that updates stat...1 paramsActivate an existing Facebook ad set by setting its status to ACTIVE. Use this tool to resume delivery for an ad set that already has its budget, schedule, and targeting configured. Provide the ad account ID and the target entity ID. This is a write operation that updates stat...
requestobjectset_adset_budgetSet the exact budget value for an existing Facebook ad set in the ad account currency. Use this tool for ad set-level budgets, which are typically used in ABO (Ad Set Budget Optimization). Provide account_id, entity_id, the final target budget value, and optionally apply_to. T...1 paramsSet the exact budget value for an existing Facebook ad set in the ad account currency. Use this tool for ad set-level budgets, which are typically used in ABO (Ad Set Budget Optimization). Provide account_id, entity_id, the final target budget value, and optionally apply_to. T...
requestobjectincrease_adset_budgetIncrease the budget of an existing Facebook ad set by a positive delta. This tool does not set a final budget target; it only adds to the current ad set budget. Use it when the user wants to raise budget by a percentage or by a concrete increase amount. The value is interprete...1 paramsIncrease the budget of an existing Facebook ad set by a positive delta. This tool does not set a final budget target; it only adds to the current ad set budget. Use it when the user wants to raise budget by a percentage or by a concrete increase amount. The value is interprete...
requestobjectdecrease_adset_budgetDecrease the budget of an existing Facebook ad set by a positive delta. This tool does not set a final budget target; it only subtracts from the current ad set budget. Use it when the user wants to reduce budget by a percentage or by a concrete decrease amount. The value is in...1 paramsDecrease the budget of an existing Facebook ad set by a positive delta. This tool does not set a final budget target; it only subtracts from the current ad set budget. Use it when the user wants to reduce budget by a percentage or by a concrete decrease amount. The value is in...
requestobjectset_adset_bidSet an exact bid value for an existing Facebook ad set. Use this tool when you want to set the target bid directly, not adjust it by a delta. Provide account_id, entity_id, value, and optionally apply_to. This tool works only for ad sets. value is the final bid in account curr...1 paramsSet an exact bid value for an existing Facebook ad set. Use this tool when you want to set the target bid directly, not adjust it by a delta. Provide account_id, entity_id, value, and optionally apply_to. This tool works only for ad sets. value is the final bid in account curr...
requestobjectdecrease_adset_bidDecrease the bid of an existing Facebook ad set by a positive delta. Use this tool when you want to lower the current bid by a percentage, currency amount, or Facebook bid representation, not when you want to set an exact final bid directly. Provide account_id, entity_id, valu...1 paramsDecrease the bid of an existing Facebook ad set by a positive delta. Use this tool when you want to lower the current bid by a percentage, currency amount, or Facebook bid representation, not when you want to set an exact final bid directly. Provide account_id, entity_id, valu...
requestobjectincrease_adset_spending_limitIncrease the spending limits of an existing Facebook ad set by delta amounts. This tool does not set final target limits; it adds to the current minimum and maximum spending limits. Provide account_id, entity_id, minimum_value, maximum_value, measuring_unit, and optionally app...1 paramsIncrease the spending limits of an existing Facebook ad set by delta amounts. This tool does not set final target limits; it adds to the current minimum and maximum spending limits. Provide account_id, entity_id, minimum_value, maximum_value, measuring_unit, and optionally app...
requestobjectdecrease_adset_spending_limitDecrease the spending limits of an existing Facebook ad set by delta amounts. This tool does not set final target limits; it subtracts from the current minimum and maximum spending limits. Provide account_id, entity_id, minimum_decrease, maximum_decrease, measuring_unit, and o...1 paramsDecrease the spending limits of an existing Facebook ad set by delta amounts. This tool does not set final target limits; it subtracts from the current minimum and maximum spending limits. Provide account_id, entity_id, minimum_decrease, maximum_decrease, measuring_unit, and o...
requestobjectadd_text_to_adset_nameAdd text to a Facebook ad set name. Use this tool when you need to prepend or append text to an existing ad set name, not when you need to remove or replace existing text. Provide account_id, entity_id, text, and optionally position and separator. This tool works only for ad s...1 paramsAdd text to a Facebook ad set name. Use this tool when you need to prepend or append text to an existing ad set name, not when you need to remove or replace existing text. Provide account_id, entity_id, text, and optionally position and separator. This tool works only for ad s...
requestobjectremove_text_from_adset_nameRemove specific text from a Facebook ad set name. Use this tool when you need to delete existing text from the beginning, end, or any position in the name, not when you need to prepend new text or replace one substring with another. Provide account_id, entity_id, text, and opt...1 paramsRemove specific text from a Facebook ad set name. Use this tool when you need to delete existing text from the beginning, end, or any position in the name, not when you need to prepend new text or replace one substring with another. Provide account_id, entity_id, text, and opt...
requestobjectreplace_text_in_adset_nameReplace one substring with another inside a Facebook ad set name. Use this tool when you need a targeted rename operation, not when you only need to prepend, append, or remove text. Provide account_id, entity_id, text_name_from, and text_name_to. This tool works only for ad se...1 paramsReplace one substring with another inside a Facebook ad set name. Use this tool when you need a targeted rename operation, not when you only need to prepend, append, or remove text. Provide account_id, entity_id, text_name_from, and text_name_to. This tool works only for ad se...
requestobjectget_adRetrieve full configuration details for a single Facebook ad by its ID, including status, creative, bidding, and targeting inherited from its parent ad set. Use get_by_ids to fetch multiple ads at once.1 paramsRetrieve full configuration details for a single Facebook ad by its ID, including status, creative, bidding, and targeting inherited from its parent ad set. Use get_by_ids to fetch multiple ads at once.
requestobjectget_adsRetrieve configuration details for up to 50 Facebook ads in a single request by their IDs. More efficient than calling get_by_id for each ad individually.1 paramsRetrieve configuration details for up to 50 Facebook ads in a single request by their IDs. More efficient than calling get_by_id for each ad individually.
requestobjectlist_ads_by_accountList all Facebook ads belonging to an ad account. Supports filtering by effective status, date range, and custom field conditions. Use get_by_adset or get_by_campaign when you need ads from a specific parent entity.1 paramsList all Facebook ads belonging to an ad account. Supports filtering by effective status, date range, and custom field conditions. Use get_by_adset or get_by_campaign when you need ads from a specific parent entity.
requestobjectlist_ads_by_campaignList all Facebook ads across all ad sets within a specific campaign. Useful for getting a complete view of ads under a campaign without querying each ad set separately.1 paramsList all Facebook ads across all ad sets within a specific campaign. Useful for getting a complete view of ads under a campaign without querying each ad set separately.
requestobjectlist_ads_by_adsetList all Facebook ads within a specific ad set. Returns ad configuration data including creative, status, and bidding. Use get_insights if you need performance metrics instead of configuration.1 paramsList all Facebook ads within a specific ad set. Returns ad configuration data including creative, status, and bidding. Use get_insights if you need performance metrics instead of configuration.
requestobjectpause_adPause a currently active Facebook ad to stop delivery immediately without deleting it. Only applicable to ads with ACTIVE status. The ad can be reactivated later. Use delete only if the ad is no longer needed.1 paramsPause a currently active Facebook ad to stop delivery immediately without deleting it. Only applicable to ads with ACTIVE status. The ad can be reactivated later. Use delete only if the ad is no longer needed.
requestobjectstart_adActivate an existing Facebook ad by setting its delivery status to ACTIVE. Use this tool when an ad already exists and should resume serving without changing its creative, budget, or targeting. Provide the ad account ID and the target entity ID. This is a write operation that...1 paramsActivate an existing Facebook ad by setting its delivery status to ACTIVE. Use this tool when an ad already exists and should resume serving without changing its creative, budget, or targeting. Provide the ad account ID and the target entity ID. This is a write operation that...
requestobjectadd_text_to_ad_nameAdd text to a Facebook ad name. Use this tool when you need to prepend or append text to an existing ad name, not when you need to remove or replace existing text. Provide account_id, entity_id, text, and optionally position and separator. This tool works only for ads. entity_...1 paramsAdd text to a Facebook ad name. Use this tool when you need to prepend or append text to an existing ad name, not when you need to remove or replace existing text. Provide account_id, entity_id, text, and optionally position and separator. This tool works only for ads. entity_...
requestobjectremove_text_from_ad_nameRemove specific text from a Facebook ad name. Use this tool when you need to delete existing text from the beginning, end, or any position in the name, not when you need to prepend new text or replace one substring with another. Provide account_id, entity_id, text, and optiona...1 paramsRemove specific text from a Facebook ad name. Use this tool when you need to delete existing text from the beginning, end, or any position in the name, not when you need to prepend new text or replace one substring with another. Provide account_id, entity_id, text, and optiona...
requestobjectreplace_text_in_ad_nameReplace one substring with another inside a Facebook ad name. Use this tool when you need a targeted rename operation, not when you only need to prepend, append, or remove text. Provide account_id, entity_id, text_name_from, and text_name_to. This tool works only for ads. enti...1 paramsReplace one substring with another inside a Facebook ad name. Use this tool when you need a targeted rename operation, not when you only need to prepend, append, or remove text. Provide account_id, entity_id, text_name_from, and text_name_to. This tool works only for ads. enti...
requestobjectget_campaign_insightsRetrieve aggregated performance metrics for a Facebook campaign, combining data from all its ad sets and ads. Includes spend, ROAS, reach, impressions, and conversions. Supports time breakdowns and date presets.1 paramsRetrieve aggregated performance metrics for a Facebook campaign, combining data from all its ad sets and ads. Includes spend, ROAS, reach, impressions, and conversions. Supports time breakdowns and date presets.
requestobjectget_adset_insightsRetrieve performance metrics for a specific Facebook ad set, including spend, reach, impressions, and conversions. Aggregates data from all ads within the ad set. Supports breakdowns and date presets.1 paramsRetrieve performance metrics for a specific Facebook ad set, including spend, reach, impressions, and conversions. Aggregates data from all ads within the ad set. Supports breakdowns and date presets.
requestobjectget_ad_insightsRetrieve performance metrics for a specific Facebook ad, including spend, impressions, clicks, CTR, CPM, and ROAS. Supports breakdown dimensions (age, gender, placement) and custom date ranges or presets like last_7d.1 paramsRetrieve performance metrics for a specific Facebook ad, including spend, impressions, clicks, CTR, CPM, and ROAS. Supports breakdown dimensions (age, gender, placement) and custom date ranges or presets like last_7d.
requestobjectget_ad_account_insightsRetrieve aggregated performance metrics across all campaigns for a Facebook ad account over a specified date range. Supports level parameter (account, campaign, adset, ad) and breakdown dimensions for granular analysis.1 paramsRetrieve aggregated performance metrics across all campaigns for a Facebook ad account over a specified date range. Supports level parameter (account, campaign, adset, ad) and breakdown dimensions for granular analysis.
requestobjectlist_ad_accountsList all Facebook ad accounts accessible to the authenticated user. Returns each account's ID, name, status, and currency. Use this tool first to discover available accounts before making account-specific API calls.1 paramsList all Facebook ad accounts accessible to the authenticated user. Returns each account's ID, name, status, and currency. Use this tool first to discover available accounts before making account-specific API calls.
requestobjectget_ad_accountRetrieve comprehensive details for a Facebook ad account, including its current status (ACTIVE, DISABLED, etc.), currency, timezone, billing information, spending limits, and business ownership. Useful for account health checks.1 paramsRetrieve comprehensive details for a Facebook ad account, including its current status (ACTIVE, DISABLED, etc.), currency, timezone, billing information, spending limits, and business ownership. Useful for account health checks.
requestobjectget_ad_account_activitiesRetrieve the Facebook ad account activity log. Use this tool to answer questions like what changed, when it changed, and who performed the action. Prefer event_time as the actual action timestamp. Each activity item may include event_type, translated_event_type, actor_name, ob...1 paramsRetrieve the Facebook ad account activity log. Use this tool to answer questions like what changed, when it changed, and who performed the action. Prefer event_time as the actual action timestamp. Each activity item may include event_type, translated_event_type, actor_name, ob...
requestobjectget_creativeRetrieve full configuration details for a single Facebook ad creative by its ID, including all media assets, text elements, call-to-action, and tracking parameters. Use get_by_ids for multiple creatives.1 paramsRetrieve full configuration details for a single Facebook ad creative by its ID, including all media assets, text elements, call-to-action, and tracking parameters. Use get_by_ids for multiple creatives.
requestobjectget_creativesRetrieve configuration details for up to 50 Facebook ad creatives in a single batch request. Uses Facebook's multi-ID lookup endpoint, which is more efficient than individual requests.1 paramsRetrieve configuration details for up to 50 Facebook ad creatives in a single batch request. Uses Facebook's multi-ID lookup endpoint, which is more efficient than individual requests.
requestobjectlist_creatives_by_adRetrieve the ad creative linked to a specific Facebook ad. Provide account_id and ad_id to fetch the single creative object attached to that ad, including media asset references and copy fields when available.1 paramsRetrieve the ad creative linked to a specific Facebook ad. Provide account_id and ad_id to fetch the single creative object attached to that ad, including media asset references and copy fields when available.
requestobjectMCP server for the Meta Marketing API v25.0 — 135 tools for managing Facebook & Instagram ad campaigns, audiences, creatives, insights, catalogs, and more.
Use this MCP when you need to:
create_campaign, create_adset, create_ad, and create_creative to build a full funnelget_account_insights or get_campaign_insights with today's date rangelist_campaigns + get_campaign_insights to find underperformers, then update_campaign to pausecreate_experiment to run a controlled test between ad setscreate_custom_audience, add_users_to_audience, then create_lookalike_audienceupload_image for each image, then create_creative with carousel formatcreate_async_report for large date ranges, then get_async_report to retrievesearch_ad_library to find public ad datacreate_rule with conditions like CPA > thresholdcreate_catalog, create_feed, and upload_feed to set up dynamic product ads{
"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"
}
}
}
}
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| 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 |
| Tool | Description |
|---|---|
search_ad_library | Search Meta Ad Library for public ad data |
| 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 |
| 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 |
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 |
MIT
META_ADS_ACCESS_TOKEN*secretMeta Marketing API access token
META_AD_ACCOUNT_IDMeta Ad Account ID (e.g. act_123456)
META_APP_IDMeta App ID
META_APP_SECRETsecretMeta App Secret
META_BUSINESS_IDMeta Business Manager ID
META_PIXEL_IDMeta Pixel ID
io.github.shelvick/shopify-subscription-reconciliation
zleventer/google-ads-mcp
csoai-org/meok-stripe-acp-checkout-mcp
io.github.mharnett/google-ads
csoai-org/stripe-billing-mcp
co.pipeboard/google-ads-mcp