Skip to main content
Glama

create_checkout_session

Generate a live Stripe Checkout URL for an existing quote_id or order_id, settling to @neuronsystems. The amount is read from the stored quote; it cannot be supplied by the caller. Call estimate_ad_cost first.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
order_idNoExisting order to settle. Provide this or quote_id.
quote_idNoQuote to settle. Provide this or order_id.
customer_emailNoOptional buyer email for the receipt.
idempotency_keyNoOptional. Reuse on retry to avoid duplicate sessions.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior3/5

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

No annotations are present, so the description must bear the full behavioral disclosure. It does disclose the key constraint that the amount is read from the stored quote and cannot be supplied, and that it settles to @neuronsystems. However, it omits details about error handling, idempotency semantics (despite the idempotency_key parameter), and the behavior when both order_id and quote_id are provided.

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 sentences with zero wasted words. The purpose is stated first, followed by the key constraint and a usage prerequisite. It is front-loaded and efficient, ideal for agent consumption.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

The tool has no output schema, so the description should indicate the return value. It says 'Generate a live Stripe Checkout URL', implying the output is the URL, but it does not specify the exact format or any accompanying details. It also does not mention authentication requirements, error scenarios, or how idempotency_key should be used despite being in the schema. For a tool that creates a checkout session, the description covers the core action and prerequisite but omits potential edge cases.

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?

The schema already documents all parameters with 100% coverage, providing descriptions for each. The description adds a critical clarification that the amount is not a parameter and is derived from the quote, which helps agents understand the absence of an amount field. It also reinforces the either/or relationship between order_id and quote_id, though the schema already states this. Overall, it adds marginal value beyond the schema.

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 action (generate a live Stripe Checkout URL), the target (existing quote_id or order_id), and the settling entity (@neuronsystems). It also clarifies that the amount is not caller-supplied, distinguishing it from payment tools that accept an amount. This makes the purpose unambiguous and distinct from sibling tools.

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 description explicitly instructs to call estimate_ad_cost first, establishing a dependency and ordering. It implies the tool is for existing quotes/orders, not for creating them, which differentiates it from create_ad_order. However, it does not explicitly state when not to use it, such as for new quotes lacking a cost estimate.

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.

Resources