Skip to main content
Glama

Tanatasa Beauty

set_checkout_details

DestructiveIdempotent

Save the buyer's contact and Singapore delivery details on a checkout. Send its current details_version; the result has the new one. Does not charge anything. Details can't change once payment preparation starts.

Input Schema

NameRequiredDescriptionDefault
detailsYesContact and Singapore delivery details exactly as the buyer gave them.
checkout_idYescheckout_id from create_checkout or checkout_session.
guest_tokenNoPrivate guest session token from create_cart. Retain for cart, checkout and purchase-status calls; no account login needed.
details_versionYesThe checkout's current details_version from get_checkout (0 before any details are saved).

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -{
      -  "anyOf": [
      -    {
      -      "$schema": "http://json-schema.org/draft-07/schema#",
      -      "additionalProperties": true,
      -      "properties": {
      -        "buyer_details": {
      -          "anyOf": [
      -            {
      -              "additionalProperties": true,
      -              "properties": {
      -                "contact": {
      -                  "additionalProperties": true,
      -                  "properties": {
      -                    "email": {
      -                      "type": "string"
      -                    },
      -                    "name": {
      -                      "type": "string"
      -                    },
      -                    "phone": {
      -                      "type": "string"
      -                    }
      -                  },
      -                  "required": [
      -                    "name",
      -                    "email",
      -                    "phone"
      -                  ],
      -                  "type": "object"
      -                },
      -                "delivery": {
      -                  "additionalProperties": true,
      -                  "properties": {
      -                    "address_line1": {
      -                      "type": "string"
      -                    },
      -                    "postal_code": {
      -                      "type": "string"
      -                    },
      -                    "unit_number": {
      -                      "type": "string"
      -                    }
      -                  },
      -                  "required": [
      -                    "address_line1",
      -                    "postal_code"
      -                  ],
      -                  "type": "object"
      -                }
      -              },
      -              "required": [
      -                "contact",
      -                "delivery"
      -              ],
      -              "type": "object"
      -            },
      -            {
      -              "type": "null"
      -            }
      -          ]
      -        },
      -        "buyer_summary": {
      -          "type": "string"
      -        },
      -        "cart_url": {
      -          "anyOf": [
      -            {
      -              "format": "uri",
      -              "type": "string"
      -            },
      -            {
      -              "type": "null"
      -            }
      -          ]
      -        },
      -        "checkout_id": {
      -          "type": "string"
      -        },
      -        "checkout_status": {
      -          "enum": [
      -            "cancelled",
      -            "confirmed",
      -            "cart_changed",
      -            "payment_pending",
      -            "ready_for_payment",
      -            "details_required"
      -          ],
      -          "type": "string"
      -        },
      -        "checkout_url": {
      -          "anyOf": [
      -            {
      -              "format": "uri",
      -              "type": "string"
      -            },
      -            {
      -              "type": "null"
      -            }
      -          ]
      -        },
      -        "confirmation_url": {
      -          "anyOf": [
      -            {
      -              "format": "uri",
      -              "type": "string"
      -            },
      -            {
      -              "type": "null"
      -            }
      -          ]
      -        },
      -        "currency": {
      -          "const": "SGD",
      -          "type": "string"
      -        },
      -        "details_version": {
      -          "type": "integer"
      -        },
      -        "expires_at": {
      -          "format": "date-time",
      -          "type": "string"
      -        },
      -        "handoff_options": {
      -          "items": {
      -            "additionalProperties": true,
      -            "properties": {
      -              "available": {
      -                "type": "boolean"
      -              },
      -              "buyer_action": {
      -                "type": "string"
      -              },
      -              "path": {
      -                "type": "string"
      -              },
      -              "reason": {
      -                "type": "string"
      -              },
      -              "url": {
      -                "anyOf": [
      -                  {
      -                    "format": "uri",
      -                    "type": "string"
      -                  },
      -                  {
      -                    "type": "null"
      -                  }
      -                ]
      -              }
      -            },
      -            "required": [
      -              "path",
      -              "available"
      -            ],
      -            "type": "object"
      -          },
      -          "type": "array"
      -        },
      -        "money_unit": {
      -          "const": "cents",
      -          "type": "string"
      -        },
      -        "next_action": {
      -          "type": "string"
      -        },
      -        "order_id": {
      -          "type": "string"
      -        },
      -        "payment_confirmed": {
      -          "type": "boolean"
      -        },
      -        "payment_status": {
      -          "type": "string"
      -        },
      -        "payment_url": {
      -          "anyOf": [
      -            {
      -              "format": "uri",
      -              "type": "string"
      -            },
      -            {
      -              "type": "null"
      -            }
      -          ]
      -        },
      -        "payment_url_expires_at": {
      -          "anyOf": [
      -            {
      -              "format": "date-time",
      -              "type": "string"
      -            },
      -            {
      -              "type": "null"
      -            }
      -          ]
      -        },
      -        "total": {
      -          "description": "Integer SGD cents; 1690 means S$16.90.",
      -          "minimum": 0,
      -          "type": "integer"
      -        }
      -      },
      -      "required": [
      -        "currency",
      -        "money_unit",
      -        "checkout_id",
      -        "order_id",
      -        "checkout_url",
      -        "cart_url",
      -        "details_version",
      -        "checkout_status",
      -        "payment_url",
      -        "payment_url_expires_at",
      -        "payment_confirmed",
      -        "confirmation_url",
      -        "expires_at",
      -        "total",
      -        "payment_status",
      -        "buyer_summary",
      -        "next_action",
      -        "buyer_details",
      -        "handoff_options"
      -      ],
      -      "type": "object"
      -    },
      -    {
      -      "additionalProperties": true,
      -      "properties": {
      -        "error": {
      -          "additionalProperties": true,
      -          "properties": {
      -            "code": {
      -              "type": "string"
      -            },
      -            "message": {
      -              "type": "string"
      -            }
      -          },
      -          "required": [
      -            "code",
      -            "message"
      -          ],
      -          "type": "object"
      -        }
      -      },
      -      "required": [
      -        "error"
      -      ],
      -      "type": "object"
      -    }
      -  ],
      -  "type": "object"
      -}New value: +null
  2. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -nullNew value: +{
      +  "anyOf": [
      +    {
      +      "$schema": "http://json-schema.org/draft-07/schema#",
      +      "additionalProperties": true,
      +      "properties": {
      +        "buyer_details": {
      +          "anyOf": [
      +            {
      +              "additionalProperties": true,
      +              "properties": {
      +                "contact": {
      +                  "additionalProperties": true,
      +                  "properties": {
      +                    "email": {
      +                      "type": "string"
      +                    },
      +                    "name": {
      +                      "type": "string"
      +                    },
      +                    "phone": {
      +                      "type": "string"
      +                    }
      +                  },
      +                  "required": [
      +                    "name",
      +                    "email",
      +                    "phone"
      +                  ],
      +                  "type": "object"
      +                },
      +                "delivery": {
      +                  "additionalProperties": true,
      +                  "properties": {
      +                    "address_line1": {
      +                      "type": "string"
      +                    },
      +                    "postal_code": {
      +                      "type": "string"
      +                    },
      +                    "unit_number": {
      +                      "type": "string"
      +                    }
      +                  },
      +                  "required": [
      +                    "address_line1",
      +                    "postal_code"
      +                  ],
      +                  "type": "object"
      +                }
      +              },
      +              "required": [
      +                "contact",
      +                "delivery"
      +              ],
      +              "type": "object"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "buyer_summary": {
      +          "type": "string"
      +        },
      +        "cart_url": {
      +          "anyOf": [
      +            {
      +              "format": "uri",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "checkout_id": {
      +          "type": "string"
      +        },
      +        "checkout_status": {
      +          "enum": [
      +            "cancelled",
      +            "confirmed",
      +            "cart_changed",
      +            "payment_pending",
      +            "ready_for_payment",
      +            "details_required"
      +          ],
      +          "type": "string"
      +        },
      +        "checkout_url": {
      +          "anyOf": [
      +            {
      +              "format": "uri",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "confirmation_url": {
      +          "anyOf": [
      +            {
      +              "format": "uri",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "currency": {
      +          "const": "SGD",
      +          "type": "string"
      +        },
      +        "details_version": {
      +          "type": "integer"
      +        },
      +        "expires_at": {
      +          "format": "date-time",
      +          "type": "string"
      +        },
      +        "handoff_options": {
      +          "items": {
      +            "additionalProperties": true,
      +            "properties": {
      +              "available": {
      +                "type": "boolean"
      +              },
      +              "buyer_action": {
      +                "type": "string"
      +              },
      +              "path": {
      +                "type": "string"
      +              },
      +              "reason": {
      +                "type": "string"
      +              },
      +              "url": {
      +                "anyOf": [
      +                  {
      +                    "format": "uri",
      +                    "type": "string"
      +                  },
      +                  {
      +                    "type": "null"
      +                  }
      +                ]
      +              }
      +            },
      +            "required": [
      +              "path",
      +              "available"
      +            ],
      +            "type": "object"
      +          },
      +          "type": "array"
      +        },
      +        "money_unit": {
      +          "const": "cents",
      +          "type": "string"
      +        },
      +        "next_action": {
      +          "type": "string"
      +        },
      +        "order_id": {
      +          "type": "string"
      +        },
      +        "payment_confirmed": {
      +          "type": "boolean"
      +        },
      +        "payment_status": {
      +          "type": "string"
      +        },
      +        "payment_url": {
      +          "anyOf": [
      +            {
      +              "format": "uri",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "payment_url_expires_at": {
      +          "anyOf": [
      +            {
      +              "format": "date-time",
      +              "type": "string"
      +            },
      +            {
      +              "type": "null"
      +            }
      +          ]
      +        },
      +        "total": {
      +          "description": "Integer SGD cents; 1690 means S$16.90.",
      +          "minimum": 0,
      +          "type": "integer"
      +        }
      +      },
      +      "required": [
      +        "currency",
      +        "money_unit",
      +        "checkout_id",
      +        "order_id",
      +        "checkout_url",
      +        "cart_url",
      +        "details_version",
      +        "checkout_status",
      +        "payment_url",
      +        "payment_url_expires_at",
      +        "payment_confirmed",
      +        "confirmation_url",
      +        "expires_at",
      +        "total",
      +        "payment_status",
      +        "buyer_summary",
      +        "next_action",
      +        "buyer_details",
      +        "handoff_options"
      +      ],
      +      "type": "object"
      +    },
      +    {
      +      "additionalProperties": true,
      +      "properties": {
      +        "error": {
      +          "additionalProperties": true,
      +          "properties": {
      +            "code": {
      +              "type": "string"
      +            },
      +            "message": {
      +              "type": "string"
      +            }
      +          },
      +          "required": [
      +            "code",
      +            "message"
      +          ],
      +          "type": "object"
      +        }
      +      },
      +      "required": [
      +        "error"
      +      ],
      +      "type": "object"
      +    }
      +  ],
      +  "type": "object"
      +}
  3. Changed9 schema fields changed
    • addedInput schema / properties / details / properties / contact / description
      Added value: +"The buyer's name, email and phone."
    • addedInput schema / properties / details / properties / delivery / properties / address_line1 / description
      Added value: +"Block/house number and street, e.g. \"123 Tampines Street 11\"."
    • addedInput schema / properties / details / properties / delivery / properties / address_line2 / description
      Added value: +"Optional building or estate name."
    • addedInput schema / properties / details / properties / delivery / properties / city / description
      Added value: +"Defaults to Singapore."
    • addedInput schema / properties / details / properties / delivery / properties / country / description
      Added value: +"Defaults to SG; Singapore delivery only."
    • changedInput schema / properties / details / properties / delivery / properties / no_unit_number / description
      Previous value: -"true for a landed house or other address with no unit number."New value: +"Set true only for a landed house or other address with no unit number."
    • addedInput schema / properties / details / properties / delivery / properties / recipient_name / description
      Added value: +"Defaults to contact.name."
    • addedInput schema / properties / details / properties / delivery / properties / recipient_phone / description
      Added value: +"Defaults to contact.phone."
    • changedInput schema / properties / details / properties / delivery / required
      Previous value: -[
      -  "recipient_name",
      -  "recipient_phone",
      -  "address_line1",
      -  "no_unit_number",
      -  "postal_code",
      -  "country"
      -]New value: +[
      +  "address_line1",
      +  "postal_code"
      +]
  4. Changed6 schema fields changed
    • addedInput schema / properties / checkout_id / description
      Added value: +"checkout_id from create_checkout or checkout_session."
    • addedInput schema / properties / details / description
      Added value: +"Contact and Singapore delivery details exactly as the buyer gave them."
    • addedInput schema / properties / details / properties / delivery / properties / no_unit_number / description
      Added value: +"true for a landed house or other address with no unit number."
    • addedInput schema / properties / details / properties / delivery / properties / postal_code / description
      Added value: +"The 6-digit Singapore postal code."
    • addedInput schema / properties / details / properties / delivery / properties / unit_number / description
      Added value: +"e.g. #12-34. Required unless no_unit_number is true."
    • addedInput schema / properties / details_version / description
      Added value: +"The checkout's current details_version from get_checkout (0 before any details are saved)."
  5. Added

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, destructiveHint=true and idempotentHint=true, so the safety profile is partly covered. The description adds non-obvious behavior: no charge is made, the write is version-guarded, and the record becomes immutable once payment preparation begins.

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?

Four short sentences, roughly 40 words, front-loaded with the action and then the version contract and the locking rule. Every sentence carries distinct information with no restatement of the name.

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?

With no output schema, the description still tells the agent what comes back (the new details_version) and when the write is refused (post payment-preparation). It stops short of saying what happens on a version mismatch or whether guest_token is required, but those gaps are small for a 4-parameter tool.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so the field-level meaning of contact/delivery is already carried by the schema. The description still adds real value by explaining the optimistic-concurrency contract: send the current details_version and the result carries the new one, which is more than the schema's 'from get_checkout' note.

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?

Specific verb and resource: 'Save the buyer's contact and Singapore delivery details on a checkout.' It also draws a boundary against the payment sibling by stating 'Does not charge anything', so an agent can tell it apart from prepare_payment without opening either 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?

Gives a clear when-not condition ('Details can't change once payment preparation starts') and the required precondition of passing the current details_version. It does not explicitly name prepare_payment as the next step, but the 'does not charge' clause strongly implies the handoff.

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