List Google Ads campaigns (adsap_google_list_campaigns)
Platform: Google Ads · Read or write: Read · Plan: All plans · Consumes a task: No · Preview supported: No
What it does
Lists the campaigns in one Google Ads account with status, channel type, bidding strategy and daily budget. It reads from the Adsap cache first and refreshes from Google when the cache is older than one hour. You can filter by status or force a fresh pull.
When to use it
- Use it to find a campaign and its
idbefore you read results or change anything in a Google Ads account. - It needs the 10-digit customer ID from
adsap_google_list_ad_accounts. status_filtertakesACTIVE,PAUSED,REMOVEDorALL. The default isALL.daily_budgetis an amount in the account currency. Google budgets are daily.- It returns no spend or results. For those, use
adsap_google_get_insights.
Worked example
You ask
“List the active campaigns in Google Ads account 1234567890.”
The assistant calls adsap_google_list_campaigns
{
"ad_account_id": "1234567890",
"status_filter": "ACTIVE"
}Adsap returns
The field names are the ones Adsap returns. The values are examples.
{
"ok": true,
"data": [
{
"id": "21000000001",
"ad_account_id": "1234567890",
"name": "Spring sale",
"display_name": "Spring sale (21000000001)",
"platform": "google",
"status": "ACTIVE",
"google_status": "ENABLED",
"channel_type": "SEARCH",
"bidding_strategy_type": "MAXIMIZE_CONVERSIONS",
"daily_budget": 50,
"last_synced_at": "2026-09-18T08:05:00+00:00"
},
{
"id": "21000000002",
"ad_account_id": "1234567890",
"name": "Summer collection",
"display_name": "Summer collection (21000000002)",
"platform": "google",
"status": "ACTIVE",
"google_status": "ENABLED",
"channel_type": "PERFORMANCE_MAX",
"bidding_strategy_type": "MAXIMIZE_CONVERSION_VALUE",
"daily_budget": 80,
"last_synced_at": "2026-09-18T08:05:00+00:00"
}
],
"meta": {
"is_stale": false,
"last_refreshed_at": "2026-09-18T08:05:00+00:00",
"next_cursor": null,
"total_count": 2,
"ad_account_id": "1234567890"
}
}How to read it
status uses the same wording as the Meta tools, so Google’s ENABLED shows as ACTIVE. google_status keeps Google’s own value. channel_type and bidding_strategy_type are Google’s names for the campaign type and the bidding strategy.
meta.is_stale is true when the cache is over one hour old and could not be refreshed. In that case meta.refresh_error says why. When meta.next_cursor is set, pass it as cursor for the next page. The id of a row feeds adsap_google_set_entity_status and adsap_google_update_entity.
Parameters
Descriptions are shortened from the tool schema. Your assistant sees the full text.
| Name | Type | Required | Description |
|---|---|---|---|
ad_account_id | string | Yes | Bare 10-digit Google Ads customer ID (from adsap_google_list_ad_accounts). No dashes, no act_ prefix. |
status_filter | one of ACTIVE, PAUSED, REMOVED, ALL | No | |
refresh | boolean | No | Force a refresh from the Google Ads API even if the cache is fresh. Spends Google API budget: use only when the user needs up-to-the-minute data. |
limit | number | No | |
cursor | string | No |
Example prompts
- “List my Google Ads campaigns.”
- “Which Performance Max campaigns are active in my Google account?”
- “Refresh my Google campaigns and show me the paused ones.”
Notes
A forced refresh spends Google API quota. Ask for it only when you need up-to-the-minute data.
Related tools
adsap_google_create_app_campaign: Create a complete Google App campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with…adsap_google_create_demand_gen_campaign: Create a complete Google Ads Demand Gen campaign (YouTube, Discover, Gmail, Maps and the Google Display Network) in ONE atomic request…adsap_google_create_display_campaign: Create a classic standalone Google Display campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with…adsap_google_create_pmax_campaign: Create a complete Google Ads Performance Max campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with…adsap_google_create_search_campaign: Create a complete Google Ads Search campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with…adsap_google_create_shopping_campaign: Create a complete standard Google Shopping campaign in ONE atomic request: budget, campaign (ALWAYS created PAUSED: activate later with…
Guide
Read Google Ads for the workflow around this tool, and the Tool reference for every tool.
The Google Ads MCP server page shows how to connect Google Ads to Claude, ChatGPT or Perplexity.