Skip to main content
Glama

create_subscription_checkout

Creates a subscription checkout that charges the first cycle, stores the card for auto-renewal, and returns a hosted payment link plus an embedded-checkout session token.

Instructions

Create a subscription checkout for a plan: charges the first cycle, stores the card and auto-renews. Returns a payable shortLink (hosted) and a sessionToken (embedded checkout). Use after create_subscription_plan.

Input Schema

NameRequiredDescriptionDefault
envYes
amountYesFirst-cycle amount, normally the plan price
planIdYes
currencyYes
vendorIdYes
referenceNoYour order reference
access_tokenYesThe vendor's paas.build access token for this env (PAAS_SANDBOX_ACCESS_TOKEN / PAAS_PROD_ACCESS_TOKEN, returned by go_live and emailed to the builder)
customer_referenceNoYour stable id for this subscriber

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.3.0

TDQS

A4.1/5.0
Behavior4/5

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

With no annotations at all, the description carries the full behavioral burden and does most of it well: it discloses that real money moves on the first cycle, that the card is stored, and that billing auto-renews – the three facts an agent most needs before a destructive financial call. It omits failure modes, idempotency/retry behavior, and what state the subscription lands in if the initial charge fails.

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, both loaded: the first covers the action and its billing consequences, the second covers return values, and a trailing clause covers ordering. No filler, and the most decision-relevant facts (charge + auto-renew) are front-loaded.

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?

There is no output schema, and the description correctly fills that gap by naming the two return artifacts (shortLink for hosted, sessionToken for embedded). For an 8-parameter, 6-required financial mutation it still leaves the meaning of several required inputs and the failure path unaddressed, but the core call-shaping information is present.

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 coverage is only 50%, and four required parameters (env, planId, currency, vendorId) have no description anywhere. The description's phrase 'charges the first cycle' implicitly ties amount to the plan price, but that is already in the schema, so it adds essentially no new parameter meaning to compensate for the documented gaps.

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 ('Create a subscription checkout for a plan') and immediately qualifies it against the one-off sibling: it 'charges the first cycle, stores the card and auto-renews.' That verb-plus-scope framing tells an agent exactly how this differs from create_checkout and create_subscription_plan without opening any schema.

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 closing sentence 'Use after create_subscription_plan' gives an explicit sequencing prerequisite and names the sibling to call first. It stops short of stating when *not* to use this versus create_checkout (e.g., one-off purchases), so the exclusion side of the guidance is left implicit.

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