Change existing Meta ads objects
meta_ads_updateChanges existing objects in a Meta ad account. Call meta_ads_update with {"action":"execute","tool_name":"pause_ad","arguments":{…}}; arguments carry the fields of the operation and "connection" when several ad accounts are connected. Operations:
pause_ad: Pause one ad, or up to ten at once. To turn them back on: launch_ad (approved by a signed-in person) or Ads Manager. Free pause.
launch_adset: Turn on delivery for an ad set: the campaign, the ad set, and its ads switch to ACTIVE. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
pause_campaign: Pause a whole campaign, together with all of its ad sets and ads. Free pause.
launch_ad: Turn on a single ad. If its ad set and campaign are on, it starts spending immediately. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
pause_adset: Pause delivery of an ad set, or up to ten at once. Spend stops. Free pause.
rename_object: Rename a campaign, ad set, ad or creative. Only the name changes.
update_budget: Raise or change a budget on an ad set or a campaign. The amount is in regular currency units. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
lower_budget: Lower a budget, or cap what an ad set may take from a campaign budget. It can only go down. Only reduces spend, and counts toward the monthly change limit.
swap_ad_creative: Replace the creative on an ad that cannot deliver right now. Nothing is turned on and spend does not change.
swap_live_ad_creative: Replace the creative on an ad that can deliver. The ad goes back to Meta review and may restart learning. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
narrow_adset_targeting: Narrow an ad set's audience: fewer locations, a tighter age range, more exclusions, fewer placements. It cannot widen anything.
update_adset_targeting: Change an ad set's audience: locations, age, gender, detailed targeting, custom audiences, placements. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
update_ad_tracking: Change the URL parameters on an ad, or on every ad in an ad set, or opt an ad out of multi-advertiser ads. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
launch_campaign: Turn on a campaign. Every ad set in it with its own ACTIVE status starts spending. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
update_schedule: Change when an ad set or a campaign starts and stops delivering. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
shorten_schedule: Bring the end of a schedule forward, or push a start that has not arrived yet later. It can only shorten. Only reduces spend, and counts toward the monthly change limit.
update_bid: Change how Meta bids for an ad set, or the bid strategy of a campaign. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
manage_scheduled_task: Pause or resume a monitor or a scheduled brief. Changes only this server’s own monitor, nothing in Meta, and never counts toward the monthly change limit.
manage_action: Approve or reject one prepared action. Approving runs its change the usual way; an increase in spend needs a signed-in person. Only reduces spend, and counts toward the monthly change limit.
apply_signal_actions: Apply every prepared action of one finding that can be applied from chat. Only reduces spend, and counts toward the monthly change limit.
update_audience: Rename a custom audience or change its description. Who is in it stays the same.
set_campaign_spend_cap: Set, change or remove a campaign's spending limit: the most it may spend in total before it stops. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
update_ab_test: Rename an A/B test, change its description or end time, or cancel it.
apply_recommendation: Apply one of Meta's recommendations from get_opportunity_score: Meta makes the change it describes. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
save_business_profile: Save the business profile of this ad account — or of every connected Meta ad account. Only the fields given change. Changes only this server’s own monitor, nothing in Meta, and never counts toward the monthly change limit.
update_optimization_goal: Change what an ad set of a traffic or awareness campaign optimises for: link clicks, landing page views, reach. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
update_catalog_campaign: Change an existing catalog campaign: name, status, budget, spend cap, bid strategy, schedule or the catalog it promotes. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
update_catalog_adset: Change an existing catalog ad set: budget, bid, optimisation, schedule and the product set it promotes. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
update_catalog_ad: Change a catalog ad: its name, status, or the creative — either another creative id, or a rebuilt product template. CAN INCREASE SPEND, and this account allows it from chat: say so before executing.
update_catalog: Rename a product catalog. Its products, feeds and product sets stay as they are.
update_product: Change fields of one catalog product: name, price, sale price, availability, link, image, brand.
update_product_set: Rename a product set or change its rule. Ad sets that promote it start showing the products the new rule matches.
update_product_feed: Rename a product feed, or change its file link, how often it is fetched, or its default currency.
update_feed_rule: Change the parameters of one rule of a product feed. Its attribute and type stay; Meta does not allow deleting rules.
set_adset_whatsapp_number: Change the WhatsApp number an ad set sends people to. CAN INCREASE SPEND, and this account allows it from chat: say so before executing. Every operation takes two calls with the same tool_name and arguments; the first makes no change in Meta and returns a preview. If the operation cannot increase spend, the preview includes confirm_token (accepted for 10 minutes): call again with it added to arguments to apply the change. An operation that can increase spend is never executed from chat: its preview has no token, only an approve_url for a signed-in person. Pauses are free, can only reduce spend and never count toward the monthly change limit; other changes count when executed. For changes other than pauses: If the same change was already executed or its outcome is unknown, the preview has no confirm_token; check with a read first. If a proposal for the same change is still pending after its confirm_token expired, the call returns awaiting_human and only a person can apply it via approve_url. For pauses: After an unknown outcome a new preview includes confirm_token: repeating a pause is safe. If the same pause was already executed, a repeat within 15 minutes returns already_done, and a later preview has no confirm_token. If the confirm_token of a pause expired, calling again without confirm_token returns a working confirm_token for the same proposal. Input schemas: get_tool_schema for named operations; meta_ads_read {"action":"list_tools"} lists every operation with its field names.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| action | Yes | Always "execute". | |
| arguments | Yes | The fields of the operation, "connection" when several ad accounts are connected, and on the second call the confirm_token from the first call. | |
| tool_name | Yes | The operation name, e.g. pause_ad. |