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

shopify-chatgpt-ads-mcp

by Avada-AI

Campaign presets

measurement_list_campaign_presets
Read-only

Lists campaign presets suggested from the product catalogue, such as bestsellers and new arrivals, to help merchants select an ad campaign setup.

Instructions

Campaign presets the app suggests from the catalogue (bestsellers, new arrivals, ...). 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

This tool declares no required parameters. Add optional parameters from the input schema as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {},
    "name": "measurement_list_campaign_presets"
  }
}

Input Schema

NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

B3.4/5.0
Behavior4/5

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

Annotations already cover the safety profile (readOnly, non-destructive, open-world), and the description adds real context on top: it comes from a preview API, requires an AVADA_API_KEY, and has a defined failure mode with an explicit instruction not to fabricate or zero-fill numbers. That failure-mode guidance is valuable behavioral disclosure an agent could not get from structured fields.

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?

Three short sentences, front-loading the resource description before the source/auth note and the failure-mode rule. The opening fragment is slightly loose but no sentence is wasteful.

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?

For a zero-parameter, read-only list tool with no output schema, the description covers source, auth requirement, and the critical failure behavior. Only the return shape (that it yields a set of preset suggestions) is left implicit, which is a minor gap.

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

Parameters4/5

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

The tool takes zero parameters, so the schema carries no semantics to explain and the baseline is 4. The description correctly adds no parameter commentary, which is appropriate here.

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

Purpose3/5

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

The description identifies the resource (campaign presets suggested from the catalogue, e.g. bestsellers, new arrivals) but is written as a noun fragment with no verb, so the agent must infer from the tool name that this is a list/retrieve operation. It also does not differentiate itself from siblings like measurement_list_campaigns or get_campaign.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines2/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

There is no guidance on when to call this versus the other campaign-listing tools; the only conditional instruction concerns what to do after an 'unavailable' response, which is error handling rather than usage selection. The agent is left to infer the triggering scenario.

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