Ads Editor MCP: 336 tools for Claude, ChatGPT, Codex and Cursor
The Ads Editor MCP is a Model Context Protocol server that lets your AI assistant read and run your Meta Ads and Google Ads accounts from a plain-language request. It has 336 tools: 145 read tools and 191 action tools (counted on November 6, 2026, straight from the product code).
Recent updates also add ready-to-use prompts, standalone creative analysis and scheduled catalog media changes. The catalog below retains its snapshot date; the app shows the tools available to your account and the history of actions taken.
- 1
Generate the token
Go to app.adseditor.app/mcp and generate your access token.
- 2
Add it to your client
Add the MCP connector in Claude, ChatGPT, Codex or Cursor with the address and token shown on that page.
- 3
Ask in plain English
For example: "pause the ads with a CPA above $40 in the last 7 days" or "how much did I spend on Google Ads this month?".
- tools
- 336
- read
- 145
- action
- 191
- groups
- 41
Tool catalog
Each item is a tool the assistant can call. Read tools only query data; actiontools change something in the account. Access follows each team member's permissions and the accounts included in your plan.
Showing 336 of 336 tools.
Accounts and metrics
11 toolsRead (9)
Read data. They change nothing in the account.
list_meta_accountsLists the Meta (Facebook/Instagram) ad accounts connected to the user.
get_meta_connection_statusChecks whether a valid Meta token is connected for the user (without token details).
get_account_dashboardExecutive dashboard for a Meta ad account with campaigns, budgets, account status and health indicators (billing_error, account_status).
get_account_insightsAccount-level Meta insights with metrics aggregated across all campaigns in the period (spend, clicks, impressions, conversions, ROAS and more).
get_insights_breakdownMeta insights SEGMENTED by breakdown: age, gender, country, region, publisher_platform, platform_position, device_platform, impression_device or hourly stats in the advertiser time zone (up to 2 combined…
get_account_summaryAggregated summary of a Meta ad account in the period (unique totals: spend, impressions, clicks, conversions).
get_account_resourcesResources available in a Meta ad account for cross-account cloning: Facebook Pages, Instagram accounts, WhatsApp numbers and pixels.
get_account_infoAdministrative details of a Meta ad account: name, currency, time zone, linked Business Manager, status and the disable reason when there is one.
get_account_chargesLists the charges on a Meta ad account for the period, the same ones as the Charges button in the manager and the balance monitor: each charge with date and time and the amount billed to the card, tax included.
Action (2)
Create, edit, pause or delete something in the ad account or in Ads Editor.
activate_meta_accountsActivate Meta accounts within the plan, using available account slots, when requested.
deactivate_meta_accountsDeactivate Meta accounts within the plan after confirmation.
Campaigns
15 toolsRead (7)
Read data. They change nothing in the account.
list_campaignsLists the campaigns, ad sets or ads of a Meta ad account.
get_campaign_detailsFull details of a Meta campaign: name, objective, status, bid_strategy, budget mode, dates, special_ad_categories.
get_campaign_metricsMetrics (spend, impressions, clicks, CTR, CPM, CPC, ROAS, conversions) for a campaign, ad set or ad in the period.
get_campaigns_budgetsFetches daily and lifetime budgets of many campaigns in one batch, including the budgets of their ad sets.
get_budget_steps_statusCheck the progress of a multi-step budget change, including the current step, applied amounts and errors for items that stopped.
list_pixel_custom_eventsLists the CUSTOM events of a Meta ad account's pixel (for example DEPOSIT_3, SIGNUP) with the recent count of each.
get_objective_catalogReturns Meta's catalog of valid objective → destination → optimization combinations (with PT/EN labels, the required inputs of each combination and conversion events).
Action (8)
Create, edit, pause or delete something in the ad account or in Ads Editor.
pause_campaignPauses a Meta campaign, ad set or ad (works on any object_id).
activate_campaignActivates a Meta campaign, ad set or ad (works on any object_id).
toggle_campaignPauses or activates a Meta campaign specifically (status=ACTIVE|PAUSED).
update_campaignRenames a Meta campaign. Other fields (objective, bid_strategy) cannot be changed after creation.
update_budgetUpdates the daily budget (daily_budget) of a campaign (CBO) or ad set (ABO).
delete_campaignPermanently deletes a Meta campaign (irreversible: its ad sets and ads are deleted too).
create_campaignCreates a Meta campaign from scratch, ALWAYS PAUSED.
clone_campaignClones a Meta campaign (same account or cross-account) with its ad sets and ads.
Ad sets
11 toolsRead (4)
Read data. They change nothing in the account.
list_adsetsLists the ad sets of a Meta ad account with metrics, targeting, budget and bid_strategy.
list_adsets_for_campaignsFetches destination_type, optimization_goal and promoted_object of the ad sets of several campaigns (used when cloning to decide Page, pixel and WhatsApp overrides).
get_adset_detailsFull details of an ad set: targeting, daily_budget/lifetime_budget, bid_amount, bid_strategy, optimization_goal, destination_type, promoted_object, billing_event.
get_adset_insightsInsights for a specific ad set (spend, impressions, clicks, conversions, ROAS and more) in the period.
Action (7)
Create, edit, pause or delete something in the ad account or in Ads Editor.
pause_adsetPauses a Meta ad set specifically (status=PAUSED).
activate_adsetActivates a Meta ad set specifically (status=ACTIVE).
toggle_adsetPauses or activates an ad set (status=ACTIVE|PAUSED).
delete_adsetPermanently deletes an ad set (its ads are deleted too).
clone_adsetClones an ad set (same account or cross-account), optionally with its ads.
update_adset_bidcapUpdates the bid_amount (in the account currency) and/or bid_strategy of an ad set.
set_end_dateSets, changes or removes the end date of an existing ad set (end_time) or campaign (stop_time).
Ads and media
21 toolsRead (6)
Read data. They change nothing in the account.
list_adsLists the ads of a Meta ad account. Shortcut for list_campaigns with level=ads.
list_ads_with_insightsLists ads with thumbnails and metrics for the period.
get_ad_detailsFull details of a Meta ad, including the creative spec (object_story_spec with link_data/video_data), asset_feed_spec, degrees_of_freedom_spec, url_tags and ad set info (destination_type, promoted_object).
get_ad_insightsInsights for a specific ad (spend, impressions, clicks, conversions, ROAS, device breakdown and more) in the period.
get_ad_post_linksReturns the permalinks (public URLs) of the posts behind Meta ads, on Instagram (instagram.com/p/) or Facebook (effective_object_story_id).
get_ads_queue_statusShows the state of an ad upload queue (the same one the editor uses) by the queue_id returned by create_ads_from_media: how many went live, which failed and why.
Action (15)
Create, edit, pause or delete something in the ad account or in Ads Editor.
update_adEdits a Meta ad: name, primary text (message), headline, URL (link), UTMs (url_tags), CTA, WhatsApp messages and Advantage+ flags. Changes to text, headline, URL or UTMs create a new creative.
disable_account_enhancementsTurns off, in BULK, every automatic creative recommendation and enhancement on the ads of an account.
pause_adPauses a Meta ad specifically (status=PAUSED).
activate_adActivates a Meta ad specifically (status=ACTIVE).
toggle_adPauses or activates a Meta ad (status=ACTIVE|PAUSED).
delete_adPermanently deletes a Meta ad. Irreversible.
clone_adClones a Meta ad to another ad set (same account or cross-account).
bulk_pause_adsPauses up to 50 Meta ads in bulk. Checks ownership of each ad before pausing.
bulk_activate_adsActivates up to 50 Meta ads in bulk. Checks ownership of each ad before activating.
create_ad_from_instagram_linkCreates a Meta ad from a public Instagram URL (post, reel, tv or stories).
upload_mediaUploads a media file (image or video) to a Meta ad account.
upload_ad_mediaPuts ONE media file into Ads Editor so it can become an ad later with create_ads_from_media.
create_ads_from_mediaCreates ads from media files through the SAME queue the editor uses: one ad per file in each ad set, with sequential names (AD01, AD02...) and text, Page, Instagram and UTM inherited from the ad set when…
upload_from_driveDownloads an image or video from a Google Drive link and prepares it for create_ads_from_media.
update_ad_creativeUpdates the creative of a Meta ad with a new video (video_id) or image (image_hash).
Batch editing
3 toolsRead (1)
Read data. They change nothing in the account.
get_batch_job_statusStatus of an async batch job. Returns processing/done/partial/error with progress (done/ok/failed/total) and results.
Action (2)
Create, edit, pause or delete something in the ad account or in Ads Editor.
batch_update_objectsUpdates many Meta objects (campaigns, ad sets, ads) in parallel, synchronously.
batch_update_asyncAsynchronous version of batch_update_objects for large batches (over 50).
Audiences
12 toolsRead (5)
Read data. They change nothing in the account.
list_audiencesLists the custom audiences of a Meta ad account, used as sources for lookalikes, retargeting and more.
get_audience_sizeReturns the approximate size of a Meta audience (lower/upper bound) plus operation and delivery status.
get_audience_debugFull diagnosis of an audience: subtype, rule, rule_v2, retention_days, customer_file_source, lookalike_spec, operation_status, delivery_status, timestamps.
get_audience_jobStatus of a background audience creation job.
list_audience_campaignsLists the campaigns of a Meta ad account (id, name, objective), used as filters for campaign event audiences.
Action (7)
Create, edit, pause or delete something in the ad account or in Ads Editor.
create_audienceCreates a Meta custom audience.
create_customer_list_audienceCreates a Meta customer-list custom audience from a CSV or XLSX of emails, phones, names and cities: normalizes the values, SHA-256 hashes them and uploads.
create_engagement_audienceCreates an Instagram or Facebook ENGAGEMENT audience and builds the correct Meta rule automatically (resolves the Instagram account or Page of the ad account).
suggest_meta_audiencesAutomatic Meta audience suggestions (the Suggest audiences card): reads the account's real assets, such as Instagram, Page, campaign videos and pixel events with delivery, and returns packages to approve.
create_meta_audience_suggestionsCreates the audience packages from suggest_meta_audiences that the user approved: re-reads the account, bundles the chosen packages and starts the same background creation queue as the screen.
clone_audienceClones an existing Meta custom audience (same account or cross-account).
delete_audienceDeletes a Meta custom audience. Checks ownership: the audience must be in an account the user's Meta token can access.
Pages, Instagram and pixel
7 toolsRead (7)
Read data. They change nothing in the account.
list_fb_pagesLists the user's Facebook Pages (from several sources: me/accounts, promote_pages, Business Manager).
lookup_instagram_userSearches Instagram accounts by username (or returns the user's own when there is no query).
list_page_videosLists videos published by a Facebook Page (used as sources for video view audiences).
list_ig_videosLists the videos (Reels, IGTV, video posts) of an Instagram account for video view audiences.
list_campaign_videosLists videos already used in the campaigns of a Meta ad account (with video_id and thumbnail).
get_ig_followersReturns the follower count of the Instagram accounts linked to one or more Meta ad accounts.
list_pixel_eventsLists the conversion events (ViewContent, AddToCart, Purchase, Lead and more) tracked by a Meta pixel, used to build website event audiences.
Lead forms
5 toolsRead (2)
Read data. They change nothing in the account.
list_lead_formsLists the Page's instant forms (lead ads).
list_ads_using_lead_formsLists the ads of a Meta ad account that use an instant form (lead ad) and which form each one uses.
Action (3)
Create, edit, pause or delete something in the ad account or in Ads Editor.
set_ad_lead_formSwaps the instant form (lead ad) of an ad.
duplicate_lead_formDuplicates one of the Page's instant forms, copying questions, privacy policy, thank-you screen and context card.
create_lead_formCreates a simple instant form on the Page: name, privacy policy and destination website (both https and REQUIRED by Meta) and the standard full name, email and phone questions.
Locations
3 toolsRead (2)
Read data. They change nothing in the account.
search_meta_locationsSearches Meta locations (city, region/state, country, ZIP code, groups such as worldwide or continents) by name.
get_adsets_locationsReads the CURRENT locations (include/exclude) of each Meta ad set given, one line per ad set.
Action (1)
Create, edit, pause or delete something in the ad account or in Ads Editor.
update_adsets_locationsEdits the LOCATION of several Meta ad sets at once, keeping the rest of each one's targeting (age, gender, audiences, placements). mode="add" ADDS to the locations each ad set already has…
Devices
2 toolsRead (1)
Read data. They change nothing in the account.
list_meta_device_modelsLists the device models Meta accepts for targeting (user_device), filtered by operating system and name search.
Action (1)
Create, edit, pause or delete something in the ad account or in Ads Editor.
update_adsets_device_targetingSets mobile device and operating system targeting on Meta ad sets (user_os / user_device / OS version / Wi-Fi only).
Account notes
2 toolsRead (1)
Read data. They change nothing in the account.
list_account_notesList the manager's notes for a Meta ad account, newest first, explaining what was done and why.
Action (1)
Create, edit, pause or delete something in the ad account or in Ads Editor.
add_account_noteAdd a dated note to a Meta ad account's Notes history.
Budgets, targeting and media
8 toolsRead (2)
Read data. They change nothing in the account.
get_campaign_budget_levelCheck whether a Meta campaign uses campaign-level budgets (CBO) or ad set budgets (ABO).
get_adsets_advantage_audienceCheck Meta directly to see whether Advantage+ audience is enabled for each selected ad set.
Action (6)
Create, edit, pause or delete something in the ad account or in Ads Editor.
set_campaign_budget_levelSwitch a Meta campaign between campaign-level budgets (CBO) and ad set budgets (ABO), supplying the required budget amounts.
enable_pixel_custom_event_conversionsCreate custom conversions for a pixel's custom events so their counts and costs can appear as columns in the manager and reports.
update_adsets_placementsChange placements for Meta ad sets in bulk, preserving the rest of each ad set's targeting. Supports automatic or selected placements.
set_adsets_advantage_audienceEnable or disable Advantage+ audience for selected Meta ad sets.
set_ad_placement_mediaReplace the feed or vertical Stories and Reels media of a Meta ad.
reset_ad_placement_mediaReturn a Meta ad to one media asset for all placements, keeping its text and destination. This creates a new creative in the account.
Catalogs and scheduled media
11 toolsRead (5)
Read data. They change nothing in the account.
list_meta_catalogsList the product catalogs used by a Meta account, with product sets already used in campaigns. Business catalogs are included when permissions allow.
list_catalog_product_setsList a catalog's product sets with their IDs, names and item counts.
list_catalog_productsList catalog products with their IDs, names, retailer IDs and images.
get_catalog_job_statusCheck progress and per-item results for catalog creation or bulk editing jobs.
list_catalog_media_swapsList scheduled catalog media replacements, including product names, SKUs, scheduled times and status.
Action (6)
Create, edit, pause or delete something in the ad account or in Ads Editor.
create_catalog_adsCreate a catalog ad in each selected ad set, using its existing product set or a specified product set.
manage_meta_catalogManage product catalogs and product sets using the same operations as the app, including creation, renaming and updates.
create_catalog_ads_from_mediaTurn each image or video into a catalog product with its own product set and optionally create catalog ads in selected ad sets.
bulk_edit_meta_catalogBulk-edit catalog products or product sets, including media, links and other supported fields.
schedule_catalog_media_swapSchedule the media replacement for one catalog product at a specified date and time.
apply_catalog_media_swaps_nowApply pending catalog media replacements for this account immediately instead of waiting for their scheduled time.
Ad set capacity
2 toolsRead (1)
Read data. They change nothing in the account.
list_adset_ads_for_limitList ads that count toward an ad set's 50-ad limit, including paused ads suggested for review.
Action (1)
Create, edit, pause or delete something in the ad account or in Ads Editor.
free_up_adset_spaceFree ad set capacity by permanently deleting the selected ads. This action cannot be undone.
Accounts
11 toolsRead (6)
Read data. They change nothing in the account.
list_google_accountsLists connected Google Ads accounts (direct, managed by an MCC and MCC clients).
get_google_connection_statusChecks whether a valid Google Ads token is connected (without token details).
get_google_account_statusReal status of Google Ads accounts, the same indicator at the top of the Google manager, not just whether a token is connected: active, suspended, canceled, closed, inactive, or missing a payment method.
get_google_saved_selectionReturns the Google Ads accounts the user selected before (saved in the profile).
get_google_account_optimizationReturns the optimization_score (0 to 100) and impact estimates for a Google Ads account.
list_google_recommendationsLists Google Ads optimization recommendations (keywords, bid adjustments, text ads and more).
Action (5)
Create, edit, pause or delete something in the ad account or in Ads Editor.
save_google_accounts_selectionSaves the user's Google Ads account selection (customer_ids) in the profile.
activate_google_accountsActivate Google accounts within the plan, using available account slots, when requested.
deactivate_google_accountsDeactivate Google accounts within the plan after confirmation.
apply_google_recommendationApplies native Google Ads recommendations from list_google_recommendations, using the values Google itself suggested.
dismiss_google_recommendationDismisses native Google Ads recommendations from list_google_recommendations: they leave the list here and in Google Ads, without changing campaigns.
Campaigns and Performance Max
28 toolsRead (12)
Read data. They change nothing in the account.
list_google_campaignsLists the Google Ads campaigns of an account with status, bidding_strategy_type, optimization_score, budget and performance metrics.
get_google_campaign_metricsReturns only the metrics (spend, impressions, clicks, CTR, conversions, ROAS) of Google Ads campaigns in the period.
get_google_campaign_detailsFull details of a specific Google Ads campaign.
get_google_url_optionsReads the URL options of a Google Ads campaign: tracking template (tracking_url_template), final URL suffix (final_url_suffix, where the UTMs live) and custom parameters.
list_google_utm_campaignsList the final URL suffix used for UTM tracking at Google Ads account level and in active campaigns or campaigns with spend in the last 30 days.
get_google_campaign_locationsLists the current geo targeting of a Google Ads campaign: locations (city, region, country, with resolved names) and radius targeting around addresses (proximity).
list_google_asset_groupsLists the asset groups (Performance Max) of a Google Ads campaign with metrics.
list_google_image_assetsLists the images already uploaded to the Google Ads account (asset library), with id, dimensions, format and possible Performance Max uses (marketing 1.91:1, square 1:1, logo, portrait).
list_google_youtube_channelsList YouTube channels connected to this account for unlisted video uploads.
list_google_youtube_channel_videosList videos from a connected YouTube channel, including unlisted videos, newest first with 25 results per page.
get_google_asset_groupReads an asset group of a Performance Max campaign: name, status, final URL and every asset by type (headlines, long headlines, descriptions, business name, images, logos, videos), each asset…
get_google_account_timeseriesAggregated daily series of a Google Ads account (spend, impressions, clicks, conversions per day).
Action (16)
Create, edit, pause or delete something in the ad account or in Ads Editor.
pause_google_campaignPauses a Google Ads campaign (PAUSED).
activate_google_campaignActivates a Google Ads campaign (ENABLED).
update_google_campaign_statusChanges the status of a Google Ads campaign (ENABLED, PAUSED or REMOVED).
update_google_budgetUpdates the budget of a Google Ads campaign.
duplicate_google_campaignDuplicates a Google Ads campaign in the SAME account, copying by default its ad groups, ads (responsive search ads), keywords and targeting (location and language).
set_google_url_optionsSets the UTMs of a Google Ads campaign through the FINAL URL SUFFIX (final_url_suffix), the right place: it applies to every ad in the campaign and does not break when an ad URL changes.
apply_google_utmsSet the final URL suffix to Ads Editor's standard UTM parameters.
rename_google_campaignRenames a Google Ads campaign (only the name changes; status, budget and targeting do not).
update_google_campaign_locationsChanges the geo targeting of a Google Ads campaign.
create_google_pmax_campaignCreates a PERFORMANCE MAX campaign from scratch in Google Ads (budget + campaign + asset group with headlines, long headlines, descriptions, business name, images and logo + search themes + location), in a…
upload_google_image_assetUploads a PNG or JPEG image (base64, up to 5 MB) to the Google Ads account library and returns the asset_id for Performance Max.
upload_google_videoUploads a video to Google Ads from a URL. The server downloads a public https file, or a Google Drive link to a single file shared with anyone who has the link.
update_google_asset_groupEdits the asset group of a Performance Max campaign: adds headlines, long headlines, descriptions, business name, images (by asset_id), videos and search themes; removes assets by the link that…
update_google_biddingChanges the bid strategy of a Google Ads campaign (MANUAL_CPC, ENHANCED_CPC, TARGET_CPA, TARGET_ROAS, MAXIMIZE_CONVERSIONS, MAXIMIZE_CONVERSION_VALUE) with optional parameters.
create_google_campaignCreates a Search campaign from scratch in Google Ads (budget + campaign + ad group + keywords + RSA + optional extensions).
clone_google_campaign_to_accountClones a Google Ads campaign to ANOTHER ad account.
Ad groups and ads
16 toolsRead (5)
Read data. They change nothing in the account.
list_google_adgroupsLists the ad groups of a Google Ads campaign with bid, status and metrics.
list_all_google_adgroupsLists ALL ad groups of a Google Ads account (no campaign filter), with metrics for the period.
list_google_adsLists the ads of a Google Ads ad group (headlines, descriptions, URLs, metrics).
list_all_google_adsLists ALL ads of a Google Ads account, with metrics for the period.
get_google_ad_detailsFull details of a Google Ads ad: headlines (pinned), descriptions, display_url, final_url, tracking_template, custom_parameters, ad_strength.
Action (11)
Create, edit, pause or delete something in the ad account or in Ads Editor.
create_google_ad_groupCreates a new ad GROUP under an existing Search campaign, with keywords and, optionally, the first responsive ad.
create_google_adCreates a new responsive search ad (RSA) under an existing ad group.
rename_google_adgroupRenames a Google Ads ad group.
set_google_adgroup_target_cpaSets the target CPA of an ad GROUP (in the account currency).
update_google_adgroup_statusChanges the status of a Google Ads ad group (ENABLED, PAUSED, REMOVED).
pause_google_adgroupPauses a Google Ads ad group.
activate_google_adgroupActivates a Google Ads ad group.
duplicate_google_adgroupClones a Google Ads ad group (with ads and keywords) to another campaign.
update_google_ad_statusChanges the status of a Google Ads ad (ENABLED, PAUSED, REMOVED).
update_google_adEdits a Google responsive search ad (headlines, descriptions, final_url, tracking_template).
duplicate_google_adCopies a Google Ads responsive search ad (RSA) to the SAME ad group or to another ad group in the same account.
Keywords and search terms
9 toolsRead (4)
Read data. They change nothing in the account.
list_google_keywordsLists the keywords of a Google Ads ad group with match_type, bid, status, quality_score and metrics.
get_google_keyword_ideasGoogle Keyword Planner: suggestions with the account's REAL search volume and CPC, from a website and/or seed keywords.
list_google_keyword_search_termsReal search terms that ONE specific keyword triggered, with metrics.
list_google_search_termsGoogle Ads search terms report: real queries that triggered ads, with status (ADDED, EXCLUDED, NONE) and metrics.
Action (5)
Create, edit, pause or delete something in the ad account or in Ads Editor.
add_google_keywordAdds a keyword to a Google Ads ad group with a match_type (BROAD, PHRASE, EXACT) and an optional bid.
update_google_keywordPauses, re-enables or changes the bid of a Google Ads keyword.
remove_google_keywordRemoves a Google Ads keyword from an ad group.
add_google_negative_keywordAdds a Google Ads negative keyword at campaign level (campaign_id) or ad group level (ad_group_id).
change_google_keyword_match_typeChanges the match type of a keyword (BROAD, PHRASE, EXACT).
Extensions (assets)
7 toolsRead (2)
Read data. They change nothing in the account.
list_google_extensionsLists the Google Ads extensions (sitelinks, callouts and structured snippets) of an account or of a specific campaign (campaign_id).
list_google_account_assetsScans the account's extensions at all three levels (account, campaign and ad group) and returns them deduplicated.
Action (5)
Create, edit, pause or delete something in the ad account or in Ads Editor.
create_google_sitelinksCreates Google Ads sitelinks and links them to a campaign.
create_google_calloutsCreates Google Ads callouts (up to 25 characters each) and links them to a campaign.
create_google_snippetsCreates a Google Ads structured snippet and links it to a campaign: a header (for example Services, Brands, Courses, Destinations) and a list of values (up to 25 characters each).
update_google_extensionEdits a Google Ads extension (sitelink, callout or structured snippet).
remove_google_extensionUnlinks a Google Ads extension from the level where it is attached (account or campaign).
Conversions
5 toolsRead (2)
Read data. They change nothing in the account.
list_google_conversion_actionsLists the active conversion actions of a Google Ads account: id, name, category, type and whether it is primary.
get_campaign_conversion_goalShows the conversion goals of a Google Ads campaign: whether it uses the ACCOUNT goals (mode=account) or conversions SPECIFIC to this campaign (mode=specific), and which ones (selected_action_ids).
Action (3)
Create, edit, pause or delete something in the ad account or in Ads Editor.
create_google_conversion_actionCreates a conversion action (webpage type) in the Google Ads account and returns the TAG (global site tag + event snippet) for the user to install on the site. category must be one of: SUBMIT_LEAD_FORM, CONTACT, PURCHASE…
remove_google_conversion_actionRemoves (archives) a conversion action from the Google Ads account.
set_campaign_conversion_goalSets the conversion goals of a Google Ads campaign. mode="account" makes the campaign inherit the account goals; mode="specific" makes it optimize only for the chosen conversions (conversion_action_ids…
Demographics
2 toolsRead (1)
Read data. They change nothing in the account.
list_google_demographicsLists the demographics of a Google Ads Search ad group: gender, age range, household income and parental status, with the state of each value (default, adjusted by +/- %, excluded) and the metrics for the period…
Action (1)
Create, edit, pause or delete something in the ad account or in Ads Editor.
update_google_demographicChanges ONE demographic value of a Search ad group. action: "exclude" (the ad group stops showing to that audience), "adjust" (bid adjustment in %, from -90 to +900, for example adjustment_pct 20 =…
Hours, devices and segments
4 toolsRead (2)
Read data. They change nothing in the account.
get_google_performance_segmentsGoogle Ads performance by segment for the period: device, hour of day (0 to 23), day of week, or landing page.
get_google_campaign_scheduleShows a Google Ads campaign's ad schedule (days and hour ranges, with the bid adjustment of each; an empty list means all hours) and the bid adjustment by device.
Action (2)
Create, edit, pause or delete something in the ad account or in Ads Editor.
update_google_ad_scheduleSets the ad schedule of a Google Ads campaign.
update_google_device_bidAdjusts the bid for one device on a Google Ads campaign: MOBILE, DESKTOP or TABLET (CONNECTED_TV only when the campaign already serves it). adjustment_pct runs from -90 to 900, or -100 to exclude the device.
Negative keyword lists
6 toolsRead (1)
Read data. They change nothing in the account.
list_google_negative_keyword_listsLists the shared negative keyword lists on a Google Ads account, with the keyword count and the campaigns using each list.
Action (5)
Create, edit, pause or delete something in the ad account or in Ads Editor.
create_google_negative_keyword_listCreates a shared negative keyword list on a Google Ads account, optionally with keywords and optionally already applied to the campaign_ids, in one call.
add_google_negative_list_keywordsAdds negative keywords to a shared Google Ads list.
remove_google_negative_list_keywordsRemoves keywords from a shared Google Ads negative list by each keyword's criterion_id. list_google_negative_keyword_lists with list_id shows the ids.
apply_google_negative_keyword_listApplies a shared negative list to Google Ads campaigns, so the list's keywords block those searches.
detach_google_negative_keyword_listDetaches a shared negative list from Google Ads campaigns. The list stays and can be applied again.
Audiences
11 toolsRead (2)
Read data. They change nothing in the account.
list_google_audiencesLists the audiences on a Google Ads account: remarketing lists (website, combined and Google lists), custom segments and the audiences used in Performance Max and Demand Gen, with size and status.
list_google_audience_targetingShows the audiences attached to a campaign, ad group or asset group (Performance Max): name, type, whether it is an exclusion, the resource used to detach it or adjust the bid, the current bid adjustment and the mode.
Action (9)
Create, edit, pause or delete something in the ad account or in Ads Editor.
suggest_google_audiencesAutomatic Google audience mode: scans the account (converting search terms and keywords, landing pages with clicks, existing lists, observation audiences that convert) and returns suggestions.
suggest_google_competitor_sitesCompetitor websites for a Google custom segment (the Sites field).
create_google_custom_segmentCreates a Google Ads custom segment: people who search certain terms, visit similar sites (including competitors) or use certain apps.
create_google_remarketing_listCreates a website remarketing list in Google Ads for people who visited pages whose URL contains, equals, starts with or ends with a value, with a membership duration in days.
create_google_combined_listCreates a combination of Google Ads remarketing lists: include people in all of them (include_all) or any of them (include_any), and exclude people on other lists.
update_google_audienceEdits a Google Ads audience created in the account: renames it and, depending on the type, updates the rules and duration (website remarketing), the terms, sites and apps (custom segment) or the lists (combination).
remove_google_audienceDeletes a Google Ads audience (remarketing list, custom segment or audience).
set_google_audience_targetingAttaches, detaches or changes the mode of audiences on a Google Ads campaign, ad group or asset group. With action add, mode observation (the default) only adjusts bids, and mode targeting restricts who sees the ads.
set_google_audience_bid_adjustmentAdjusts the bid of one attached audience (observation or targeting) on a Google Ads campaign or ad group. adjustment_pct runs from -90 to +900, and 0 means no adjustment.
AI campaign creation
6 toolsRead (3)
Read data. They change nothing in the account.
list_google_campaign_templatesLists the Google campaign templates saved in Ads Editor, the same ones as the Create campaign assistant: id, name, type, source account and date.
get_google_campaign_templateApplies a saved template: returns the template fields and create_args ready for the next tool, on the customer_id account.
get_google_campaign_as_templateReads an existing Google campaign and returns its fields in the assistant's format, with create_args to create a similar one (the name ends with a copy suffix).
Action (3)
Create, edit, pause or delete something in the ad account or in Ads Editor.
draft_google_campaign_with_aiBuilds, with AI and in one step, a Google campaign draft from the site, the budget and the city: keywords, negatives, headlines, descriptions and extensions for Search, or long headlines, business name and themes for Performance Max.
save_google_campaign_templateSaves a Google campaign template in Ads Editor, the same store the assistant uses.
delete_google_campaign_templateDeletes a Google campaign template saved in Ads Editor.
Dates, labels and organization
7 toolsRead (2)
Read data. They change nothing in the account.
list_google_campaign_datesLists the start and end dates of the Google Ads campaigns on an account, in the account time zone.
list_google_labelsLists the labels on a Google Ads account, with color, how many items use each one, and which campaigns, ad groups and ads carry each label.
Action (5)
Create, edit, pause or delete something in the ad account or in Ads Editor.
set_google_campaign_datesSets, changes or removes the end date of existing Google Ads campaigns (one or many on the same account), and the start date of a campaign that has not started yet.
create_google_labelCreates a label on a Google Ads account, with a name (1 to 80 characters), a #RRGGBB background color and an optional description.
apply_google_labelApplies or removes a label on many items of one Google Ads account: campaigns, ad groups, or ads (each ad id in the GROUP~AD format).
update_google_labelRenames a Google Ads label, or changes its color (#RRGGBB) and description.
remove_google_labelRemoves a label from a Google Ads account.
Experiments
5 toolsRead (1)
Read data. They change nothing in the account.
list_google_experimentsLists Google Ads experiments (A/B tests) for an account or one campaign: status (setup, scheduled, running, ended, applied), traffic split, the original campaign and the experiment campaign.
Action (4)
Create, edit, pause or delete something in the ad account or in Ads Editor.
create_google_experimentCreates an experiment (A/B test) from one Search or Display Google Ads campaign.
end_google_experimentEnds a running Google Ads experiment: the test stops receiving traffic and the original campaign stays as it was, without the change.
apply_google_experimentApplies a running Google Ads experiment: Google carries the test change (bid or landing page) into the original campaign and ends the test.
remove_google_experimentRemoves a Google Ads experiment that is still in setup and has not been scheduled.
Shopping and Merchant Center
3 toolsRead (1)
Read data. They change nothing in the account.
list_google_merchant_centersSays whether the Google Ads account has a linked Merchant Center, which Shopping and Performance Max with products require, and lists the stores.
Action (2)
Create, edit, pause or delete something in the ad account or in Ads Editor.
set_google_pmax_merchantLinks or switches the Merchant Center on an existing Performance Max campaign, the same Merchant Center / Google Shopping block as editing an asset group. It applies to the whole campaign.
create_google_shopping_campaignCreates a standard Shopping campaign in Google Ads (budget, campaign linked to Merchant Center, an ad group with every product in the feed and the product ad), paused by default.
AI optimization
13 toolsRead (4)
Read data. They change nothing in the account.
list_google_optimizationsLists the user's GOOGLE ADS AI Optimizations (google_ads_scales engine): suggest/auto mode, autonomy flags (add negatives, pause keywords, budget, reallocation), caps, seasonality and the last_analysis of…
list_google_optimization_suggestionsLists the PENDING suggestions of the Google Optimization engine (negative terms, keyword pauses, budget, caps, PMax, extensions…) with title, explanation and numeric evidence.
get_google_pmax_draft_from_suggestionBuilds the Performance Max draft suggested by Google optimization (suggestion kind pmax_create from list_google_optimization_suggestions), starting from the account's best Search campaign: URL, location and languages.
get_google_optimization_historyHistory of ACTIONS of a Google Optimization (automatic and approved): what changed, from what to what (budgets in the account currency), the reason and the evidence, ready to display, with chips and groups…
Action (9)
Create, edit, pause or delete something in the ad account or in Ads Editor.
decide_google_suggestionsDecides several pending Google optimization suggestions at once, up to 50.
approve_google_suggestionAPPROVES a pending Google Optimization suggestion: runs the change in Google Ads (through the same write path as the engine, with validate_only first) and records the decision as training. note (optional) becomes a comment for…
dismiss_google_suggestionDECLINES a pending Google Optimization suggestion without touching the account.
toggle_google_optimizationTurns a Google Optimization on or off (pauses or resumes the engine on that account).
delete_google_optimizationDeletes a Google AI Optimization. Its suggestions and history go with it. Requires a Google AI Optimization already active on the account.
duplicate_google_optimizationDuplicates the settings of a Google AI Optimization to another account or campaign.
set_google_optimization_noteSaves the GENERAL training note of the optimization, what the engine must always take into account.
undo_google_optimization_actionUndoes ONE action the Google engine already ran (restores the previous value in Google Ads).
rate_google_optimization_actionMarks an action in the engine history as right or wrong.
Offline conversions
4 toolsRead (1)
Read data. They change nothing in the account.
get_google_offline_conversionsReads the Google offline-conversion setup on an account: the Import from clicks conversion action, integration projects, sale status, value, consent, whether it is on, and the account's upload actions.
Action (3)
Create, edit, pause or delete something in the ad account or in Ads Editor.
set_google_offline_conversionsTurns on, turns off or adjusts Google offline conversions on an account. A sale that arrives by webhook with gclid, gbraid or wbraid is sent to Google on its own, every 10 minutes.
send_google_offline_conversions_nowSends the account's new click-attributed sales to Google now. The automatic send runs every 10 minutes.
upload_google_offline_conversionSends Google one sale closed outside checkout (CRM or WhatsApp) using a single click id, gclid, gbraid or wbraid, with the order id, value and date.
AI analyses (Meta)
10 toolsRead (5)
Read data. They change nothing in the account.
list_ai_analysesLists the AI analyses already run on an account: the account's creatives, competitors from the Ads Library, creative studies and account diagnoses.
get_ai_analysisOpens the report of an AI analysis already run (account creatives, competitor, study or diagnosis): the summary, what works, what limits results, briefs, experiments, decisions, a 7-day plan and the PDF link.
get_account_creatives_analysis_statusStatus of the account creative analysis started by analyze_account_creatives.
search_competitor_adsFind a competitor's active ads in the Meta Ad Library by page name, handle or Facebook/Instagram link and save them to the account's library.
get_competitor_analysis_statusCheck the latest competitor media analyses and retrieve the analysis ID when a result is ready.
Action (5)
Create, edit, pause or delete something in the ad account or in Ads Editor.
analyze_account_creativesAnalyzes the account's own creatives with AI, video and image plus each ad's metrics: what works, what limits results, patterns and suggestions for new creatives.
run_account_diagnosisAI diagnosis of the account: a health score, this week against the previous one, and a prioritized list of what to do (pause, cut or raise budget, swap an ad, fix measurement), each action with the number behind it.
analyze_ad_creativeAnalyze a standalone image or MP4 creative from its URL with AI, using video frames and an audio transcript for video analysis.
analyze_competitor_adsAnalyze previously collected competitor ads with AI. Text mode analyzes copy; media mode also reviews images and video asynchronously.
generate_competitor_synthesisSummarize an existing competitor analysis into a thesis, funnel, test plan, creative briefs and experiments with stopping rules.
AI analyses (Google)
4 toolsRead (3)
Read data. They change nothing in the account.
list_google_ads_analysesLists the AI analyses already run on a Google Ads account: ad analyses from analyze_google_ads and account diagnoses from run_account_diagnosis with customer_id.
get_google_ads_analysisOpens a finished Google ads analysis (analysis_id from list_google_ads_analyses): problems per ad and per Performance Max asset group, and the AI copy suggestions.
search_google_competitor_adsSearch for a competitor's Google ads in the Ads Transparency Center using a website or company name.
Action (1)
Create, edit, pause or delete something in the ad account or in Ads Editor.
analyze_google_adsAnalyzes the ads on a Google Ads account: ad strength, headlines and descriptions that are weak, repeated or short, assets Google rates as Low, Google warnings and, on Performance Max, the asset-group resources.
AI budget scaling
14 toolsRead (6)
Read data. They change nothing in the account.
list_optimizationsLists every AI optimization (budget scale) the user set up, without calling the Meta API (fast).
get_optimizations_dashboardAggregated executive dashboard of all scales: summary (spend/results/MER/ROAS/CPA), top and bottom performers and states (healthy/risk/critical).
get_optimizations_health_summaryHealth summary of all scales: counts (healthy/risk/critical), average score and categories.
get_optimization_detailsDetails of a specific scale (looked up through the list and filtered by id).
get_optimization_spendSpend and results metrics of a scale (week_spent, month_spent, results_by_campaign).
get_optimization_historyRun history of a scale: actions taken, metrics, healthScore, budget adjustments.
Action (8)
Create, edit, pause or delete something in the ad account or in Ads Editor.
create_optimizationCreates an AI optimization (budget scale).
update_optimizationUpdates an existing scale. Accepts a subset of the create_optimization fields plus bid_cap.
delete_optimizationPermanently deletes a budget scale.
toggle_optimizationTurns a budget scale on or off (toggles is_active).
accept_suggested_targetAccept the suggested target for a lead or conversation optimization that has no maximum cost specified.
set_optimization_pause_at_capSet an optimization to pause campaigns at the weekly or monthly spending cap and resume automatically when the next period starts.
set_optimization_single_creativeEnable or disable the option to run one winning creative per selection in this optimization.
compare_optimization_ad_and_pageUse AI to compare the highest-spend ad's promise with the headline, opening content, price and button on its destination page.
Automated rules
8 toolsRead (4)
Read data. They change nothing in the account.
list_rulesLists the automated rules the user set up (all accounts, with an optional ad_account_id filter).
get_rule_detailsFull details of an automated rule (conditions, actions, schedule, calculation_period).
get_rule_historyRun history of a rule: action taken, affected entities, success or error, timestamp.
list_recent_rule_executionsRecent runs of all the user's rules (overall timeline).
Action (4)
Create, edit, pause or delete something in the ad account or in Ads Editor.
create_ruleCreates an automated rule. Two formats: (1) CONDITION + action, with metric/operator/threshold; (2) pure SCHEDULE, schedule_type "specific_date" with schedule_date and schedule_time and NO metric: fires the action at the time…
update_ruleUpdates an existing automated rule.
delete_rulePermanently deletes an automated rule.
toggle_ruleTurns an automated rule on or off (toggles is_active).
Alerts and notifications
10 toolsRead (4)
Read data. They change nothing in the account.
list_alertsLists every alert the user set up (metric + threshold + status).
check_alertsTriggers a manual alert check (rate limited on the backend).
list_notificationsLists the user's in-app notifications (read and unread).
get_unread_notifications_countReturns the number of unread notifications.
Action (6)
Create, edit, pause or delete something in the ad account or in Ads Editor.
create_alertCreates an alert with a metric (cpa, cpc, cpm, ctr, spend, roas), an operator (gt, lt, eq) and a threshold.
update_alertUpdates an existing alert. campaign_objectives = [] clears the objective filter (back to all campaigns).
delete_alertPermanently deletes an alert.
mark_notification_readMarks a notification as read.
mark_all_notifications_readMarks every notification as read.
delete_notificationPermanently deletes a notification.
Reports
15 toolsRead (9)
Read data. They change nothing in the account.
list_reportsLists every report created by the authenticated user (ID, title, slug, linked accounts, Instagram, Google).
get_reportRetrieves a report by its ID (UUID) or public slug.
get_report_access_logsAccess logs of a report (authenticated): IPs, user agents, durations, referrers.
get_public_reportBasic data of a public report (by slug).
get_public_report_metricsMeta Ads metrics of a public report (campaigns, spend, conversions, ROAS).
get_public_report_creativesCreatives (with thumbnails and metrics) of a public Meta report.
get_public_report_instagram_insightsInstagram account insights of a public report (followers, engagement, top posts).
get_public_report_google_metricsGoogle Ads metrics of a public report.
get_public_report_google_advancedAdvanced Google report of a public report (ad groups, cities, videos).
Action (6)
Create, edit, pause or delete something in the ad account or in Ads Editor.
create_reportCreates a new report linked to one or more Meta ad accounts, with predefined sections and a period.
update_reportUpdates fields of an existing report (title, config, is_public, linked accounts).
set_report_textsWrites, replaces or clears the two texts at the top of a report without touching the rest: comentario (the media buyer's notes, up to 2000 characters) and analise (the period analysis, up to 6000).
generate_report_analysisSpends the account's AI credits, the same cost as the report's Generate with AI button, usually 1 credit per generation.
set_report_sectionsTurns report sections on or off for one report, several or all of your reports at once, without changing the rest of the configuration.
delete_reportPermanently deletes a report.
Balance monitor and Accounts Hub
7 toolsRead (3)
Read data. They change nothing in the account.
get_account_balance_statusReturns the balance health of all the user's Meta and Google accounts: balance, days_remaining, today_spend, spend_cap, status and accounts on alert.
list_monitor_blacklistLists the accounts hidden from the Monitor (blacklist) with date and optional reason.
list_hidden_accounts_centralLists the accounts the user hid in the Accounts Hub.
Action (4)
Create, edit, pause or delete something in the ad account or in Ads Editor.
hide_account_in_monitorHides an account (Meta or Google) from the balance Monitor dashboard.
unhide_account_in_monitorShows an account that was hidden from the balance Monitor again.
hide_account_in_centralHides an account (Meta or Google) from the user's Accounts Hub.
unhide_account_in_centralShows an account that was hidden in the Accounts Hub again.
Sales and UTMs
2 toolsRead (2)
Read data. They change nothing in the account.
get_sales_summarySummary of sales received from supported checkout platforms, grouped by Meta campaign, ad set and ad, in the period.
list_integrations_utmsLists the configured UTM integrations (checkout platform projects and their linked ad accounts).
Templates, groups and settings
12 toolsRead (3)
Read data. They change nothing in the account.
list_report_templatesList Copy Report templates for Meta or Google, including selected metrics, greeting, header and footer.
list_account_groupsList Accounts Hub groups with their names, colors and included Meta and Google accounts.
get_account_ai_profileRead the account's business profile used as context by Copilot, diagnostics and AI analyses, including its business type, website and manager notes.
Action (9)
Create, edit, pause or delete something in the ad account or in Ads Editor.
apply_meta_utmsApply Ads Editor's standard campaign, ad set, ad and placement UTM parameters to ads in selected Meta campaigns through a sales tracking project.
save_report_templateSave a new Copy Report template with a name, ordered metrics and optional greeting, header and footer.
delete_report_templateDelete a saved Copy Report template by ID.
create_account_groupCreate an account group in Accounts Hub and the Meta and Google account selectors.
update_account_groupUpdate an account group's name, color or complete list of accounts. Supplied account lists replace the previous list for that platform.
delete_account_groupDelete an Accounts Hub group without disconnecting its accounts.
update_account_ai_profileUpdate the business profile used by AI, including business type, website, Instagram handle and notes about the offer and operation.
create_google_optimizationCreate an AI optimization for a Google Ads account.
update_google_optimizationUpdate an existing Google Ads AI optimization, including scope, objective, targets, budgets and automatic actions.
Account summaries
1 toolRead (1)
Read data. They change nothing in the account.
get_central_accounts_summaryGet a Meta account summary matching Accounts Hub, including spend, results, balance, status, UTM sales and daily budget.
Team and activity history
3 toolsRead (3)
Read data. They change nothing in the account.
list_team_membersList the owner's team members with their names, emails, roles, last access and page and account permissions.
get_team_activity_historyRead the team's action history in Ads Editor and, when available, Meta.
get_team_dashboardGet the team dashboard summary with presence, active days, time in the app and actions by member and account for the selected period.
Frequently asked questions
Is the Ads Editor MCP an official Meta product?
No. Ads Editor is an independent platform and the MCP server belongs to it, not to Meta or Google. It talks to both platforms through their official APIs, with the authorization (OAuth) you grant when you connect your accounts.
Does it work in ChatGPT?
Yes. It works in any client that accepts an MCP connector: ChatGPT, Claude, Codex and Cursor, among others. You add the connector with the address and token generated in Ads Editor and start asking in plain English.
Is the MCP read-only?
No. Of the 336 tools, 145 are read tools (they query metrics, campaigns and audiences) and 191 are action tools: they pause, activate, create, edit budgets and clone. Campaigns created through the MCP start paused, and there is a safety cap on daily budgets.
Where can I see what the AI did in my account?
In the history on the MCP page inside Ads Editor (Recent activity), with every tool that was called. The changes also show up in the change history of Meta and Google Ads themselves.
Further reading
- Documentation on GitHub (theusmyep/ads-editor-mcp): how to connect it to Claude, ChatGPT, Codex and Cursor, tool groups and prompt examples.
- Official MCP Registry: published as
br.com.adseditor/mcp. - Meta Ads MCP: manage ads from Claude and ChatGPT
- MCP by the numbers: 454K calls and estimated distribution
Try the MCP on your own accounts
7-day free trial. Plans start at US$ 19 per month, billed in US dollars; the pricing page shows which plans include the MCP.
Start free trial