Skip to main content
Glama

createCheck

Destructive

Create a bearer payout link (moves money to a hold), or a named-list check: recipients reserves one seat per person with its own amount — only they can claim, unclaimed seats refund at expires_in.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
assetYesAsset code.
amountNoDecimal string in MAJOR units, e.g. "5" = 5 USDT. Never a float. Omit when `recipients` is given.
passwordNoClaimers must enter it.
spend_idNoIdempotency key.
expires_inNoSeconds until the check lapses and open seats refund.
recipientsNoNamed list (1..100): each seat is {user_id | username, amount}; exactly one handle.
pin_to_user_idNoOnly this Telegram user may claim.
pin_to_usernameNoOnly this @username may claim.

TDQS

A4.4/5.0
Behavior5/5

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

Annotations already declare destructiveHint=true, so the safety profile is known. The description adds valuable behavioral context: it states that money moves to a hold, that recipients reserve per-person seats with individual amounts, and that unclaimed seats refund at `expires_in`. This goes beyond the annotation and informs the agent about side effects.

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?

The description is two concise clauses that prioritize the core action and the key alternative mode. The phrase 'moves money to a hold' is front-loaded and immediately conveys the most important side effect. Every word earns its place; there is no fluff or repetition.

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?

For a tool with 8 parameters and no output schema, the description covers the essential decision points (bearer vs named-list, refund behavior) and relies on the rich schema for parameter details. It could mention that `amount` is required only for bearer checks, but the schema already states that, and the description does not mislead. Overall it is sufficient for an agent to invoke 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 all parameters are already documented. The description adds meaning by explaining how `recipients` and `expires_in` interact (per-seat claims and refunds), and hints that `amount` is omitted for named-list checks. This extra relational context helps the agent correctly combine parameters.

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 clearly states the tool creates a 'bearer payout link' or a 'named-list check', giving a specific verb and resource. It distinguishes itself from sibling tools like createInvoice and transfer by explicitly naming what it produces. The two modes are immediately evident, making its purpose unambiguous.

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?

The description implies when to use the tool (whenever a check is needed) but provides no explicit guidance on when not to use it or how it compares to alternatives like createInvoice or transfer. It explains the two internal variants but does not state selection criteria relative to siblings, leaving the choice to inference.

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.6/5.0
Disambiguation5/5

Each tool targets a distinct resource and action: invoices, subscription plans, subscriptions, checks, transfers, connection status, and app info are cleanly separated. Even similarly named tools like transfer and transferBatch are clearly distinguished by single vs. batch behavior.

Naming Consistency4/5

The overwhelming majority follow a clear camelCase verb_noun pattern, such as createInvoice, getChecks, and refundInvoice. Minor deviations exist with get_docs and connect_status using snake_case, and bare verbs like connect and transfer, but these do not seriously harm predictability.

Tool Count4/5

At 24 tools, the set is slightly above the ideal compact range, but the scope is genuinely broad: connection onboarding, invoices, subscriptions, checks, transfers, balances, rates, app settings, and documentation. Most tools cover distinct needed operations for a merchant payments API.

Completeness4/5

The core lifecycles are well covered: create/list/delete/refund for invoices, create/list/archive for subscription plans, create/list/delete for checks, and single/batch transfers with listings. The main gap is a lack of singular get-by-id endpoints for individual resources, though list endpoints likely make this workable.

Resources