Skip to main content
Glama

Get a tracker's history

get_tracker_snapshots
Read-onlyIdempotent

Use when you need a Tracker's history over time: its target's Snapshots, or for an Advertiser the Ads running, started and stopped per day. Not for what changed: get_changes. Not for the Ads themselves: get_tracker_ads. Price: Free. since and until (UTC days) apply to Advertisers. Their series counts only observed Ads, reaches back before the Tracker, and has running null on a day it cannot be known. next_cursor pages.

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": {
      "tracker_id": "<tracker_id>"
    },
    "name": "get_tracker_snapshots"
  }
}

Input Schema

NameRequiredDescriptionDefault
limitNo
sinceNoISO date, inclusive. Advertisers.
untilNoISO date, inclusive. Advertisers.
cursorNo
tracker_idYes

Output Schema

NameRequiredDescriptionDefault
itemsNo
coverageNoThe series counts only Ads we have observed.
next_cursorNoPass back as `cursor`.
coverage_noteNoThe same, in words.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.3/5.0
Behavior4/5

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

Beyond the readOnly/idempotent/closed-world annotations, it discloses cost ('Price: Free') and non-obvious data semantics: the Advertiser series counts only observed Ads, reaches back before the Tracker existed, and yields running=null on days that cannot be known. The only gap is that pagination behavior is stated in a single compressed clause ('next_cursor pages') rather than described fully.

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?

Front-loaded with the use case, then exclusions, then cost, then caveats — a sensible priority order with almost no filler. It is telegraphic to the point of being clipped in places ('Not for what changed: get_changes.'), and the loose 'next_cursor'/'cursor' naming is a small precision cost.

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?

An output schema exists, so return shape need not be explained, and the description covers the remaining hard parts: tracker-vs-Advertiser divergence, historical reach-back, null semantics, and free usage. The missing piece is any explanation of the limit parameter, which is documented nowhere else.

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 40%, so the description must carry weight: it clarifies that since/until are UTC days and apply only to Advertisers, which is real added meaning, and gestures at pagination. However, limit and tracker_id get no explanation at all, and the description refers to 'next_cursor' while the actual parameter is 'cursor', which risks confusing the agent about the request field.

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 gives a specific verb and resource ('a Tracker's history over time') and immediately splits it into the two concrete series it returns: target Snapshots for trackers, and Ads running/started/stopped per day for Advertisers. It explicitly differentiates itself from get_changes and get_tracker_ads, so an agent can pick it without opening a sibling 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?

Usage is stated as a condition ('Use when you need a Tracker's history over time') and paired with two explicit exclusions naming the correct alternatives: get_changes for what changed and get_tracker_ads for the Ads themselves. That is the when/when-not/alternative pattern done properly.

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