Skip to main content
Glama

List Transactions

list_transactions
Read-onlyIdempotent

Fetch sales transactions from your Teachable school by date range, user, course, or refund status to review revenue and chargebacks.

Instructions

Fetch a list of sales transactions made in your school. (New transactions can take up to two minutes to be returned via API call from the time of sale.)

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
endNoThe end of the time period to return results for (inclusive), in ISO8601 format.
perNoUsed in pagination to define amount of transactions per page, when not defined the maximum is 20
pageNoUsed in pagination when number of transactions exceed the maximum amount of results per page
startNoThe beginning of the time period to return results for (exclusive), in ISO8601 format.
accountNoExact private school profile label; not a provider identity or authorization proof.
user_idNo
course_idNo
affiliate_idNo
is_chargebackNo
pricing_plan_idNo
is_fully_refundedNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv2.0.0

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint, idempotentHint, openWorldHint and destructiveHint=false, so the safety profile is covered. The description adds one genuine behavioral trait beyond the structured fields: the up-to-2-minute propagation delay for new transactions. It says nothing about pagination behavior or ordering despite 11 params.

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?

Two short sentences, front-loaded with the operation and followed by a useful caveat. No filler, though the latency note in parentheses could be more tightly integrated.

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

Completeness2/5

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

For an 11-parameter, filter-heavy list tool with no output schema and 0 required params, the description leaves too much unstated: what filters do, how pagination interacts, and what the agent gets back. Only the latency caveat is added beyond what annotations already provide.

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?

Schema description coverage is only 45%, and the description contributes no parameter meaning at all. Six filter parameters (user_id, course_id, affiliate_id, is_chargeback, pricing_plan_id, is_fully_refunded) are undocumented in both the schema and the description, so the description fails to compensate for the coverage gap.

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?

States a specific verb+resource ('Fetch a list of sales transactions') and scopes it to 'your school'. No sibling tool deals with transactions, so differentiation is automatic. Clear but could be sharper about what a returned transaction contains.

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?

The description offers no when-to-use or when-not-to-use guidance and names no alternative. It implies a listing purpose but says nothing about how the many optional filters (user_id, course_id, affiliate_id, etc.) map to use cases.

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