Skip to main content
Glama

escrow__open_escrow

Open a trustless escrow between payer and payee with amount in minor units. Platform fee is computed and frozen at open, with retry-safe idempotency via open_ref.

Instructions

[escrow — trustless escrow & settlement (exactly-once)] Open an escrow between payer and payee. amount_minor is a positive integer in minor units (cents). The platform fee is computed and FROZEN at open (ceil bps). Returns the escrow_id (state OPEN). RETRY-SAFE: pass open_ref= and a replayed open returns the ORIGINAL escrow (duplicate=true) instead of minting another one (E10).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
payeeYes
payerYes
termsNo
fee_bpsNo
currencyNoUSD
deadlineNo
open_refNo
amount_minorYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. Addedv0.1.12
  2. Removedv0.1.11
  3. Changed11 schema fields changedv0.1.9
    • removedInput schema / properties / amount_minor / title
      Removed value: -"Amount Minor"
    • removedInput schema / properties / currency / title
      Removed value: -"Currency"
    • removedInput schema / properties / deadline / title
      Removed value: -"Deadline"
    • removedInput schema / properties / fee_bps / anyOf
      Removed value: -[
      -  {
      -    "type": "integer"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / fee_bps / default
      Removed value: -null
    • removedInput schema / properties / fee_bps / title
      Removed value: -"Fee Bps"
    • addedInput schema / properties / fee_bps / type
      Added value: +"integer"
    • removedInput schema / properties / payee / title
      Removed value: -"Payee"
    • removedInput schema / properties / payer / title
      Removed value: -"Payer"
    • removedInput schema / properties / terms / title
      Removed value: -"Terms"
    • removedInput schema / title
      Removed value: -"open_escrowArguments"
  4. Changed11 schema fields changed
    • addedInput schema / properties / amount_minor / title
      Added value: +"Amount Minor"
    • addedInput schema / properties / currency / title
      Added value: +"Currency"
    • addedInput schema / properties / deadline / title
      Added value: +"Deadline"
    • addedInput schema / properties / fee_bps / anyOf
      Added value: +[
      +  {
      +    "type": "integer"
      +  },
      +  {
      +    "type": "null"
      +  }
      +]
    • addedInput schema / properties / fee_bps / default
      Added value: +null
    • addedInput schema / properties / fee_bps / title
      Added value: +"Fee Bps"
    • removedInput schema / properties / fee_bps / type
      Removed value: -"integer"
    • addedInput schema / properties / payee / title
      Added value: +"Payee"
    • addedInput schema / properties / payer / title
      Added value: +"Payer"
    • addedInput schema / properties / terms / title
      Added value: +"Terms"
    • addedInput schema / title
      Added value: +"open_escrowArguments"
  5. Changed11 schema fields changed
    • removedInput schema / properties / amount_minor / title
      Removed value: -"Amount Minor"
    • removedInput schema / properties / currency / title
      Removed value: -"Currency"
    • removedInput schema / properties / deadline / title
      Removed value: -"Deadline"
    • removedInput schema / properties / fee_bps / anyOf
      Removed value: -[
      -  {
      -    "type": "integer"
      -  },
      -  {
      -    "type": "null"
      -  }
      -]
    • removedInput schema / properties / fee_bps / default
      Removed value: -null
    • removedInput schema / properties / fee_bps / title
      Removed value: -"Fee Bps"
    • addedInput schema / properties / fee_bps / type
      Added value: +"integer"
    • removedInput schema / properties / payee / title
      Removed value: -"Payee"
    • removedInput schema / properties / payer / title
      Removed value: -"Payer"
    • removedInput schema / properties / terms / title
      Removed value: -"Terms"
    • removedInput schema / title
      Removed value: -"open_escrowArguments"
  6. First observed

TDQS

A3.9/5.0
Behavior4/5

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

No annotations provided, so description carries full burden. Discloses trustless, exactly-once semantics, fee frozen at open, and retry-safety. Lacks mention of permission requirements or side effects beyond state change.

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?

Concise, front-loaded, and well-structured. Contains all essential information without filler. Could be slightly more organized but effective.

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?

Given 8 parameters, no output schema, and no annotations, the description is incomplete. Explains retry-safety and fee computation but omits many parameter details and error conditions.

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

Parameters2/5

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

Schema description coverage is 0%; only amount_minor and open_ref are explained in text. Other 6 parameters (payee, payer, terms, fee_bps, currency, deadline) lack any description. Inadequate compensation.

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 tool opens an escrow between payer and payee, differentiating it from sibling escrow tools like fund, release, refund, dispute. It specifies the verb 'open' and resource 'escrow', and adds retry-safety details.

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?

Provides clear context on when to use: for opening escrows. Mentions retry-safety with open_ref and duplicate behavior. However, does not explicitly state when not to use or compare to alternatives like direct settlement.

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

Deploy Server

Other Tools