API Reference

Meta Ads / API Reference

meta_ads_create_adset

Meta Ads tool. Create a new Meta Ads ad set within a campaign. Args: name: Ad set name (required). campaign_id: Parent campaign ID (required). targeting: JSON string with targeting spec, e.g. '{"age_min":25,"age_max":50,"geo_locations":{"countries":["IL"]}}' (required). billing_event: IMPRESSIONS, LINK_CLICKS, POST_ENGAGEMENT. Default IMPRESSIONS. optimization_goal: LINK_CLICKS, OFFSITE_CONVERSIONS, LEAD_GENERATION, CONVERSATIONS, REACH, etc. Default LINK_CLICKS. status: ACTIVE or PAUSED. Default PAUSED. account_id: Ad account ID. Leave blank to use .env default. daily_budget: Daily budget in smallest currency unit, e.g. '5000' for ₪50. lifetime_budget: Lifetime budget in smallest currency unit (required with dayparting). bid_amount: Manual bid cap in smallest currency unit. bid_strategy: LOWEST_COST_WITHOUT_CAP, LOWEST_COST_WITH_BID_CAP, COST_CAP. promoted_object: JSON e.g. '{"pixel_id":"123","custom_event_type":"PURCHASE"}'. start_time: ISO 8601, e.g. '2026-04-01T00:00:00+0300'. end_time: ISO 8601. Required with lifetime_budget. frequency_control_specs: JSON to cap impressions per user, e.g. '[{"event":"IMPRESSIONS","interval_days":7,"max_frequency":3}]'. attribution_spec: JSON attribution windows, e.g. '[{"event_type":"CLICK_THROUGH","window_days":7},{"event_type":"VIEW_THROUGH","window_days":1}]'. pacing_type: 'standard' or 'no_pacing' (accelerated). Default standard. destination_type: Where clicks go: WEBSITE, MESSENGER, INSTAGRAM_DIRECT, WHATSAPP, ON_AD, APP. Default WEBSITE. adset_schedule: JSON daypart windows (requires lifetime_budget), e.g. '[{"start_minute":540,"end_minute":1080,"days":[1,2,3,4,5]}]'. daily_min_spend_target: Soft spend floor in CBO campaigns (smallest unit). daily_spend_cap: Hard spend ceiling in CBO campaigns (smallest unit). advantage_audience: Set True to enable Advantage+ Audience automation (Meta AI expands beyond targeting).

This is a write tool: it creates adset in your Meta Ads account. Claude asks you to confirm before it runs.

Ask Claude

You do not call this tool yourself. Ask for the outcome and the client picks the tool:

Create adset in my Meta Ads account for [name], [campaign id], [targeting].

It takes 3 required and 19 optional parameters.

Parameters

ParameterTypeRequiredDescription
namestringYesName
campaign_idstringYesCampaign Id
targetingstringYesTargeting
billing_eventstringNoBilling Event
optimization_goalstringNoOptimization Goal
statusstringNoStatus
account_idstringNoAccount Id
daily_budgetstringNoDaily Budget
lifetime_budgetstringNoLifetime Budget
bid_amountstringNoBid Amount
bid_strategystringNoBid Strategy
promoted_objectstringNoPromoted Object
start_timestringNoStart Time
end_timestringNoEnd Time
frequency_control_specsstringNoFrequency Control Specs
attribution_specstringNoAttribution Spec
pacing_typestringNoPacing Type
destination_typestringNoDestination Type
adset_schedulestringNoAdset Schedule
daily_min_spend_targetstringNoDaily Min Spend Target
daily_spend_capstringNoDaily Spend Cap
advantage_audiencebooleanNoAdvantage Audience

Related Meta Ads tools

Before you can call it

This tool needs a connected Meta Ads account. The Meta Ads connect guide covers the OAuth flow and the permissions it asks for, and the quickstart gets a client talking to the server in about five minutes.

Workflows that use this

Rather than calling tools one at a time, these skills run a whole procedure against the same account:

Start using MCP Ads