Skip to main content
Glama
eneelkant

google-ads-mcp

by eneelkant

remove_asset_from_group

DestructiveIdempotent

Remove an asset from a Google Ads asset group by specifying customer, asset group, resource name, and field type. Confirmation required to successfully unlink the asset.

Instructions

Remove an asset from an asset group.

Args: customer_id: Google Ads customer ID. asset_group_id: Asset group ID. asset_resource_name: Full resource name of the asset to unlink. field_type: The field type of the asset link (e.g., 'HEADLINE', 'MARKETING_IMAGE'). confirm_removal: Must be True to proceed.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
field_typeYes
customer_idYes
asset_group_idYes
confirm_removalNo
asset_resource_nameYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already mark the operation as destructive and non-read-only. The description adds useful behavioral context by stating confirm_removal 'Must be True to proceed,' which signals a required confirmation guard beyond what the schema alone indicates. The use of 'unlink' also clarifies the semantic effect of the removal.

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 compact and well-structured: a one-sentence summary followed by a clear parameter list. Every sentence adds value, and the most important behavioral guard (confirm_removal must be True) is explicitly stated without extraneous detail.

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?

For a destructive operation with five parameters and no output schema, the description covers the key invocation requirements: action, target asset, group, field type, and confirmation. It does not describe post-conditions or error cases, but the annotations and parameter explanations cover most of what an agent needs to call it correctly.

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

Parameters4/5

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

With 0% schema description coverage, the description compensates well by explaining all five parameters. It adds meaningful detail such as 'full resource name' for asset_resource_name, examples for field_type, and the mandatory nature of confirm_removal. Some parameter explanations remain minimal, but all are addressed.

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 opens with a specific verb and resource: 'Remove an asset from an asset group.' It also clarifies the operation as 'unlink' in the parameter list, making the intent unambiguous and distinguishing it from the sibling add_assets_to_group.

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

Usage Guidelines3/5

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

The intended use is implied by the action itself: use when unlinking an asset from an asset group. However, the description provides no explicit guidance about when not to use it or which sibling alternatives exist, so the agent must infer context from the tool name and sibling list.

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