Skip to main content
Glama

SYMONE motorcycle transport

Check whether the customer has paid

complete_checkout
Idempotent

UCP complete step. SYMONE never takes payment through an assistant, so this never charges anything: it returns the session with status completed if the customer has already paid on symone.fr, otherwise requires_escalation with the continue_url to give to the customer.

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": {
      "id": "<id>"
    },
    "name": "complete_checkout"
  }
}

Input Schema

NameRequiredDescriptionDefault
idYesCheckout session id returned by create_checkout ("chk_…").
metaNoOptional UCP request metadata: {"ucp-agent": {"profile": "https://…/.well-known/ucp"}, "idempotency-key": "<uuid>"}. Send an idempotency key to retry safely.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.7/5.0
Behavior4/5

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

Annotations declare readOnlyHint=false, idempotentHint=true and destructiveHint=false, so the mutation profile is partly covered — but the description adds the genuinely important disclosure that it never charges anything despite being a non-read-only call. It also documents both outcome branches (status completed vs requires_escalation with continue_url), which the annotations cannot express. Error and failure paths are not covered.

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?

Two sentences, no padding, with the safety-critical 'never charges anything' clause placed early. The trailing fragment 'UCP complete step' is slightly opaque but efficiently sets domain context.

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, so the description carries the burden of describing returns, and it does so for both branches (completed session, or requires_escalation plus continue_url). Given the tool's simplicity and the schema's full parameter documentation, only error/edge-case behavior is missing.

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 100%, with the id parameter and the meta/idempotency-key object fully documented in the schema itself, and the description adds no format or idempotency-retry detail beyond what is already there. Baseline 3 is appropriate since the schema does the heavy lifting.

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 names the concrete operation (the UCP 'complete' step on a checkout session) and the title frames it as verifying payment, which an agent can distinguish from siblings like get_checkout and update_checkout. The opening 'UCP complete step' is jargon that only resolves after reading the second clause, so it is clear but not immediately front-loaded.

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

Usage Guidelines3/5

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

Usage is implied rather than stated: the agent can infer this is the finalization step after create_checkout, and that a requires_escalation response means handing continue_url to the customer. There is no explicit 'use this instead of get_checkout' or precondition statement about when calling it is appropriate.

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