Skip to main content
Glama

get_billing_history

Read-onlyIdempotent

Read the signed-in person's billing history: plan invoices, add-on charges, lifetime purchases and API deposits, newest first, with links to each Stripe invoice. Read-only — it charges nothing and changes nothing. Requires an OAuth 2.1 user access token.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
limitNoRows per page, 1-100. Default 24.
beforeNoISO 8601 timestamp to page backwards from — pass the `next_cursor` from a previous call.

TDQS

A4.3/5.0
Behavior4/5

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

Annotations already carry readOnlyHint, idempotentHint, and destructiveHint, so the description's 'Read-only — it charges nothing and changes nothing' reinforces but does not contradict them. It adds valuable extras: OAuth 2.1 user access token requirement, Stripe invoice links, supported charge types, and newest-first ordering.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, zero filler. The core action and scope are front-loaded, the read-only behavior is stated plainly, and the auth requirement is included in the second sentence without bloat.

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?

For a simple two-optional-parameter read tool with no output schema, the description covers what the result contains, the ordering, the linking behavior, auth needs, and side-effect safety. Nothing essential is missing for an agent to select and invoke it correctly.

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?

Input schema coverage is 100%, with both limit and before already documented. The description adds contextual meaning around the result set but does not need to re-explain the parameters, so the baseline 3 is appropriate.

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?

Description opens with a specific verb-resource pair: 'Read the signed-in person's billing history', then enumerates the exact contents (plan invoices, add-on charges, lifetime purchases, API deposits) and ordering (newest first). This makes it easy to distinguish from siblings like check_balance and get_billing_portal_url even without naming them.

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?

The description gives clear context for when to call this tool: any time an agent needs the signed-in user's billing history. It does not explicitly name alternative tools or state when not to use it, but the scope is specific enough that an agent can route correctly.

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.

TDQS

A3.8/5.0
Disambiguation3/5

The set contains several near-neighbor groups: deprecated aliases duplicate live tools, and docs/billing/financial tools have fuzzy boundaries. Individual descriptions are detailed and resolve most collisions, but matching the right tool among 39 still requires care.

Naming Consistency3/5

Most tools follow a sensible verb_object style, but the transcribe_* group is inconsistent: transcribe_url/transcribe_upload are verb_object, while transcribe_status/transcribe_cancel/transcribe_delete are really status/cancel/delete operations renamed with a transcribe prefix. The deprecated transcription_status/transcription_url aliases add another naming convention, so the pattern is not reliable across the set.

Tool Count2/5

39 tools is well over the 25+ threshold and creates an overwhelmingly broad surface spanning account management, billing, docs, API jobs, library organization, meeting bots, and automations. Two deprecated duplicates inflate the count further. This would be more coherent split into separate servers or at least pruned of deprecated aliases.

Completeness3/5

Core API transcription lifecycle is covered, and the library/meeting-bot flows have search, tagging, moving, and audio retrieval. However, there is no user-library deletion/rename, no OAuth-side full-transcript access, local upload is non-functional over the hosted endpoint, and webhook management is documented but not exposed as tools. These gaps force agents to work around missing operations.