Skip to main content
Glama

ADM Google Ads

List negative keywords by level

get_negative_keywords
Read-onlyIdempotent

Lists negative keywords grouped by level, in Google notation ("phrase", [exact], broad): account (the account-level negative list and whether it is attached_to_account), campaigns, ad_groups, and shared negative lists (id, name, keywords, attached_campaigns). With campaign_id, campaign and ad group levels are limited to that campaign and only shared lists attached to it are returned; the account level is always returned because it applies to every campaign.

Input Schema

NameRequiredDescriptionDefault
campaign_idNoOptional campaign id (from get_campaigns) to limit results to one campaign.
customer_idYesGoogle Ads customer ID from get_accounts, e.g. 123-456-7890.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.1/5.0
Behavior4/5

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

Goes beyond annotations (readOnlyHint, idempotentHint) by disclosing the four-level result structure, the Google notation format for match types, and the non-obvious rule that account-level negatives are always returned even when campaign_id is set. Doesn't mention pagination or result-size limits, so not a 5.

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

Conciseness4/5

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

Single dense sentence that front-loads the core purpose then layers the level detail and the campaign_id condition. Some readers may find the parenthetical notation examples and level enumeration heavy, but nothing is wasted.

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

Completeness4/5

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

With no output schema, the description compensates by describing the returned structure (levels, shared list fields id/name/keywords/attached_campaigns) and the match-type notation. Annotations cover safety. Only missing pagination/limit behavior for a potentially large list.

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 coverage is 100%, so both parameters are already documented. The description adds a behavioral consequence of campaign_id (shared lists limited to attachments) which the schema's one-liner does not, but doesn't add syntax or format beyond that. Baseline 3 is appropriate given the schema does the primary work.

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?

Description names a specific verb (Lists) and resource (negative keywords) and adds distinctive scoping detail: grouped by level, Google notation, and enumerates the four levels returned. This distinguishes it from sibling get_keywords (positive keywords) and find_negative_conflicts.

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?

Explicit condition for campaign_id: limits campaign and ad group levels to that campaign and only returns shared lists attached to it, while account level is always returned. This tells the agent exactly when the parameter changes results. No explicit when-not-to-use or pointer to find_negative_conflicts, but the filtering semantics are fully spelled out.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources