Skip to main content
Glama

Metadata MCP Connector

Get Campaign UTMs

get_campaign_utms
Read-only

Read one wizard campaign’s resolved UTM parameters by channel. Returns stored and resolved values, origin, and comparison with account defaults. An empty stored mapping inherits the account defaults, or platform defaults when the account has none. A stored mapping identical to its inherited default cannot be distinguished from inheritance. Dynamic tokens are resolved for lead records and ad URLs, not stored as literal text. Does not modify UTMs.

TRACKING TIMING AND TOKEN MEANING: Leads using server-resolved campaign UTMs use the current saved mapping when the platform processes them, without waiting for an ad republish. Captured URL or caller-supplied values can follow a different ingestion path, so do not generalize this timing to every new lead. Native click-time macros retain values captured from the lead's click URL. Ad click URLs have a separate publication timeline: a draft uses the saved mapping at launch, and launched ads use it on their next campaign publish. Saving a launched Microsoft Ads campaign triggers a live UTM push. AD_NAME is a dynamic token, not necessarily an individual ad name: standard experiments use their ad group name when present, otherwise their creative name; native ad structures use the native ad's own name. CAMPAIGN_NAME uses the wizard campaign name. Saving a launched campaign can also queue an asynchronous existing-lead UTM refresh. Do not assume historical rows are immutable or that all old rows have already refreshed. Verify the saved mapping with get_campaign_utms and actual lead values and ingestion timing separately from live ad click URLs; a supplied or backfilled lead creation date alone does not prove when its UTMs were resolved.

Input Schema

NameRequiredDescriptionDefault
campaign_idYesWizard campaign id (the `id` from list_wizard_campaigns).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Beyond the readOnly and non-destructive annotations, the description discloses substantial behavior: inheritance from account or platform defaults, inability to distinguish inherited from identical stored mappings, dynamic token resolution, and separate lead versus ad publication timing. It also notes asynchronous existing-lead UTM refreshes and warns that historical rows may not be immutable.

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 front-loaded with purpose and return behavior, then organized under a clear timing and token-meaning section. It is lengthy for a one-parameter read tool, but the density is largely justified by the attribution nuances it must convey.

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?

Although there is no output schema, the description explains the return shape, inheritance semantics, token resolution, and timing caveats in enough depth for an agent to interpret results correctly. It is complete for this tool's complexity and annotation profile.

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 100%, and the single campaign_id parameter is fully documented in the schema as the id from list_wizard_campaigns. The description adds no additional meaning about the parameter itself, so the baseline of 3 is appropriate.

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 states a specific verb and resource: reading one wizard campaign's resolved UTM parameters by channel. It also specifies what is returned (stored and resolved values, origin, comparison with account defaults), making the tool easy to distinguish from set_campaign_utms and search_campaigns_by_utm_value.

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?

It gives clear context for use, notably verifying the saved mapping against actual lead values and ingestion timing. It also sets exclusions around what cannot be proven from this tool alone, though it does not explicitly name sibling alternatives like set_campaign_utms or get_account_utm_defaults.

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