
Viajante
io.github.felipebasurtoPublished by GitHub account felipebasurtov1.5.5Updated Nov 5, 2026
Flight and hotel search for the terminal, Python, and AI assistants.
Overview
Local MCP server that lets an assistant search flights and hotels, compare dates and destinations, and check prices from Google Flights, Google Hotels and…
- What you can do
- Search flights: one-way, round-trip, multi-city, cheapest dates in a window, flexible dates, and destination exploration
- Search stays: hotel offers with total-stay prices and cancellation terms, room rates, and combined flight-plus-hotel trips
- Check and verify: re-check an earlier offer, validate a proposed itinerary, flag amounts or links no search returned, and compare award value or transfer partners
- Plan and track: split stay costs, group nights, look up airport codes offline, and optionally record price history or watch a saved search
- When to use it
- Useful when you want an assistant to research airfare and accommodation options, compare dates or nearby destinations, and keep the numbers tied to what the providers actually returned. Handy for trip planning where you want prices, itinerary details and links in one place.
- Requirements
- Runs locally over stdio; needs Python 3.10+ and either Node.js (npm package) or uv (uvx). Booking.com and detailed fetches need the optional browser extra with Playwright Chromium. No API keys or accounts are declared.
Installation
In SourceWeft
- Open Viajante in the dashboard and add it to a workspace.
- Enable the server for the chats that should use its tools.
Desktop only via STDIO. STDIO servers start a local process, so they need the SourceWeft desktop host.
Other MCP clients
Follow the launch instructions in the repository.
README
[Viajante: flight and hotel search for your terminal, Python, and AI assistants. Runs on your machine, no API keys.]
Flight and hotel search for your terminal, Python, and AI assistants. Runs on your machine, no API keys.
Website · Usage guide · Architecture · Changelog
[Four points: runs on your machine with no API keys; returns evidence, not advice; only provider_empty means nothing was found; three ways in, a terminal command, a Python call, or an AI assistant over MCP.]It reads Google Flights, Google Hotels, and Booking.com directly, and Skiplagged when you opt in. It returns prices, itinerary details, and links. It reports what the provider returned and says so when something is unknown; it never invents a fare.
Quick start
Requires Python 3.10+.
Use future dates. Not sure of a code? viajante airports london.
Prefer not to install? uvx --from viajante viajante airports JFK, or
npx -y -p @viajante/mcp viajante airports JFK (both need uv).
These searches use plain HTTP. Booking.com and --fetch detail need the
browser extra.
Connect an AI assistant
Add this to your assistant's MCP configuration (needs
uv and Python 3.10+):
Without Node, use "command": "uvx" with
"args": ["--from", "viajante[mcp]", "viajante-mcp"]. That covers Google
Flights and Hotels with no Chromium. The npm entry also includes the browser
extra, which search_explore needs.
Then ask in plain language:
Find a seven-night round trip from BOS to LHR, departing any day in November 2026. Compare the dates.
Hotels in Tokyo, November 12 to 16, two adults, free cancellation, in JPY.
Every tool result (except lookup_airports) carries one envelope: status,
completeness, empty_reason, retry_after, observed_at. Only
empty_reason: provider_empty means the provider found nothing. A client that
only takes a URL can use viajante-mcp --transport streamable-http; it has no
auth, so keep it on loopback (details).
All 22 MCP tools
Command line
Run viajante <command> --help for options. Add --save FILE to write a JSON report.
Python
FlightQuery, HotelQuery, and the search_* functions are exported too;
see the Python examples.
Optional browser support
For uvx, use viajante[mcp,browser] in --from and install Chromium from
that same environment.
Good to know
- Currency. Taken from
--currency, or from a named origin airport's country. Hotels always need one. Viajante never converts between currencies. - Baggage.
--carry-onasks Google to price one carry-on. Checked bags (--bags) are refused, because no transport can verify them.--baggage-bufferonly affects ranking; it is not a quoted fee. - Hotels. Prices are for the whole stay. Free cancellation is required unless you opt out. Google rates 0–5, Booking.com 0–10.
- Recommendation. Flight results may include a short
recommendationblock. It adds to the offer list and never replaces it. - Price level. Flight results may include Google's own price level
(
low,typical, orhigh) from the results page already fetched. It is Google's label for that price against its typical range.--price-historyadds the page's price history. No extra request. - Unknown stays unknown. Missing fields are left out or marked unknown.
Travel sites change their pages, block requests, and update prices at any time. Confirm the final fare, baggage, hotel total, and cancellation terms with the provider before you book.
Contributing
Bug reports and focused pull requests are welcome; see CONTRIBUTING.md.
License
MIT. Independent project, not affiliated with Google, Booking.com, or any airline. Use of those services is subject to their terms: Google, Booking.com.
Source: README.md at commit 9a00446
Tools
0Version history
11- v1.5.5LatestNov 5, 2026
- v1.5.4Nov 4, 2026
- v1.5.2Oct 19, 2026
- v1.5.0Oct 9, 2026
- v1.4.7Oct 8, 2026
- v1.4.6Oct 7, 2026
- v1.4.5Oct 7, 2026
- v1.4.1Oct 5, 2026
- v1.4.0Oct 5, 2026
- v1.3.1Oct 2, 2026
- v1.2.0Sep 16, 2026
Score
50% of the applicable checks met
How complete this listing is, computed from the registry entry, the endpoint and public sources. Not a rating of the server and not a statement that it is safe or working today: reachability is a dated check, and no installs or reviews go into the score.
- Reached in the last 30 days25 pts
Keep the endpoint answering the MCP handshake; SourceWeft probes it every 30 days.
- Auth declared10 pts
Declare the credential headers in the registry entry, or keep the endpoint answering the probe so its auth can be classified.
- Tools listed15 pts
Answer tools/list without a credential, or ship a package that starts in a sandbox without one.
- DescriptionRequired15 pts
- Logo10 pts
- Documentation15 pts
- License10 pts