Skip to main content
Glama

ads_performance

Read-only

READ-ONLY, DETERMINISTICO. Performance Ads dal Data-Hub con numeri calcolati dal server, SEMPRE uguali a parità di dati: finestre FISSE di 7/14/30 giorni chiuse 3 giorni prima dell'ultimo dato (attribuzione Amazon ancora incompleta), ACoS/CTR/CVR/CPC/RPC/AOV dalle somme SQL, confronto con il periodo precedente, e per ogni riga una colonna action con la regola applicata: HOLD_DATA (pochi click: non toccare), HOLD_OK (ACoS ≤ target), HOLD_BAND (sopra target ma entro target × 1.2: tolleranza, non "in target"), BID_DOWN (ACoS sopra target: bid suggerito = ricavo/click × ACoS target, taglio max 25%/40%), BID_DOWN_ZERO_SALES (click senza ordini, max −30%, floor 0.10), BID_UP (+10/15% se ACoS ≤ 0.8×target), NEGATIVE_EXACT (termine con click e 0 ordini), HARVEST_EXACT (termine che converte sotto target in match non esatto → nuova keyword exact), TERM_OVER_TARGET (termine con ordini oltre target × 1.2: agisci sulla keyword/target che lo attiva o negativa se > 2× target), NEGATIVE_TARGET / HARVEST_TARGET (stesse regole quando il termine è un ASIN: negative product target / nuovo product target, mai keyword), REVIEW_KEYWORDS / REVIEW_ZERO_SALES (campagna da aprire a livello keyword), SCALE_CANDIDATE (manuale), SET_TARGET (manca acos_max: impostalo con set_cockpit_target). Il target ACoS viene dal cockpit ORC-058 (set_cockpit_target, per outpost) o dall'argomento acos_max. USALO al posto di execute_sql per QUALSIASI domanda su ACoS/spesa/keyword che sprecano/cosa tagliare o alzare: non riscrivere le formule. Per agire: rileggi lo stato live con ads_list_* e proponi la scrittura con ads_update_*. Org-scoped: senza account_id copre tutti gli outpost autorizzati; con account_id filtra quell'outpost. Livelli: campaign (default) | keyword | search_term.

Input Schema

NameRequiredDescriptionDefault
levelNoGranularità (default campaign)
limitNoMax righe (default 50, cap 200), ordinate per spesa
actionNoFiltra le righe per action (es. BID_DOWN, NEGATIVE_EXACT)
windowNoGiorni della finestra chiusa (default 14)
acos_maxNoACoS target in % per tutti gli outpost; se omesso si usa acos_max del cockpit per outpost
ad_productNoSolo livello campaign (default SP)
campaign_idNoSolo questa campagna (utile per keyword/search_term)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already cover the safety profile (readOnlyHint=true, destructiveHint=false), and the description adds materially beyond them: determinism ('SEMPRE uguali a parità di dati'), fixed windows closed three days before the last data point because Amazon attribution is still incomplete, and where the ACoS target is sourced from (cockpit ORC-058 or `acos_max`). It also states org-scope behavior, which is exactly the kind of context annotations cannot carry.

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

Conciseness3/5

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

The purpose and the routing instruction are front-loaded, which is good, but the middle is a single dense paragraph cataloguing roughly fifteen action codes with no formatting, and it is written in Italian while the schema and sibling names are English. Much of it earns its place as reference for the returned `action` column, but the structure makes it harder to scan than it needs to be.

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?

There is no output schema, and the description compensates well: it names the metric set (ACoS/CTR/CVR/CPC/RPC/AOV), the previous-period comparison, and defines every value of the `action` column, so an agent can interpret results. The main gap is the phantom `account_id` scope parameter and the unexplained shape of the period-over-period comparison, otherwise it is complete for a 7-parameter read-only report.

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 the baseline is 3, and the description does add real value for `action` (a free-form string in the schema whose valid codes are only defined here) and for the `acos_max` fallback to the cockpit. However, it describes an `account_id` parameter ('senza account_id copre tutti gli outpost autorizzati; con account_id filtra quell'outpost') that does not exist in the input schema, which will mislead an agent into trying to pass it.

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 opening line names a specific resource and behavior: ads performance from the data hub with server-computed, deterministic numbers. The closing line fixes the grain ('Livelli: campaign (default) | keyword | search_term'), and the description explicitly distinguishes it from `execute_sql` and from the `ads_list_*` / `ads_update_*` action loop, so an agent can separate it from siblings without opening a schema.

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?

It gives an explicit use-this-instead rule: 'USALO al posto di execute_sql per QUALSIASI domanda su ACoS/spesa/keyword... non riscrivere le formule', plus the follow-up path 'rileggi lo stato live con ads_list_* e proponi la scrittura con ads_update_*'. Both the when and the what-next are stated rather than implied.

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