google_ads_ad_group_update_status
Pause, enable or remove ad groups. REMOVED is irreversible.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | ||
| account | No | ||
| customer_id | No | ||
| ad_group_ids | Yes | ||
| partial_failure | No |
Pause, enable or remove ad groups. REMOVED is irreversible.
| Name | Required | Description | Default |
|---|---|---|---|
| status | Yes | ||
| account | No | ||
| customer_id | No | ||
| ad_group_ids | Yes | ||
| partial_failure | No |
Changes observed during successful MCP inspections. Dates show when Glama detected each change.
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Annotations declare readOnlyHint=false, destructiveHint=false, and idempotentHint=false, which indicate a mutating operation. The description adds important information that REMOVED is irreversible, which is a critical behavioral trait not fully captured by the annotations. However, it does not mention other behaviors like whether the operation is idempotent or what happens on partial failure, though the partial_failure parameter exists. Overall, it adds some value beyond the annotations but not extensive context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is very concise: 'Pause, enable or remove ad groups. REMOVED is irreversible.' Two short sentences with no redundancy. It is front-loaded with the action and adds the critical warning. Excellent for a tool with as few parameters as this.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The tool is a mutating operation with 5 parameters and no output schema. The description covers the core action and the irreversible nature of REMOVED, but it lacks details on parameters like partial_failure, which could be important for agents handling errors. Given that it is a straightforward mutation with clear enum values and standard param names, the description is adequate but not exhaustive. Some guidance on the effect of partial_failure would have made it more complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema has 5 parameters with 0% coverage in the description. The description only explains the status parameter through the enum values (ENABLED, PAUSED, REMOVED) and the warning about REMOVED. It does not explain ad_group_ids, account, customer_id, or partial_failure. Since these are largely self-explanatory (e.g., customer_id, account) and the schema has enums for status, the description adds some meaning but does not fully compensate for the lack of param details. Baseline is 3 given high schema clarity on status and typical parameter names.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's function: 'Pause, enable or remove ad groups.' It uses a specific verb and resource, and the context distinguishes it from sibling tools like google_ads_ad_group_create (create). However, it could more explicitly differentiate from the similar google_ads_ad_update_status for ads, but the resource is clearly named.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description mentions the three possible statuses and warns that REMOVED is irreversible, which gives some context for when to use it. However, it does not provide explicit guidance on when to use this tool versus alternatives (e.g., for creating or updating other attributes). The context implies you would use this for status changes, but no alternatives are named.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Add one secure layer between your agents and this server.
Most google_ads_* tools map to distinct resource+action pairs, but the five keyword tools (keywords_keywords, keywords_diagnostics, keywords_raw, keywords_search_terms, keywords_status) share essentially the same description and action list, differing only by a flattened action label. google_ads_account, google_ads_status, google_ads_list_accounts, and connect/toolkit_info also overlap in account/status purposes.
Domain tools mostly follow a google_ads_<resource>_<action> pattern, with plural nouns for list operations like google_ads_campaigns and google_ads_ads. This is muddied by redundant google_ads_keywords_keywords, metric-only names like google_ads_roas/google_ads_today, and six generic meta tools that break the prefix pattern.
35 tools is too many for a coherent Google Ads surface. Five keyword tools are one logical action router split into separate endpoints, and several platform tools (authenticate, connect, marketplace, report_bug, show_version, toolkit_info) are unrelated to the Google Ads domain, inflating the count.
The server covers major workflows: accounts, campaigns, budgets, ad groups, ads, keywords, negative keywords, sitelinks, performance, and change history. However, there is no way to list existing ad groups, no negative keyword removal, and no creative update beyond pause/enable/remove, which are notable gaps for this domain.