List catalogs (adsap_list_catalogs)
Platform: Meta · Read or write: Read · Plan: Early Access · Consumes a task: No · Preview supported: No
What it does
Lists the product catalogs available to a Meta ad account. Use it before building catalog ads, so you know which catalog and product sets exist. Each catalog comes back with its identifier, which the catalog tools take as input.
When to use it
- Use it before building catalog or collection ads, to pick a
catalog_idand aproduct_set_id. ad_account_idis required. Get it fromadsap_list_ad_accounts.- It serves from Adsap’s cache and makes no Meta call. When the cache is empty, it syncs from Meta once on its own.
- Pass
refreshastrueto force a live sync when the cached list may be out of date. - It lists catalogs and product sets, not products. For the products in a set, use
adsap_get_product_set_products.
Worked example
You ask
“Which product catalogs can I use for catalog ads on act_1234567890?”
The assistant calls adsap_list_catalogs
{
"ad_account_id": "act_1234567890"
}Adsap returns
The field names are the ones Adsap returns. The values are examples.
{
"ok": true,
"data": {
"catalogs": [
{
"catalog_id": "120210000000020",
"catalog_name": "Example Store products",
"business_id": "120210000000030",
"product_sets_count": 2,
"product_sets": [
{
"product_set_id": "120210000000021",
"product_set_name": "All products"
},
{
"product_set_id": "120210000000022",
"product_set_name": "Summer collection"
}
]
}
]
},
"meta": {
"source": "cache",
"refreshed": false,
"refresh_error": null,
"last_synced_at": "2026-03-02T08:15:00+00:00",
"catalog_count": 1,
"product_set_count": 2,
"ad_account_id": "act_1234567890"
},
"human_readable_summary": "Found 1 catalog (2 product sets) for act_1234567890 (from cache)."
}How to read it
Each catalog carries its product sets, so one call gives both IDs a catalog ad needs. source says where the list came from. cache is the saved list and meta_live_refresh is a fresh sync from Meta. cache_fallback means a live sync failed and the saved list is shown, with the reason in refresh_error.
last_synced_at is the time of the latest sync. If a catalog you expect is missing, ask the assistant to refresh the list.
Parameters
Descriptions are shortened from the tool schema. Your assistant sees the full text.
| Name | Type | Required | Description |
|---|---|---|---|
ad_account_id | string | Yes | Ad account ID (act_xxx). Required: scopes the request to the workspace that owns this account. |
refresh | boolean | No | Force a live re-sync from Meta, bypassing the cache. Default false = serve from the workspace cache (0 Meta API calls). Use when the cached catalog/product-set list may be out of date. |
Example prompts
- “Which product catalogs are connected to my ad account?”
- “Show me the catalogs I can use for dynamic product ads.”
Related tools
adsap_get_catalog_data_sources: List all data sources connected to a Meta product catalog: product feeds, Batch API, partner integrations (Shopify/WooCommerce), smart…adsap_get_catalog_details: Get a Meta product catalog’s metadata: name, vertical, total product count, and owning business: live from Meta.adsap_get_catalog_diagnostics: Get data-quality diagnostics for a Meta product catalog: errors and warnings that can block products from ads (broken images, missing…adsap_get_product_details: Fetch the full details of one catalog product by its numeric Meta product ID (FBID): live from Meta.adsap_get_product_set_products: List the products inside a Meta catalog product set (live from Meta).adsap_search_catalog_products: Search or list the products in a Meta product catalog (live from Meta).
Guide
Read Building the ads 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.