Skip to main content
Glama
austinlai22

duffel-recovery

by austinlai22

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
DUFFEL_API_TOKENNoA Duffel API test token (starting with duffel_test_) used to access the Duffel sandbox. Put it in .env.

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": false
}
prompts
{
  "listChanged": false
}
resources
{
  "subscribe": false,
  "listChanged": false
}
experimental
{}

Tools

Functions exposed to the LLM to take actions

NameDescription
get_orderA

Get a booking: itinerary, price, passengers, fare conditions, and arrival_local.

list_airline_initiated_changesA

List schedule changes the airline made to a booking (removed vs added flights).

    Results are cached per session: in the Duffel sandbox a fresh call can create a new
    simulated change. Only set force_refresh=true if you truly need to re-check.
    
search_alternativesA

Search new one-way flights, cheapest first. Dates are a range of at most 3 days.

    Use 3-letter IATA codes. Partial failures appear in date_errors.
    
get_offerA

Refresh one offer's price and availability. Do this before recommending it.

quote_order_changeA

Price moving an existing one-way booking to other flights on a date. Changes nothing.

    change_total_amount > 0 means the traveler pays; < 0 means a refund.
    origin/destination default to the booking's own.
    
quote_cancellationA

Price cancelling a booking: refund_amount and refund_to (cash vs airline credit). Changes nothing.

score_optionsA

Score and rank options with the traveler's objective. Do the math here, not in your head.

    total_cost = cash_paid - cash_refunded - credit x credit_value_factor + hours_late x value_of_time.
    It is a COST, so lower is better; say that whenever you show it to the traveler.
    Options missing the deadline or over the spend cap can't be the pick. Every amount and time
    must cite the call_id it came from; numbers that don't appear there are rejected.
    
record_recommendationA

Record your final recommendation (or escalation) in the audit log. Call once, before any approval.

    target_ids: the IDs the recommended option would act on (airline change, change offer,
    cancellation, and/or offer). score_call_id: the score_options call that backs it.
    
request_approvalA

Ask the traveler to approve a pending action (from a write tool called without a token).

    A dialog shows the traveler a summary written by the server. Only an explicit "yes"
    returns an approval_token. Then call the same write tool again with that token.
    
book_offerA

Book a new flight. Without approval_token this only proposes and returns a pending_action_id.

    Passenger details come from the server's fake-passenger config; you can't supply them.
    
confirm_order_changeA

Move the booking to a quoted change offer. Without approval_token this only proposes.

confirm_cancellationA

Cancel the booking per a quote from quote_cancellation. Without approval_token this only proposes.

accept_airline_changeA

Accept the airline's schedule change. Without approval_token this only proposes.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription

No resources

TDQS

A4/5.0

Scored across 13 tools

Disambiguation5/5

Each tool targets a distinct action in the recovery workflow: reading an order, searching flights, quoting changes/cancellations, scoring options, recording recommendations, executing actions, and handling approvals. No two tools appear to do the same job, and the separation between quote, confirm, and book is clear.

Naming Consistency5/5

All tool names follow a consistent snake_case verb_noun pattern (get_order, quote_cancellation, confirm_order_change, request_approval, etc.). Longer compound names still use the same convention, so the set is predictable and easy to navigate.

Tool Count5/5

13 tools is well-scoped for an airline recovery server. Each tool covers a necessary step in the workflow—discovery, quoting, scoring, execution, approval—without redundancy or bloat.

Completeness4/5

The core recovery domain is well covered: view booking, search alternatives, quote and confirm changes/cancellations, handle airline-initiated changes, score options, and request approvals. A minor gap is the lack of a list/search orders tool, so an agent must already know the order ID, but this is workable within the stated purpose.

Maintenance

ActivityMaintained
ResponsivenessNo issues