Skip to main content
Glama

get_attribution

[Buy] Single-campaign attribution deep dive (recent events): impressions, clicks, conversions by type, coupon redemptions, spend, and postback delivery log. For period rollups across campaigns prefer get_advertiser_report*.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
groupByNo
campaignIdYes

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations, the description carries the full burden of behavioral disclosure. It discloses the specific types of data returned (impressions, clicks, conversions, coupon redemptions, spend, postback log), which is substantial. However, it leaves 'recent events' undefined and does not explain the '[Buy]' prefix (potential cost) or explicitly state that it is read-only.

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 two sentences. The first sentence front-loads the tool's purpose and output, and the second provides a clear alternative. No fluff or redundancy.

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

Completeness3/5

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

The description gives a strong overview of the tool's scope and output, but it omits details about the time window ('recent'), any associated costs (implied by '[Buy]'), and does not specify the return structure (no output schema). For a tool with no annotations, these gaps matter, though the listed output fields partially compensate.

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

Parameters2/5

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

Schema description coverage is 0%, so the description must compensate but does not. It mentions 'conversions by type' which loosely aligns with the groupBy=conversionType enum, but it does not explain the 'day' or 'placement' options or provide any parameter-level context. The schema is clear on its own, but the description adds no value for parameter understanding.

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 'Single-campaign attribution deep dive (recent events)' with a specific verb and resource, and enumerates concrete output fields (impressions, clicks, conversions by type, coupon redemptions, spend, postback delivery log). It also distinguishes from sibling tools by directing to 'get_advertiser_report*' for period rollups.

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?

The description explicitly provides an alternative use case: 'For period rollups across campaigns prefer get_advertiser_report*.' This clearly tells the agent when NOT to use this tool and when to use a sibling, satisfying the requirement for explicit guidance.

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.

TDQS

C2.8/5.0
Disambiguation2/5

Multiple tools have overlapping or misleading purposes: buy_campaign and buy_placement are aliases of create_campaign, list_placement actually creates a placement, and get_attribution/get_campaign both provide campaign stats. The report_* tools are distinct but similarly named, increasing selection risk.

Naming Consistency3/5

Most tools follow a verb_noun snake_case pattern, but there are notable deviations: buy_campaign/buy_placement use 'buy' instead of 'create', list_placement is a creator not a lister, and simple nouns like 'wallet' and 'whoami' break the convention.

Tool Count2/5

At 31 tools, the server feels heavy. Several tools are redundant aliases (buy_campaign, buy_placement) or could be consolidated (multiple report_* and list_* variants), making the surface unnecessarily large for the ad marketplace domain.

Completeness3/5

The core lifecycle is covered: campaign/placement creation, delivery, reporting, attribution, refunds, and cashouts. However, there are gaps like no update_campaign, no true list_placements, and no get_placement, leaving some workflows incomplete.