Skip to main content
Glama

Onward Flights

Server Details

Search real flights and buy an onward ticket (proof of onward travel), paid in USDC over MPP

If you are the author of this connector, you can claim ownership by verifying the domain or GitHub account it belongs to. Claimed connector authors can inspect health checks, view analytics, and manage their listing.
Status
Healthy
Last Tested
Transport
Streamable HTTP · MCP 2025-11-25
URL

TDQS

A4.2/5.0

Scored across 3 tools

Disambiguation5/5

Each tool has a clearly distinct purpose: find_airports for code lookup, search_flights for finding flight options, and buy_ticket for purchasing. There is no overlap or ambiguity in their intended use.

Naming Consistency5/5

All tool names follow a consistent verb_noun pattern in snake_case: buy_ticket, find_airports, search_flights. The naming is predictable and readable.

Tool Count5/5

Three tools are well-scoped for this focused service, covering the entire workflow from airport lookup to ticket purchase. Each tool is necessary and none feel redundant.

Completeness5/5

The tool set provides complete lifecycle coverage for the stated purpose: find airports, search flights, and buy a ticket. The purchase returns the ticket link and PDF, leaving no dead ends in the core workflow.

Available Tools

3 tools
buy_ticketBuy onward ticketA
Idempotent
Inspect

Buy the ticket for a flight from search_flights, paid in USDC. Call it first without payment to get the price, wallet address and MPP challenges. After sending the USDC, call it again with tx_hash and chain (or an MPP credential in _meta "org.paymentauth/credential"). Returns the ticket link and PDF.

ParametersJSON Schema
NameRequiredDescriptionDefault
chainNoChain the USDC was sent on, defaults to base
emailNoOptional, also emails the ticket here
tx_hashNoHash of the USDC transfer that paid for it
last_nameYesPassenger's last name, as on their passport
ticket_idYesThe flight id from search_flights
first_nameYesPassenger's first name, as on their passport

TDQS

A4.9/5.0
Behavior5/5

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

Annotations cover the safety profile (readOnlyHint=false, idempotentHint=true, destructiveHint=false), but the description goes well beyond them by disclosing the payment handshake, the required USDC step, the _meta credential alternative, and the return artifacts (ticket link and PDF). This is exactly the behavioral context a mutation/payment tool needs.

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 and the two-phase procedure, with zero filler. Every clause contributes to correct invocation.

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?

Despite having no output schema, the description states what is returned (ticket link and PDF), covers the full payment sequence, and handles the credential alternative. Nothing an agent needs to call this correctly is missing.

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 baseline is 3, but the description adds real meaning: it clarifies that tx_hash and chain are only relevant on the second call after payment, and documents the _meta credential route that does not appear anywhere in the properties list.

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?

States a concrete verb+resource (buy the ticket) and scopes it to flights from search_flights, making its position in the workflow vs. find_airports/search_flights immediately clear. An agent can distinguish it from both siblings 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 Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly prescribes the two-phase flow: call first without payment to obtain price, wallet address and MPP challenges, then call again with tx_hash and chain after sending USDC. It also names the alternative payment path (MPP credential in _meta), leaving nothing to inference.

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

find_airportsFind airportsA
Read-only
Inspect

Look up 3 letter IATA airport codes by city, airport or country name.

ParametersJSON Schema
NameRequiredDescriptionDefault
queryYesCity, airport, country or code, e.g. "Bangkok"

TDQS

A3.5/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=true and openWorldHint=false, so the safety profile is covered. The description adds that results are 3-letter IATA codes, but says nothing about how ambiguous matches (multiple airports per city) are handled or how results are returned; with annotations doing the heavy lifting, this is adequate but thin.

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?

A single front-loaded sentence with no filler; every clause (verb, output type, lookup keys) earns its place.

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?

For a one-parameter lookup with no output schema, the description should say what comes back and whether multiple matches are possible. It hints at the return type (IATA codes) but omits result shape and ambiguity handling, leaving a modest gap.

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% for the single parameter, and the schema actually documents more accepted inputs ("City, airport, country or code") than the description, which omits code input. Baseline 3 applies since the schema carries the parameter semantics.

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 ("Look up") and resource ("3 letter IATA airport codes") with the lookup keys enumerated. It is clearly distinct in function from the siblings buy_ticket and search_flights, though it never names or contrasts with them.

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?

Usage is only implied — an agent can infer this is a reference lookup that feeds into search_flights, but the description gives no explicit when-to-use condition, prerequisites, or statement of when not to use it.

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

search_flightsSearch onward flightsA
Read-only
Inspect

Find one-way flights to use as an onward ticket. Returns up to 10 flights, each with an id to buy and its price in USD.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateNoDeparture date, YYYY-MM-DD, within 9 months. Defaults to 14 days from now.
originYesIATA code of the airport leaving the country the traveller is entering, e.g. "BKK"
destinationYesIATA code of where the onward flight goes, e.g. "SIN"

TDQS

A3.8/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=true and openWorldHint=true, so the safety profile is covered. The description adds genuinely new behavioral context by stating the result shape ('up to 10 flights, each with an id to buy and its price in USD'), which matters because no output schema exists. It omits any rate-limit, auth, or data-freshness notes.

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?

Two tight sentences with zero filler; the core purpose and the result shape are both front-loaded. Every clause earns its place.

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 ably covers the return contract (cap of 10, id, USD price) and the schema carries all three parameters. Annotations cover read-only/open-world. The only real gaps are the absence of an explicit alternative (buy_ticket) and any operational caveats.

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 itself documents origin, destination, and the date default/format thoroughly. The description adds no syntax or format detail beyond the schema, so the baseline 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 ('Find one-way flights') plus the intended use case ('as an onward ticket'), which is far more informative than a tautology. It implicitly separates from buy_ticket (purchase) and find_airports (lookup), though it never names those siblings to make the routing explicit.

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?

The phrase 'to use as an onward ticket' implies the scenario in which this tool is appropriate, giving the agent useful context. However, there is no explicit when-not guidance, no prerequisites, and no named alternative for cases where the agent wants to purchase rather than search.

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

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

  1. 3 tool updates
    • First observedbuy_ticket
    • First observedfind_airports
    • First observedsearch_flights

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Search flights, compare prices, check visas, look up airports, get travel advisories through a single endpoint.
    -
  • A
    license
    A
    quality
    B
    maintenance
    Enables real-time flight fare searches across date ranges and multiple destinations, with historical price insights and booking links. Provides one-way and round-trip search tools through MCP.
    4
    1
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Flexible multi-leg, multi-airport flight search that finds the cheapest route across an entire itinerary — available as a CLI and as an MCP server for AI agents.
    Apache 2.0
Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources