apply_change
ChatGPTExecute a proposal from any propose_* tool after the user confirms it. Server-side budget hard-limits still apply. Returns the result and whether it can be undone.
get_account_context
ChatGPTCall FIRST before analyzing or changing this company. Returns the owner's standing rules (conversion events, funnel data sources, targets, currency, scope), knowledge-base sheets/docs, skills, and connected ad accounts. These rules override your defaults.
list_ad_sets
ChatGPTList ad sets on one connected ad platform. Read-only. Ad set = Meta ad set, Google/Microsoft/TikTok/Pinterest/Reddit/ChatGPT ad group, X or DV360 line item, LinkedIn campaign (LinkedIn's campaign group is the campaign).
list_ads
ChatGPTList ads on one connected ad platform. Read-only.
list_campaigns
ChatGPTList campaigns on one connected ad platform: ids, names, status. Read-only.
propose_create_ad
ChatGPTStage a new ad. Does NOT change the account: returns proposal_id and a preview. Show the preview; call apply_change(proposal_id) only after the user confirms.
propose_create_ad_set
ChatGPTStage a new ad set. Does NOT change the account: returns proposal_id and a preview. Show the preview; call apply_change(proposal_id) only after the user confirms. Ad set = Meta ad set, Google/Microsoft/TikTok/Pinterest/Reddit/ChatGPT ad group, X or DV360 line item, LinkedIn campaign (LinkedIn's campaign group is the campaign).
propose_create_campaign
ChatGPTStage a new campaign (paused where the platform allows). Does NOT change the account: returns proposal_id and a preview. Show the preview; call apply_change(proposal_id) only after the user confirms.
propose_delete_ad
ChatGPTStage deleting an ad. Applying it is permanent. Does NOT change the account: returns proposal_id and a preview. Show the preview; call apply_change(proposal_id) only after the user confirms.
propose_delete_ad_set
ChatGPTStage deleting an ad set. Applying it is permanent. Does NOT change the account: returns proposal_id and a preview. Show the preview; call apply_change(proposal_id) only after the user confirms.
propose_delete_campaign
ChatGPTStage deleting a campaign. Applying it is permanent. Does NOT change the account: returns proposal_id and a preview. Show the preview; call apply_change(proposal_id) only after the user confirms.
propose_update_ad
ChatGPTStage a change to an existing ad. Does NOT change the account: returns proposal_id and a preview. Show the preview; call apply_change(proposal_id) only after the user confirms.
propose_update_ad_set
ChatGPTStage a change to an existing ad set. Does NOT change the account: returns proposal_id and a preview. Show the preview; call apply_change(proposal_id) only after the user confirms.
propose_update_campaign
ChatGPTStage a change to an existing campaign. Does NOT change the account: returns proposal_id and a preview. Show the preview; call apply_change(proposal_id) only after the user confirms.
query_campaign_performance
ChatGPTCampaign performance across ALL connected ad platforms (Google, Meta, LinkedIn, ChatGPT, Microsoft, Reddit, TikTok, Pinterest, X, Taboola, Outbrain, DV360, CM360, Teads, KWAY, RTB House), merged into one normalized table.