Skip to main content
Glama

Server Details

Live Google Flights search: stopover itineraries, country sweeps, explore anywhere, booking links

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.
Tool DescriptionsA

Average 4.3/5 across 5 of 5 tools scored.

Server CoherenceA
Disambiguation5/5

Each tool serves a distinct purpose: background job polling, country-wide search, worldwide exploration, synchronous route search, and stopover itinerary generation. No overlap in functionality.

Naming Consistency5/5

All tools use snake_case with consistent verb_noun pattern: search_* for queries and get_job_result for polling. The naming is predictable and clear.

Tool Count5/5

Five tools is well-scoped for a flight search and stopover planner server. Each tool adds unique value without redundancy or unnecessary complexity.

Completeness4/5

The tool set covers core flight search needs (specific routes, country-wide, worldwide, stopovers) with both synchronous and asynchronous modes. Minor gaps like multi-origin search or advanced filters are beyond the stated purpose.

Available Tools

5 tools
get_job_resultAInspect

Poll a search started by a background-job tool. Returns {status:"pending"} while running; when status is "done" the same object carries the search payload. Poll every 3 to 5 seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
jobIdYes
Behavior4/5

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

Discloses return format ({status: 'pending'} or 'done' with payload) and polling behavior. No annotations provided, so description carries full burden. Lacks explicit mention of failure states or errors, but covers key behavior.

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 sentences, no wasted words, front-loaded with action. Every sentence adds value.

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?

Covers polling and basic response, but with no output schema and simple schema, could be more explicit about the full structure of the done response (e.g., what fields the search payload contains). Adequate for a simple tool.

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 coverage is 0% (jobId has no description). Description does not explicitly describe jobId beyond implying it identifies the background job. No format, source, or validation info added.

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 verb 'poll' and the resource 'search started by a background-job tool'. It distinguishes from sibling search tools by focusing on result retrieval.

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 explicit polling interval ('Poll every 3 to 5 seconds') and implies it should be used after a background job is started. Does not mention when not to use or alternatives, but context around siblings makes misuse unlikely.

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

search_country_sweepAInspect

Cheapest live fares from one origin to every destination city in a whole country, in one call (e.g. London to all of Spain). Replaces dozens of route searches. Runs as a background job: returns a jobId; poll get_job_result until done.

ParametersJSON Schema
NameRequiredDescriptionDefault
datesYesDeparture dates YYYY-MM-DD. 1 to 31 dates per call; must be real calendar dates (2026-02-30 is rejected).
onewayNoDefault true
originYese.g. "London"
countryYesCountry or continent, e.g. "Spain"
nonstopNoDefault true
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses that the tool runs as a background job and requires polling, which is critical behavioral context. While it doesn't mention rate limits or authentication, the main workflow is well explained.

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?

The description is extremely concise: two sentences that front-load the purpose and benefit, then explain the execution model. Every word earns its place with no redundancy or fluff.

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?

Given the tool's complexity (background job, many destinations), the description is complete: it specifies the scope, the return value (jobId), and how to get the final result. All 5 parameters are fully described in the schema, and no output schema exists, so the description covers the agent's needs.

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 schema already documents all parameters with descriptions. The description adds no additional per-parameter detail beyond the schema, meeting the baseline for a tool with full schema coverage.

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's function: finding cheapest live fares from one origin to every destination city in a whole country. It gives a concrete example (London to Spain) and distinguishes it from siblings by noting it replaces dozens of route searches.

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?

The description explains when to use this tool (for country-wide searches) and provides explicit instructions on how to retrieve results: it returns a jobId and advises polling get_job_result until done. This leaves no ambiguity for the agent.

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

search_explore_anywhereAInspect

Explore everywhere: the cheapest destinations worldwide from an origin on given dates, with live GBP prices and booking links. Great for "where can I fly cheaply" questions. Runs as a background job: returns a jobId; poll get_job_result until done.

ParametersJSON Schema
NameRequiredDescriptionDefault
datesYesDeparture dates YYYY-MM-DD. 1 to 31 dates per call; must be real calendar dates (2026-02-30 is rejected).
onewayNoDefault true
originYese.g. "London"
nonstopNoDefault true
Behavior4/5

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

No annotations are provided, so the description carries the full burden. It discloses that the tool runs as a background job (async), returns a jobId, and requires polling via get_job_result. This adequately informs the agent about the tool's behavior beyond what annotations would provide.

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?

The description is two sentences, front-loaded with purpose and then usage hint. Every sentence adds value with no waste.

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?

Given no output schema, the description adequately explains the return value (jobId) and the need to poll get_job_result. It also mentions the output includes GBP prices and booking links. Some information about pagination or rate limits is missing, but overall it's sufficient.

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%, so the schema already documents parameters. The description adds minimal extra meaning beyond the schema, such as 'must be real calendar dates (2026-02-30 is rejected)' for dates, but this is marginal. Baseline 3 is appropriate.

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 it explores cheapest destinations worldwide from an origin on given dates, with live GBP prices and booking links. The phrase 'Great for "where can I fly cheaply" questions' distinguishes it from sibling tools like search_flights or search_stopover_itineraries.

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?

The description explicitly states it is great for 'where can I fly cheaply' questions and that it runs as a background job returning a jobId, with instruction to poll get_job_result until done. However, it does not explicitly state when not to use it or compare directly to siblings.

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

search_flightsAInspect

Live Google Flights prices for one route across one or more dates. Each flight includes airline, GBP price, duration, stops, times, and a Google Flights booking link. Synchronous: typically 5 to 20 seconds.

ParametersJSON Schema
NameRequiredDescriptionDefault
datesYesDeparture dates YYYY-MM-DD. 1 to 31 dates per call; must be real calendar dates (2026-02-30 is rejected).
onewayNoDefault true
originYese.g. "London"
nonstopNoDefault true
destinationYese.g. "Madrid"
Behavior4/5

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

With no annotations provided, the description carries the full burden. It discloses that the tool is synchronous and typically takes 5-20 seconds, and that it provides live data. It does not mention rate limits, authentication requirements, or caching behavior, but the timing disclosure is valuable.

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 sentences no unnecessary words. The first sentence captures purpose and output the second adds a critical behavioral note on timing. Highly efficient and front-loaded.

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?

For a tool with 5 parameters and no output schema, the description provides core purpose, data fields, timing, and route scope. It lacks details on result limits, error cases, or handling of no results, but overall it is reasonably complete.

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%, so the baseline is 3. The description adds minimal extra meaning beyond the schema—it confirms that the tool handles one route and one or more dates, but does not detail the effect of boolean parameters like 'nonstop' or 'oneway'.

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 it provides live Google Flights prices for one route across one or more dates. It lists specific data returned (airline, GBP price, duration, stops, times, booking link), distinguishing it from sibling tools like 'search_explore_anywhere' or 'search_stopover_itineraries'.

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 description implies usage for querying flight prices on a specific route but does not explicitly state when to use this tool versus alternatives, nor does it mention when not to use it or provide context about sibling tools.

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

search_stopover_itinerariesAInspect

Find complete multi-day stopover itineraries between two cities: an outbound leg, 1 to 7 days in an intermediate hub city, then the onward leg, priced as one trip from live Google Flights data (GBP) with a booking link on every leg. One call evaluates dozens of hub cities and date splits. Runs as a background job: returns a jobId immediately; poll get_job_result every few seconds until status is done.

ParametersJSON Schema
NameRequiredDescriptionDefault
originYesOrigin city or airport, e.g. "London"
nonstopNoNonstop legs only (default true)
destinationYesFinal destination, e.g. "Tokyo"
layoverDaysNoDays to spend in the hub city (default 3)
deadlineDatesYesLatest arrival date(s) at the destination, YYYY-MM-DD. 1 to 31 dates per call; must be real calendar dates (2026-02-30 is rejected).
Behavior5/5

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

No annotations provided, but description fully discloses behavioral traits: background job returns jobId, evaluates dozens of hub cities and date splits, pricing in GBP, and booking link on each leg. No contradictions.

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 sentences, no wasted words. First sentence conveys core functionality, second adds operational details. Perfectly front-loaded.

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?

Given complexity (multi-city, background job, 5 parameters), description covers all key aspects: purpose, pricing, booking link, and background job polling. No output schema, but explains jobId and polling, so complete for agent invocation.

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%, but description adds context: intermediate hub city, 1-7 days (matches layoverDays), and that it searches multiple hub cities and date splits, which enriches agent understanding.

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's purpose: finding multi-day stopover itineraries between two cities, priced as one trip with booking links. It distinguishes from siblings like search_flights (likely direct flights) and get_job_result (polling).

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 describes when to use (for stopover itineraries) and mentions background job behavior with polling via get_job_result. Implicitly differentiates from direct flight searches.

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

Discussions

No comments yet. Be the first to start the discussion!

Related MCP Servers

  • A
    license
    A
    quality
    B
    maintenance
    Search Google Flights for one-way, round-trip and multi-city fares, with offline airport lookup and nearby-airport resolution.
    6
    MIT
  • A
    license
    A
    quality
    D
    maintenance
    Search flights using Google Flights data via SerpAPI, covering all airlines including low-cost carriers like Ryanair and easyJet.
    2
    MIT
  • A
    license
    -
    quality
    A
    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

View all MCP Servers

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources