Skip to main content
Glama
shopify-chatgpt-ads-mcp

shopify-chatgpt-ads-mcp

by Avada-AI

Campaign as Avada sees it

measurement_get_campaign
Read-only

Retrieve a specific OpenAI ads campaign by ID to review its health and measured Shopify-attributed results, including True ROAS, without inventing missing metrics.

Instructions

One campaign with its health and measured results. From Avada ChatGPT Ads (preview API, needs AVADA_API_KEY). If it answers unavailable, tell the user the reason and steps; never invent or zero-fill numbers.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "campaign_id": "<campaign_id>"
    },
    "name": "measurement_get_campaign"
  }
}

Input Schema

NameRequiredDescriptionDefault
campaign_idYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A3.5/5.0
Behavior4/5

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

With readOnlyHint/destructiveHint already covering the safety profile, the description still adds real behavioral context: it discloses the preview-API/auth dependency (AVADA_API_KEY) and prescribes a failure mode (surface the reason and steps, never invent or zero-fill numbers). That anti-hallucination instruction is the most valuable line here, since it tells the agent how to behave when results are missing, a case annotations cannot express. It stops short of describing what the "unavailable" condition looks like on the wire.

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?

Three short sentences, front-loaded with the return payload, then provenance, then the error contract; nothing repeats the schema or the annotations and no sentence is filler. The phrasing "if it answers unavailable" is slightly compressed but still decodable.

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?

There is no output schema, so the description is the only source of truth for return content, and it stays at the level of "health and measured results" without naming the sections or fields an agent could rely on. It also does not explain how an "unavailable" response is surfaced (error versus empty payload), which matters for the prescribed fallback behavior. Adequate to invoke, thin for interpreting the result.

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?

The single campaign_id parameter has 0% schema description coverage, maxLength only and no prose, so the description carries the burden of explaining it. The description never says what the ID is, where to obtain it (presumably measurement_list_campaigns), or what form it takes, leaving the agent to infer identifier semantics entirely.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

"One campaign with its health and measured results" names a specific resource (single campaign) and what comes back (health plus measured metrics), which separates it from the list-style siblings such as measurement_list_campaigns. It does not differentiate itself from the plain get_campaign sibling, so an agent still has to guess which of the two single-campaign readers to use.

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?

Usage is implied by the singular resource and the required campaign_id, and the description adds a genuine precondition (Avada ChatGPT Ads preview API requiring AVADA_API_KEY). There is no explicit when-to-use versus get_campaign or measurement_get_account_overview, and no statement of what to do if the caller lacks the key beyond the generic "tell the user the reason" fallback.

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