Skip to main content
Glama
Google Ads MCP Server

Google Ads MCP Server

add_keywords

Batch-add search keywords to a Google Ads ad group with preview-before-confirm and CPC bid limit checks.

Instructions

Add keywords to an ad group (batch operation).

Safety: new keywords are live immediately in an enabled ad group, so this
returns a preview first; call again with confirm=True. Refused if any
cpc_bid is above GOOGLE_ADS_MAX_CPC_BID.

Args:
    customer_id: Google Ads customer ID.
    ad_group_id: Ad group ID to add keywords to.
    keywords: List of keyword dicts, each with:
        - text (str): The keyword text.
        - match_type (str): 'EXACT', 'PHRASE', or 'BROAD'.
        - cpc_bid (float, optional): Max CPC bid in currency.

Example:
    keywords=[
        {"text": "buy shoes online", "match_type": "PHRASE", "cpc_bid": 1.50},
        {"text": "running shoes", "match_type": "BROAD"},
        {"text": "[red running shoes]", "match_type": "EXACT", "cpc_bid": 2.00},
    ]

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "customer_id": "<customer_id>",
      "ad_group_id": "<ad_group_id>",
      "keywords": "<keywords>"
    },
    "name": "add_keywords"
  }
}

Input Schema

NameRequiredDescriptionDefault
confirmNo
keywordsYes
ad_group_idYes
customer_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A4.8/5.0
Behavior4/5

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

The description reveals essential operational behaviors not covered by annotations, specifically the two-stage confirmation workflow and the hard ceiling constraint on CPC bids. This operational context significantly enhances the agent's understanding of the tool's execution flow.

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 tool prioritizes critical information: purpose, safety, and operational limits are front-loaded. The structure is highly efficient, moving from high-level purpose to specific execution constraints.

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?

Despite its complexity as a multi-stage mutation tool, the definition is functionally complete. It dictates the precise workflow, data structure, and business constraints required before a correct invocation can be made.

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?

Because schema coverage is 0%, the description provides the necessary semantic depth for the complex nested 'keywords' array. It details the required components within the keywords object (text, match_type, cpc_bid) and explains the functional role of the 'confirm' argument.

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 clearly identifies the action ('Add keywords'), the target resource ('an ad group'), and the operational scope ('batch operation'), making it easily distinguishable from list or creation tools.

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

Usage Guidelines5/5

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

It provides critical, explicit conditional guidance, noting the two-step process required (calling without 'confirm' for a preview) and defining a refusal condition based on the maximum CPC bid.

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