Skip to main content
Glama

Upload Google Ads Assets

adsap_google_upload_asset

Create Google Ads assets (images from the ADSAP creative library, text, YouTube videos) in one atomic request — the building blocks for adsap_google_create_pmax_campaign. Image assets report width/height and eligible_field_types so you know which PMax slot (landscape 1.91:1, square 1:1, portrait 4:5, logo) each image can fill; pass the returned asset_id values to the PMax create tool. Use dry_run: true to validate without creating. ad_account_id is the bare 10-digit customer ID. For Meta creative uploads use adsap_upload_creative instead.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
assetsYesUp to 20 assets per request, all-or-nothing.
dry_runNo
ad_account_idYesBare 10-digit Google Ads customer ID (from adsap_google_list_ad_accounts). No dashes, no act_ prefix.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.3/5.0
Behavior4/5

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

No annotations are present, so the description carries the full burden. It discloses atomicity, dry_run behavior, failure-fast behavior for aspect-ratio mismatches, and the AI-generated attestation irreversibility. It does not cover rate limits or authentication, but for a creation tool this is adequate coverage.

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?

The description is dense but each sentence earns its place: purpose, output hints, dry_run guidance, ID format, and a sibling pointer. It is front-loaded with the primary action and does not wander into unnecessary 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?

The tool is complex (three asset types, atomic semantics, output behavior). The description covers the key aspects: what it creates, how to validate, what the response includes for images, and the relationship to PMax. It does not explicitly describe the full return format for all asset types, but the mention of asset_id and the schema coverage are sufficient.

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 67% (2 of 3 top-level params), and the nested assets have thorough descriptions. The description adds the dry_run purpose and reiterates the ad_account_id format, but these are mostly redundant with the schema. It does not substantially enhance understanding of the parameters beyond what the schema already provides.

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?

States a specific verb and resource: 'Create Google Ads assets (images, text, YouTube videos)' in an atomic request. It clearly differentiates from siblings by naming the alternative for Meta uploads (adsap_upload_creative) and ties itself to the PMax campaign tool as its building block. An agent can immediately understand what this tool does and how it fits the broader workflow.

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?

Explicitly says when to use this tool (for Google PMax asset creation) and when not (for Meta use adsap_upload_creative). It also provides the dry_run validation pattern and clarifies the ad_account_id format. The guidance is unambiguous and actionable.

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