Skip to main content
Glama

google_ads_ad_groups_create

Create a new ad group in an existing Google Ads campaign to organize ads and keywords. Provide a campaign ID and unique name, with optional custom CPC bid.

Instructions

Creates a new ad group inside an existing campaign. Returns the new ad_group's resource_name and id. Mutating — not automatically reversible; record before-state with mureo_state_action_log_append if you may need to roll back. The parent campaign must be ENABLED or PAUSED; creating under a REMOVED campaign fails. After creation, add ads with google_ads_ads_create and keywords with google_ads_keywords_add.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
nameYesAd group name (max 255 chars). Must be unique within the parent campaign.
reasonNoWhy this change is being made: one or two sentences naming the evidence and the expected effect. Stored in the journal and on the action_log entry this call produces, for the operator and the next session.
campaign_idYesParent campaign ID. Must exist and not be REMOVED.
customer_idNoGoogle Ads customer ID as a 10-digit string without dashes (e.g. '1234567890'). Optional — falls back to GOOGLE_ADS_CUSTOMER_ID / GOOGLE_ADS_LOGIN_CUSTOMER_ID from the configured credentials when omitted.
cpc_bid_microsNoDefault CPC bid in micros (1 JPY = 1_000_000 micros; 1 USD = 1_000_000 micros). Minimum 10_000 (= ¥0.01 / $0.01). Omit to inherit the campaign's default.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changedv0.20.0
    • addedInput schema / properties / reason
      Added value: +{
      +  "description": "Why this change is being made: one or two sentences naming the evidence and the expected effect. Stored in the journal and on the action_log entry this call produces, for the operator and the next session.",
      +  "maxLength": 500,
      +  "type": "string"
      +}
  2. Changed1 schema field changedv0.10.37
    • addedInput schema / additionalProperties
      Added value: +false
  3. Addedv0.10.11
  4. Removedv0.10.9
  5. Addedv0.9.12
  6. Removedv0.9.6
  7. Addedv0.9.2
  8. Removedv0.9.1
  9. Addedv1.0.5

TDQS

A4.5/5.0
Behavior5/5

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

With no annotations present, the description carries the full burden and does so admirably. It explicitly warns that the operation is mutating and not automatically reversible, recommends using mureo_state_action_log_append for rollback, and states the parent-campaign state constraint. This is substantial behavioral context beyond the schema.

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?

Four dense, purposeful sentences with zero filler. The core action is first, followed by return value, mutation warning, prerequisite, and downstream workflow. Every sentence earns its place.

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?

For a mutating tool with no output schema, the description covers the return value, preconditions, rollback guidance, and next steps. An agent has enough information to decide to use it, invoke it correctly, and understand the consequences.

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

Parameters3/5

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

Schema description coverage is 100%, so the schema already documents all five parameters. The description reinforces campaign_id's constraint ('parent campaign must be ENABLED or PAUSED') but does not add new parameter-level semantics; baseline 3 is appropriate.

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 names a specific verb and resource ('Creates a new ad group inside an existing campaign') and clearly distinguishes this from campaign creation, ad group updates, and ad/keyword creation siblings. It also states the return values (resource_name and id), leaving no ambiguity about what the tool does.

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 provides clear usage context: the parent campaign must be ENABLED or PAUSED, and creating under a REMOVED campaign fails. It also gives downstream workflow guidance ('add ads with google_ads_ads_create and keywords with google_ads_keywords_add'), but it does not explicitly contrast this with alternative create/update tools.

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

Deploy Server

Other Tools