Skip to main content
Glama
monsieurgoodmood

google-ads-mcp-plus

create_shopping_campaign

Create a paused Standard Shopping campaign with budget, ad group, product ad, and listing groups. Use a two-phase preview to validate then confirm with a token.

Instructions

Create a Standard Shopping campaign, PAUSED. Two-phase.

Builds budget, campaign, ad group, an empty product ad, and an exhaustive listing group tree: one biddable node per included value, plus a mandatory excluded catch-all for everything else.

Without a token you get a preview validated by the API; call again with the token to create it.

Args: customer_id: Account to create in. Must be allowlisted. campaign_name: Name of the new campaign. daily_budget: Daily budget in account currency. merchant_id: Merchant Center account holding the product feed. feed_label: Feed label, exactly as it appears in Merchant Center. This replaced sales_country. include_values: Values to bid on, e.g. the exact product_type strings from Merchant Center. Everything else is excluded. dimension: product_type_level1/2/3, brand, condition, or item_id. ad_group_name: Defaults to the campaign name. campaign_priority: 0 low, 1 medium, 2 high. Decides which campaign bids when several cover the same product. geo_target_ids: Geo target constant IDs. language_ids: Language constant IDs (1002 French, 1000 English). confirm_token: Token from the preview call. Omit for a preview.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dimensionNoproduct_type_level1
feed_labelYes
customer_idYes
merchant_idYes
daily_budgetYes
language_idsNo
ad_group_nameNo
campaign_nameYes
confirm_tokenNo
geo_target_idsNo
include_valuesYes
campaign_priorityNo

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the full burden. It discloses that the campaign is created paused, builds a specific structure (budget, campaign, ad group, empty product ad, exhaustive listing group tree), and the two-phase preview/confirm behavior. It also includes operational details like the mandatory excluded catch-all and the allowlisted customer_id requirement.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

The description is well-structured: a concise summary followed by a clear Args list. Every sentence provides meaningful information, from the PAUSED state to the exhaustive listing group tree, with no wasted words. It is appropriately detailed for a complex tool.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Given the tool's complexity (12 params, two-phase flow, detailed construction logic), the description is complete. It covers what the tool does, how to use it, all parameter details, and the preview/confirm behavior, while the output schema presumably explains the return value.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 0%, but the description provides thorough explanations for all 12 parameters, adding meaning beyond the schema. Examples include clarifying feed_label replaces sales_country, dimension allowed values, campaign_priority semantics, and language/geo ID formats. This fully compensates for the lack of schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

The description explicitly states 'Create a Standard Shopping campaign, PAUSED' with a specific verb and resource, clearly distinguishing it from the sibling create_performance_max_campaign. It further details the two-phase creation, making the purpose unambiguous.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The description explains the two-phase usage: omit confirm_token for a preview, then call again with the token to create. It also notes the prerequisite that customer_id must be allowlisted. However, it does not explicitly mention when to use this over alternatives like PMax, though the name and context imply it.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/monsieurgoodmood/google-ads-mcp-plus'

If you have feedback or need assistance with the MCP directory API, please join our Discord server