Free Flight and Hotel Search (no API key)
Server Details
Free flight and hotel search, no API key. Ad-supported; paid tiers remove ads and caps.
- Status
- Healthy
- Last Tested
- Transport
- Streamable HTTP
- URL
- Repository
- mtnrabi/travel-agent-skills
- GitHub Stars
- 0
Glama MCP Gateway
Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.
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.
Tool Definition Quality
Average 4.4/5 across 4 of 4 tools scored.
The four tools cover completely separate domains: hotel search by name, hotel search by destination, one-way flights, and round-trip flights. There is no ambiguity between searching hotels versus flights, or between one-way and round-trip flight searches. Each tool has a clearly distinct purpose and input structure.
The naming follows a consistent pattern of verb_noun: find_hotel_by_name, search_hotels, search_oneway_flights, search_roundtrip_flights. The slight inconsistency is that two hotel tools use different verbs ('find' vs 'search') when they could both use 'search', but this is a minor deviation and the purpose remains clear.
Four tools is perfectly scoped for a free flight and hotel search server. Each tool covers a core function (hotel by name, hotel by destination, one-way flights, round-trip flights) without unnecessary overhead. The count is neither too sparse nor too heavy, and each tool clearly earns its place in the set.
The tool set covers the essential search operations for hotels and flights: hotel lookup by name, hotel search by destination, one-way flight search, and round-trip flight search. A minor gap is the lack of a direct tool for searching hotels by location/coordinates or filtering by amenities, but for a free-tier server focused on quick searches, this is acceptable. Missing delete/update operations are expected since this is a search-only service.
Available Tools
4 toolsfind_hotel_by_nameAInspect
Get availability and pricing for one named property. Input: the hotel name a person would type (adding the city helps when a chain has many properties) plus check-in and check-out dates -- no internal property ID needed.
Returns the property's price, review score, room type and a booking link. Rates go stale within minutes.
FREE TIER: ad-supported. The paid server at https://hotels.flightpowers.com/mcp adds per-country pricing, filters, and no ads.
| Name | Required | Description | Default |
|---|---|---|---|
| adults | No | ||
| children | No | ||
| currency | No | ||
| hotel_name | Yes | ||
| checkin_date | Yes | ||
| checkout_date | Yes |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
Since no annotations exist, the description must fully disclose behavior. It states that rates go stale within minutes (a critical perishability warning). It also describes the free tier limitations (ads) and how to get an ad-free, filtered version via a paid server. This is valuable behavioral context.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is remarkably efficient: three short paragraphs, each with a clear role—input, output+staleness, tier info. Every sentence serves a purpose. There is no fluff. Information is front-loaded with the most critical usage guidance first.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's moderate complexity (6 params, 3 required, no nested objects) and the presence of an output schema (which explains return values), the description covers the essential aspects: input format, output content, staleness, and tier restrictions. The only missing detail is guidance on date formats (YYYY-MM-DD vs others) and optional params like adults, children, currency. Still, for a hotel lookup tool, this is highly usable.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It explains hotel_name (free-form, include city for clarity), checkin_date and checkout_date as dates, and what the function returns (pricing, review score, room type, booking link). While adults, children, and currency are not detailed, the overall purpose and output are clear. The description adds meaning well beyond the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description starts with a specific verb ('Get') and resource ('availability and pricing for one named property'), clearly distinguishing it from sibling tools like search_hotels (which likely handles multi-property or broader searches). It immediately explains the input and even adds practical guidance about adding the city for chain hotels.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells the user to use hotel_name as a person would type it and suggests adding the city for chain properties. It also informs about the free vs paid tier, helping decide when this tool is sufficient. However, it doesn't explicitly contrast with search_hotels or say 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_hotelsAInspect
Search live hotel availability and nightly prices for a destination and date range. Input: a free-text destination the way a person would say it ("Rome", "Tokyo Shibuya"), plus check-in and check-out dates.
Returns each property's price, review score, room type and a booking link. Rates go stale within minutes -- never reuse an earlier result, search again.
FREE TIER: this is the ad-supported server. For rate-parity pricing by country, the 24 Booking.com filters, no ads and no caps, use the paid server at https://hotels.flightpowers.com/mcp
| Name | Required | Description | Default |
|---|---|---|---|
| adults | No | ||
| children | No | ||
| currency | No | ||
| destination | Yes | ||
| checkin_date | Yes | ||
| checkout_date | Yes | ||
| budget_per_night | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
There are no annotations, so the description carries the full burden. It discloses that the tool is ad-supported (free tier) and that results are transient, but it doesn't mention whether the tool is read-only or has any destructive side effects, though such are unlikely for a search tool. The transparency is adequate but could be more explicit about behavior like rate limits or caching.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is concise at about 80 words, with clear front-loading of the main purpose. Every sentence adds value, though the second line about return format could be slightly shortened. The final line about the paid server is a helpful distinction but might be considered promotional. Overall well-structured and efficient.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The description covers the main purpose, input semantics, and staleness warning, which is sufficient for a search tool. It lacks details about output (but there is an output schema) and doesn't mention error conditions or input constraints like date formats. The completeness is good but not exhaustive.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema has 0% description coverage, so the description compensates well by explaining that 'destination' is free-text as a person would say it and giving examples. It also clarifies that 'checkin_date' and 'checkout_date' are dates for the stay. However, it doesn't mention other parameters like 'adults', 'children', 'currency', or 'budget_per_night', which are self-explanatory but still benefit from confirmation. The description adds significant value over the bare schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the verb (search) and resource (hotels), specifying it returns live availability and nightly prices. It distinguishes itself from siblings like find_hotel_by_name and flight searches by focusing on hotels and dates.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description explicitly tells the agent when to use this tool (for live hotel availability), warns that rates go stale within minutes and must be searched again, and provides an alternative for paid users with more features and no caps.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_oneway_flightsAInspect
Search real-time one-way flights from Google Flights.
IMPORTANT: for any flexible search, make ONE call with a date range and/or several destinations. Do NOT call this repeatedly, once per date -- pass departure_date_from and departure_date_to and the server searches the range for you. 'Cheapest flight to Sri Lanka anywhere in October' is one call, not thirty.
FREE TIER LIMIT: one call searches at most 15 date x destination combinations. A wider request is not rejected -- it is sampled evenly across the range and comes back with truncated: true and the exact list of dates searched in search_coverage.departure_dates_searched. Check that list before assuming a date has no flights: a missing date was never searched, which is not the same as having no results.
Returns each flight with price, duration, airline, stops, a bookable buy_link, and Google's historical price range (price_insights_low / price_insights_high) so you can say whether a fare is a good deal.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| sort_by | No | best | |
| currency | No | usd | |
| max_price | No | ||
| max_stops | No | ||
| seat_type | No | ||
| passengers | No | ||
| to_airport | Yes | ||
| from_airport | Yes | ||
| use_fallback | No | ||
| airline_codes | No | ||
| departure_date | No | ||
| arrival_time_max | No | ||
| arrival_time_min | No | ||
| departure_date_to | No | ||
| departure_time_max | No | ||
| departure_time_min | No | ||
| departure_date_from | No | ||
| exclude_airline_codes | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries full responsibility. It effectively discloses key behavioral traits: the tool samples evenly across wide requests if limits are exceeded, returns a 'truncated' flag, and provides a 'search_coverage' field that lists exactly which dates were searched. It also clarifies that missing dates indicate no search occurred, not no results. A point is deducted because it does not mention authentication requirements, rate limits, or data freshness.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is mostly concise but front-loads a critical usage guideline with 'IMPORTANT' block, which is good. However, it includes semi-redundant information about free tier limits and response fields that could be shortened or structured. The three-paragraph structure is clear but could be more compact, as some sentences (e.g., the note about 'a missing date') are slightly verbose for an AI agent.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given the tool's complexity (19 parameters, free tier limits, truncated responses) and the availability of an output schema (which defines return values), the description covers key behavioral and usage aspects well. It explains how to handle flexible searches, what to check in responses, and what return fields exist. A point is deducted because it omits details on authentication, rate limiting, or how to handle errors like no results (beyond noting missing dates).
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaning for key parameters: 'departure_date_from' and 'departure_date_to' are explained in the context of flexible searches, and 'limit,' 'sort_by,' and 'currency' are implicitly used. It also explains the output fields like 'price_insights_low/high,' linking to return values. However, many parameters (e.g., 'max_price,' 'seat_type,' 'airline_codes') are not described, missing an opportunity to fully compensate for the low coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool searches 'real-time one-way flights from Google Flights,' specifying both the verb ('search') and the resource ('one-way flights'). The IMPORTANT section explicitly distinguishes this from making multiple calls and contrasts it with roundtrip_flights via the tool name itself, ensuring no confusion with its sibling tools.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides explicit usage guidance: it warns against repeated calls for flexible searches, directing users to use date ranges and multiple destinations in one call. It also details the free tier limit of 15 combinations and the 'truncated' behavior, telling the agent when this tool is appropriate and how to interpret results. No alternatives are named, but the context of sibling tools (like search_roundtrip_flights) implicitly guides selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
search_roundtrip_flightsAInspect
Search real-time round-trip flights from Google Flights, priced as paired legs rather than two separate one-ways.
IMPORTANT: for any flexible search, make ONE call. Pass departure_date_from / departure_date_to for a departure range, and nights instead of return_date to search trip lengths -- '5 to 7 nights in Rome sometime in May' is one call.
FREE TIER LIMIT: one call searches at most 15 departure-date x nights combinations. A wider request is sampled evenly rather than rejected, and returns truncated: true plus the exact dates searched in search_coverage.departure_dates_searched. A date absent from that list was never searched -- which is not the same as having no flights.
Returns total price for both legs, per-leg airline, stops and duration, and a single bookable buy_link covering the trip.
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | ||
| nights | No | ||
| sort_by | No | best | |
| currency | No | usd | |
| max_price | No | ||
| seat_type | No | ||
| passengers | No | ||
| to_airport | Yes | ||
| return_date | No | ||
| from_airport | Yes | ||
| use_fallback | No | ||
| departure_date | No | ||
| max_return_stops | No | ||
| departure_date_to | No | ||
| departure_date_from | No | ||
| max_departure_stops | No | ||
| return_airline_codes | No | ||
| departure_airline_codes | No |
Output Schema
| Name | Required | Description |
|---|---|---|
No output parameters | ||
Tool Definition Quality
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations provided, the description carries the full burden of behavioral disclosure. It details real-time data sourcing, pricing as paired legs, the free tier limit of 15 departure-date × nights combinations, sampling behavior, the 'truncated' field, and 'search_coverage.departure_dates_searched'. It also describes the return format including total price, per-leg airline/stops/duration, and a bookable buy_link. This is comprehensive.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is front-loaded with the core purpose, then provides important usage guidance, free tier behavior, and return format in a clear, well-organized manner. Every sentence adds distinct value, and there is no fluff. It is appropriately sized for the tool's complexity.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Given 18 parameters, 0% schema description coverage, no annotations, and an output schema (which reduces the need to describe return values), the description covers the most critical behavioral aspects (flexible search, free tier sampling) and return structure. However, it does not explain many parameter semantics, which limits completeness for an agent trying to use all features. The presence of an output schema partially mitigates this, but the description could still be more thorough.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 0%, so the description must compensate. It adds meaning for key parameters like departure_date_from, departure_date_to, nights, and return_date, explaining their usage in flexible searches. However, it does not describe the other 14 parameters (limit, sort_by, currency, max_price, seat_type, passengers, etc.), leaving the agent to infer from names alone. The description adds value for the most important parameters but is insufficient for the full set.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description clearly states the tool's purpose: 'Search real-time round-trip flights from Google Flights, priced as paired legs rather than two separate one-ways.' It uses a specific verb and resource, and explicitly distinguishes from the sibling 'search_oneway_flights' by emphasizing the round-trip nature and paired pricing.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description provides strong usage guidance, including an 'IMPORTANT' note on making a single call for flexible searches, how to use departure_date_from/to and nights instead of return_date, and the free tier limit with sampling behavior. It does not explicitly state when not to use the tool, but the context and sibling names make the round-trip vs. one-way distinction clear.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Claim this connector by publishing a /.well-known/glama.json file on your server's domain with the following structure:
{
"$schema": "https://glama.ai/mcp/schemas/connector.json",
"maintainers": [{ "email": "your-email@example.com" }]
}The email address must match the email associated with your Glama account. Once published, Glama will automatically detect and verify the file within a few minutes.
Control your server's listing on Glama, including description and metadata
Access analytics and receive server usage reports
Get monitoring and health status updates for your server
Feature your server to boost visibility and reach more users
For users:
Full audit trail – every tool call is logged with inputs and outputs for compliance and debugging
Granular tool control – enable or disable individual tools per connector to limit what your AI agents can do
Centralized credential management – store and rotate API keys and OAuth tokens in one place
Change alerts – get notified when a connector changes its schema, adds or removes tools, or updates tool definitions, so nothing breaks silently
For server owners:
Proven adoption – public usage metrics on your listing show real-world traction and build trust with prospective users
Tool-level analytics – see which tools are being used most, helping you prioritize development and documentation
Direct user feedback – users can report issues and suggest improvements through the listing, giving you a channel you would not have otherwise
The connector status is unhealthy when Glama is unable to successfully connect to the server. This can happen for several reasons:
The server is experiencing an outage
The URL of the server is wrong
Credentials required to access the server are missing or invalid
If you are the owner of this MCP connector and would like to make modifications to the listing, including providing test credentials for accessing the server, please contact support@glama.ai.
Discussions
No comments yet. Be the first to start the discussion!
Related MCP Servers
- Alicense-qualityDmaintenanceProvides real-time flight status, airport weather, delays, cheap flight deals, and TSA wait times without requiring an API key.17MIT
- Flicense-qualityAmaintenanceProvides real travel search for AI assistants, enabling flight, hotel, car rental, and ground transportation searches through a single MCP tool, with no API keys required.59
- Alicense-qualityBmaintenanceBook hotels worldwide — search, price, prebook & book across 249 countries. 65 tools for hotel search, flights, loyalty, analytics. Zero API keys needed. at best prices for hotels 3 M+ property91MIT
- Alicense-qualityCmaintenanceA free, Cloudflare-hosted travel MCP server for flights, hotels, and Airbnb-style stays.MIT