Skip to Content
Tool referenceList ad sets

List ad sets (adsap_list_ad_sets)

Platform: Meta · Read or write: Read · Plan: All plans · Consumes a task: No · Preview supported: No

What it does

Lists the ad sets in one campaign with status, budget, optimization goal, destination and conversion event. You can filter by status and page through results. In assistants that support interactive cards, you can tick an ad set and use it straight away when creating an ad.

When to use it

  • Use it when you know the campaign and need its ad sets, for example to pick the ad set for a new ad.
  • campaign_id is required. Get it from adsap_list_campaigns.
  • It reads Adsap’s ad set cache, not Meta directly. last_synced_at shows when each ad set was last synced.
  • An ad set id goes straight into adsap_create_ad or adsap_create_ad_from_ig_post.
  • It returns no spend or results. For those, use adsap_get_insights.

Worked example

You ask

“Show me the ad sets in campaign 120210000000002 on act_1234567890.”

The assistant calls adsap_list_ad_sets

{ "campaign_id": "120210000000002", "ad_account_id": "act_1234567890" }

Adsap returns

The field names are the ones Adsap returns. The values are examples.

{ "ok": true, "data": [ { "id": "120210000000001", "ad_account_id": "act_1234567890", "name": "Prospecting US", "display_name": "Prospecting US (120210000000001)", "campaign_id": "120210000000002", "status": "ACTIVE", "effective_status": null, "optimization_goal": "OFFSITE_CONVERSIONS", "billing_event": "IMPRESSIONS", "daily_budget": null, "lifetime_budget": null, "budget_type": "CBO (campaign level)", "destination_type": "WEBSITE", "targeting_summary": null, "pixel_id": "120210000000009", "conversion_event": "PURCHASE", "promoted_object": { "pixel_id": "120210000000009", "custom_event_type": "PURCHASE" }, "last_synced_at": "2026-03-02T08:15:00+00:00" } ], "meta": { "next_cursor": null, "total_count": 1, "ad_account_id": "act_1234567890" } }

How to read it

budget_type is daily or lifetime when the ad set holds its own budget, with the amount in cents. Here it is CBO (campaign level): the campaign holds the budget, so both budget fields are null. pixel_id and conversion_event are read from promoted_object.

The cache does not store targeting, schedule or effective status. targeting_summary, start_time, end_time and effective_status come back as null. For the live status of one ad, use adsap_get_ad_status. When next_cursor is not null, the assistant passes it as cursor to get the next page.

Parameters

Descriptions are shortened from the tool schema. Your assistant sees the full text.

NameTypeRequiredDescription
campaign_idstringYes
ad_account_idstringNo
status_filterone of ACTIVE, PAUSED, DELETED, ARCHIVED, ALLNo
limitnumberNo
cursorstringNo

Example prompts

  • “What ad sets are running under the Summer Sale campaign?”
  • “Show me the paused ad sets in campaign 120200000000000.”
  • “List the ad sets in this campaign with their daily budgets.”

Guide

Read Creating an ad set for the workflow around this tool, and the Tool reference for every tool.

The Meta Ads MCP server  page shows how to connect Meta Ads to Claude, ChatGPT or Perplexity.

Last updated on