Skip to main content
Glama

Check your merchant checkout and booking

get_direct_payment
Idempotent

Check an existing deposit booking on your signed-in Direct account: reconcile its Stripe Checkout payment and return its receipt and the separate booking state. Use it after send_to_business returned a payment_url for a deposit booking, to see whether the person has paid; it cannot start a payment, which the person makes on Stripe’s hosted page. Pass biz (the business id from its card) and task_id (the task id send_to_business returned for that booking). Requires direct:tasks. Uses only the stored merchant account and amount and creates no new charge or booking identity; a verified paid checkout may finish its already-authorized held booking. Payout status remains unknown: paid does not mean a bank payout. Safe to repeat. Example: biz='harbor-plumbing', task_id='tk_5d0' after send_to_business returned a payment_url for a deposit booking.

Input Schema

NameRequiredDescriptionDefault
bizYesThe business id (from its card) the deposit booking was made with.
task_idYesThe task id send_to_business returned for that booking.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changed
    • addedInput schema / properties / biz / description
      Added value: +"The business id (from its card) the deposit booking was made with."
    • addedInput schema / properties / task_id / description
      Added value: +"The task id send_to_business returned for that booking."
  2. Added

TDQS

A4.8/5.0
Behavior5/5

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

Goes well beyond annotations: it names the required scope (direct:tasks), discloses that it 'creates no new charge or booking identity,' warns that a verified paid checkout 'may finish its already-authorized held booking' (explaining why readOnlyHint is false for a get_* tool), cautions that 'paid does not mean a bank payout,' and confirms repeat safety. This is exactly the contextual disclosure annotations cannot carry.

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?

Front-loaded with the verb and purpose, and every sentence carries operational weight. It is on the long side, with mild redundancy about payment_url and the example repeating the trigger condition already stated in the second sentence.

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?

No output schema, but the description still tells the agent what comes back (receipt plus separate booking state), what is and isn't knowable (payout status unknown), prerequisites, and side-effect boundaries. Nothing needed to call it correctly is missing.

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. The description adds provenance ('the business id from its card', the task id send_to_business returned) and a concrete example with format hints (biz='harbor-plumbing', task_id='tk_5d0'), though it largely restates the schema's own parameter wording.

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?

States a specific verb and resource: 'Check an existing deposit booking... reconcile its Stripe Checkout payment and return its receipt and the separate booking state.' It also distinguishes itself from siblings by naming send_to_business as the predecessor and noting that it 'cannot start a payment.'

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

Usage Guidelines5/5

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

Explicit trigger: 'Use it after send_to_business returned a payment_url for a deposit booking.' Explicit exclusion: 'it cannot start a payment, which the person makes on Stripe's hosted page.' The only prerequisite, the direct:tasks scope, is named.

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.