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

shopify-chatgpt-ads-mcp

by Avada-AI

Measured product report

measurement_get_product_report
Read-only

Returns per-product ad delivery and measured Shopify orders for a date range, so you can see which advertised products drove real attributed sales.

Instructions

Products that received ad delivery, with measured orders where the app has them. 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_get_product_report"
  }
}

Input Schema

NameRequiredDescriptionDefault
toNoLast day, YYYY-MM-DD
fromNoFirst day, YYYY-MM-DD

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.0

TDQS

A3.7/5.0
Behavior4/5

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

Beyond the readOnly/openWorld/non-destructive annotations, the description discloses provenance (Avada ChatGPT Ads preview API), an auth prerequisite (AVADA_API_KEY), and an error contract: if the API reports unavailable, relay the reason and steps rather than fabricating or zero-filling values. That data-integrity instruction is meaningful behavioral context an agent would not get from the annotations alone.

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-loaded with what is returned, then source/auth, then the failure instruction. Slight ambiguity in "If it answers unavailable" (the antecedent is the API, not the tool) costs a point but nothing is padded.

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 two-optional-param read tool with no output schema, the definition covers what is returned, where it comes from, the credential requirement, and how to handle unavailability. It stops short of describing result granularity or pagination, which an agent might want before calling.

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 both from/to parameters are documented there with format patterns, so the schema carries the parameter burden. The description adds no date-range semantics (defaults, inclusive bounds, allowed window), which matches the baseline 3 for high-coverage schemas.

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?

"Products that received ad delivery, with measured orders" specifies the resource and scope of the report clearly, so an agent knows it returns product-level delivery/order metrics. The verb is implicit (no explicit "get/list") and nothing distinguishes it from sibling reports like measurement_get_ads_report or measurement_get_ads_breakdown, keeping it below a 5.

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 only implied: an agent can infer this is the product-level reporting call, but there is no explicit when-to-use or when-not-to-use guidance and no named alternative among the many measurement_* siblings. The clause "where the app has them" hints at partial data but is not framed as a selection condition.

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