Skip to main content
Glama

Create checkout link

create_checkout_link

Creates a Stripe checkout link to purchase a new Button Wall button; the buyer opens and pays via Stripe, and the button goes live after review.

Instructions

Creates a Stripe checkout link for a new button. Nothing is charged by this call: the link must be opened and paid by the human buyer, and the button goes live only after a person at The Button Wall reviews it (full refund if rejected). Confirm size, position, plan, price, text and link with the user before calling. Call once per purchase: checkout links are rate-limited (10 per 10 minutes).

Input Schema

NameRequiredDescriptionDefault
urlYes
planYes1m = 30 days, 6m = 180 days (−10%), 12m = 360 days (−20%)
x_pxYes
y_pxYes
emailYesBuyer's email; receipts and the private manage link go here.
labelYesButton text (the call to action).
bg_colorNo#2563eb
width_pxYes
height_pxYes
text_colorNo#ffffff
bg_color_endNoOptional gradient end colour.
show_faviconNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.1

TDQS

A4.1/5.0
Behavior5/5

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

Annotations already declare non-read-only, non-idempotent, open-world behavior, and the description adds substantial context beyond that: no charge occurs at call time, payment happens when a human opens the link, the button only goes live after human review, rejection triggers a full refund, and there is a 10-per-10-minutes rate limit. This is exactly the supplemental behavioral detail the annotations cannot express.

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?

Three dense sentences, each earning its place, with the core purpose front-loaded and the less critical review/rate-limit details following. No filler or restatement of the title.

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?

Given 12 parameters, no output schema, and a mutation with real-world consequences, the description covers preconditions, side effects, review, refunds, and rate limits well. The remaining gap is the return value — with no output schema, the agent is not told that the result is a checkout URL to hand to the buyer.

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 only 33%, so the description carries more burden than usual. 'Confirm size, position, plan, price, text and link' loosely groups the required inputs (width/height, x/y, plan, label, url) but adds no syntax, ranges, or meaning for the eight undocumented fields such as x_px/y_px coordinates on the wall or the color parameters.

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?

The description gives a specific verb and resource — 'Creates a Stripe checkout link for a new button' — which is clearly distinct from the read-only siblings (get_wall_status, quote_spot, find_free_spots). It does not explicitly name those siblings, but the create-vs-read distinction is unambiguous from the wording.

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?

It states a concrete precondition ('Confirm size, position, plan, price, text and link with the user before calling') and a frequency constraint ('Call once per purchase: checkout links are rate-limited (10 per 10 minutes)'). It stops short of naming which sibling to use when the agent only needs pricing or availability, so the alternative-routing guidance is absent.

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