Skip to main content
Glama

A card payment page for a draft election

create_checkout_link

A secure Stripe payment page for a DRAFT election's fee, for the person you act for to pay by card. It creates the page and charges nothing: hand the person the link. The page asks for exactly the price get_election_price reports. Publishing follows the payment either way: the election's page, where Stripe returns them, publishes it once the payment lands, and publish_election with after_payment: true publishes it from here or answers already_published. Refused when nothing is owed (free, already paid, or covered by a plan) and when the prepaid balance covers the fee, because publishing then takes it without a card.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "election": "<election>"
    },
    "name": "create_checkout_link"
  }
}

Input Schema

NameRequiredDescriptionDefault
electionYesThe election's id or slug, from list_elections or create_election_draft.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

Annotations only cover safety hints; the description adds substantial context beyond them: it charges nothing, the page price is tied to get_election_price, publishing behavior on payment, and precise refusal conditions. This is rich behavioral disclosure for a mutation tool.

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?

Purpose is front-loaded and nearly every clause carries information (refusals, publishing flow, price source). The back half is dense and could be trimmed slightly, but there is little waste.

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 exists, yet the description explains what is produced (a link to hand over) and the downstream publishing consequences. An agent has enough to call and reason about the result correctly.

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 coverage is 100% and the single 'election' param is fully documented as an id/slug from list_elections or create_election_draft. The description adds no further meaning to the parameter itself, so baseline 3 applies.

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: it creates a secure Stripe payment page for a DRAFT election's fee. It even scopes the audience ('the person you act for') and clarifies that it charges nothing itself, distinguishing it from the actual payment and from publish_election.

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?

Explicitly names alternatives and conditions: use publish_election with after_payment: true to publish from here, note that publishing follows the payment either way, and enumerate refusal cases (free, already paid, plan-covered, prepaid balance covers fee). When and when-not are both covered.

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