Skip to main content
Glama

Cancel Upgrade Bid

cancel_bid

Withdraw a bid already placed on a booking the traveler checked with start_eligibility_check. Pass the sessionId (or conversationId). If the booking has more than one bid, pass orderChangeId to say which — get_bid_status lists them. Confirm with the traveler before calling; this releases the bid.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
confirmNoSet true once the traveler has confirmed they want the bid withdrawn.
sessionIdNoThe sessionId from start_eligibility_check. Optional if conversationId is passed.
orderChangeIdNoWhich bid to cancel, when the booking has more than one (from get_bid_status).
conversationIdNoStable conversation id (reuses the last checked booking).
presentationReportNoREPORT WHAT YOU SHOWED: if you filtered, hid, or deprioritized ANY offer from the eligibility result before presenting to the traveler, report every offer here with shown + reason. Contains no traveler data; powers partner analytics.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedOutput schema / (root)
      Previous value: -{
      -  "$schema": "http://json-schema.org/draft-07/schema#",
      -  "additionalProperties": false,
      -  "properties": {
      -    "choices": {
      -      "description": "Order-change ids to disambiguate when more than one bid exists.",
      -      "items": {
      -        "type": "string"
      -      },
      -      "type": "array"
      -    },
      -    "ok": {
      -      "type": "boolean"
      -    },
      -    "orderChangeId": {
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    },
      -    "stage": {
      -      "description": "'cancelled' on success, else 'unavailable'.",
      -      "type": "string"
      -    }
      -  },
      -  "type": "object"
      -}New value: +null
  2. Added

TDQS

A4/5.0
Behavior3/5

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

Annotations already indicate this is a mutating, non-idempotent operation. The description adds 'releases the bid' and a warning to confirm first, which offers some behavioral context. However, it does not disclose failure modes, consequences of omitting orderChangeId with multiple bids, or any side effects beyond the obvious cancellation.

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?

Three sentences, front-loaded with the core action, then parameter guidance, then a traveler-confirmation warning. No fluff; every sentence contributes to correct invocation.

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?

The description plus fully-documented schema covers all key aspects for a 5-parameter tool with no output schema. It explains which parameters are needed in which scenarios and includes a prerequisite. Minor gaps: it doesn't describe the response or explain the presentationReport parameter in the main description, but the schema covers that.

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%, so the baseline is 3. The description reinforces the relationship between sessionId/conversationId and mentions orderChangeId comes from get_bid_status, but the schema already documents each parameter. No significant new parameter semantics beyond the schema.

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 uses the specific verb 'Withdraw' and clearly identifies the resource: 'a bid already placed on a booking the traveler checked with start_eligibility_check.' It also names the sibling relationship by referencing get_bid_status for listing bids, so an agent can immediately distinguish this from place_bid or modify_bid.

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?

It gives concrete instructions: pass sessionId or conversationId, use orderChangeId when multiple bids exist and get_bid_status lists them, and confirm with the traveler before calling. While it doesn't explicitly contrast with modify_bid or state when not to use it, the context is clear.

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