Skip to main content
Glama

Smartrr MCP by usefulapi

List a subscription's bills

smartrr_get_subscription_bills
Read-only

Billing attempts of one subscription (amount, status pending/processing/succeeded/failed/canceled, billing date, retry count, error), by its Shopify subscription id. GET /vendor/purchase-state/{shopifySubscriptionId}/bills.

Input Schema

NameRequiredDescriptionDefault
pageNoPage number, from 1 (default 1). Pass the previous reply's next_page.
sortNoSort by creation date (default: Smartrr's own order).
page_sizeNoResults per page, 1-100 (default 25).
shopify_subscription_idYesThe subscription's Shopify id (`shopifyId` in smartrr_list_subscriptions).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true, destructiveHint=false and openWorldHint=true, so the safety profile is covered. The description adds useful content context (status lifecycle pending/processing/succeeded/failed/canceled, retry count, error field) and the underlying endpoint, but says nothing about pagination behavior or ordering beyond what the schema states.

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?

A single dense sentence front-loads the resource, then the field list, then the identifier and endpoint. Every clause carries information, though the parenthetical field enumeration is slightly list-heavy.

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?

With no output schema, the description compensates by sketching the returned record shape and status values. Combined with a fully documented param schema, an agent has enough to call it correctly; only pagination semantics and sibling disambiguation are left unstated.

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%, so page, page_size, sort and shopify_subscription_id are fully documented in structured fields. The description reinforces the id's meaning but adds no syntax or format detail beyond the schema, so baseline 3 applies.

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?

Names a specific resource (billing attempts of one subscription), the keying identifier (Shopify subscription id), and enumerates the returned fields. The scoping phrase 'of one subscription' implicitly separates it from smartrr_list_bills, but no sibling is named outright.

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 implied by the required subscription id, but there is no explicit statement of when to pick this over smartrr_list_bills or smartrr_get_bill_history, nor any note that the id must come from smartrr_list_subscriptions (that hint only lives in the schema).

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.