Skip to main content
Glama

Prepare: cancel a Bailouts offer

bailout_cancel
Read-onlyIdempotent

Unsigned transaction cancelling a live offer on the version 2 trade account before anyone takes it: the owner cancels any, the agent the ones it posted. Simulated from the wallet.

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": {
      "wallet": "<wallet>",
      "offer_id": "<offer_id>"
    },
    "name": "bailout_cancel"
  }
}

Input Schema

NameRequiredDescriptionDefault
walletYesThe wallet's address (0x...); the transactions are built for it to sign
accountNoA version 2 trade account's address (default: the wallet's own, as its owner; an agent gives its owner's account)
offer_idYesThe offer's number (bailouts shows each one's)

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotentHint but the description adds what matters beyond them: the output is an unsigned transaction, it is simulated from the wallet, and it therefore must be signed rather than executed server-side — important context that prevents misreading readOnlyHint=true as 'nothing will be cancelled'. It still doesn't say what happens on failure (e.g. offer already taken) or that a subsequent broadcast step is needed.

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?

A single dense sentence with a colon-separated permission clause; the most decision-relevant fact (unsigned/simulated preparation) is front-loaded and nothing is wasted. Only the slightly awkward opening ('Unsigned transaction cancelling…') keeps it from being model-clean.

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?

For a 3-parameter prepare tool with no output schema, the definition covers purpose, state precondition, permission model, and the fact that the result is an unsigned simulated transaction the wallet must sign. That is everything an agent needs to select and call it 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 description coverage is 100% and the schema already explains wallet, account (including the owner-vs-agent default) and offer_id. The description adds no syntax, format, or edge-case detail beyond that, so the baseline of 3 applies.

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?

States a specific verb and resource — an unsigned transaction cancelling a live offer on the version 2 trade account — and clarifies the authorization split (owner cancels any, agent cancels the ones it posted). It is distinguishable from the 'prepare/unsigned' flavor of sibling tools, though it never names how it relates to cancel_order or trigger_cancel, leaving the agent to infer that difference.

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?

There is a clear temporal precondition (use it while the offer is live, 'before anyone takes it'), which is genuine usage context. However, no alternative tool is named and no explicit when-not condition is given, so an agent comparing bailout_cancel against cancel_order or trigger_cancel has no routing guidance.

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