Save a campaign draft designed by the LLM
save_campaign_draftADVANCED MODE — for most flows, use generate_campaign_draft instead, which runs keyword research and ad-copy generation for you. This tool only persists a campaign structure that Claude designed manually (after calling fetch_keyword_forecasts to see the planner data). Returns a draftId. The draft is NOT pushed to Google Ads yet — call publish_campaign_to_google_ads({ draftId }) to push as paused.
This is the new preferred way to create a campaign — Claude designs the structure, this tool persists it.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| goal | No | ||
| name | Yes | ||
| isCold | No | ||
| brandId | Yes | ||
| country | Yes | Target geography — any granularity Google Ads accepts: city, state, region, country, or postal code. Disambiguate non-unique city names with the country ('London, United Kingdom' not just 'London'; 'Paris, France' not 'Paris' — Paris, Texas is a thing). For local-service brands (plumbers, dentists, restaurants) push for city-level — country-wide spend on a London-only business wastes 95%+ of impressions. Field is named 'country' for legacy reasons but resolves any free-text location via Google's geoTargetConstants:suggest API. | |
| adGroups | Yes | ||
| language | Yes | ||
| targetCpa | Yes | ||
| dailyBudget | Yes | ||
| landingPageUrl | Yes | ||
| negativeKeywords | No |