Skip to main content
Glama

Export events and installs

export_events
Read-onlyIdempotent

Exports one app's events and installs for a date range, using a capped recent CSV or paged wide records with cursors to retrieve complete snapshots.

Instructions

Export one app's events and installs for an inclusive date range. By default (version 1) the answer is the seven-column CSV, event rows capped at the 100,000 most recent INSIDE the range; narrow the range until it is safely below that cap when a complete snapshot is required. Pass version 2 for the wide record export (campaign, ad, evidence and revenue columns), oldest first, as csv or ndjson and paged: each page holds up to limit records (10,000 by default), and when another page follows the result carries next_cursor, which you send back as cursor with the same app_id, from and to. No next_cursor means the last page.

Input Schema

NameRequiredDescriptionDefault
toYesISO date or timestamp
fromYesISO date or timestamp
limitNoVersion 2 only: records per page, 1-10,000 (10,000 when omitted).
app_idYesThe AttriKit app id.
cursorNoVersion 2 only: the next_cursor of the previous page. Omit for the first page.
formatNoVersion 2 only: csv (the default) or ndjson, one JSON record per line.
versionNoExport version, 1 or 2. Omit for version 1, the original CSV, unchanged. format, limit and cursor need version 2.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0

TDQS

A4.3/5.0
Behavior5/5

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

Annotations already establish that this is a safe, read-only, idempotent export, and the description adds important behavior beyond them: row-cap semantics, ordering, paging, default limit, next_cursor protocol, and format-specific return content. There is no contradiction with the annotations.

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?

The description is front-loaded with the core action and then explains version-specific behavior. It is dense but generally earns its space, covering defaults, cap risk, formats, and pagination without obvious filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Because there is no output schema, the description needs to explain return behavior, and it does: version 1 yields a seven-column CSV capped at 100,000 recent in-range rows, while version 2 yields wide records with campaign, ad, evidence, and revenue columns in csv or ndjson, oldest first, with pagination. That is sufficient for an agent to call and paginate the tool correctly.

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?

Schema coverage is 100%, so the baseline is 3, but the description adds meaningful protocol semantics beyond the schema. It explains that limit, format, and cursor are version-2-only, that cursor must be sent back with the same app_id, from, and to, and that absence of next_cursor means the final page.

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?

The description states a specific verb and resources: export one app's events and installs over an inclusive date range. It clearly distinguishes version 1 CSV behavior from version 2 wide-record paged behavior. It does not explicitly distinguish this bulk export from sibling listing tools such as list_recent_events or list_event_deliveries.

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

Usage Guidelines4/5

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

It gives clear usage context: version 1 is the default seven-column CSV with a 100,000-row cap, and version 2 is for wide records with format, limit, and cursor. It also advises narrowing the date range when a complete snapshot is required. It does not state when to choose this over sibling listing or delivery tools.

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