wander-agent
Wander Agent is an MCP travel server of 75 no-API-key tools that give AI assistants real travel data β flights, hotels, visas, weather, costs, points, and persistent trip memory.
Flights: live search (Google Flights + Kiwi), hidden-city/skiplagged fares, split-ticket routing, mistake fares, cheapest month/day fare calendars, cheapest-destination discovery, budget-based destination search, multi-origin meetups, open-jaw trips, route verification, and flight carbon footprint.
Hotels & bundles: hotel search with 9 booking deeplinks, and flight+hotel budget optimization across flexible dates.
Visas & entry: single-pair visa checks, visa-free destination lists, passport power ranks with dual-passport diffs, and transit-visa checks for 40+ hubs.
Weather & timing: 16-day forecasts, historical climate fallbacks, and best-month-to-visit ranking.
Safety & news: live US State Dept advisories, country lists by risk level, and disruption news scans.
Costs & currency: daily budgets for 220+ cities and live ECB currency conversion/exchange rates.
Trip planning: one-call full trip package (flights, hotel, visa, weather, safety, activities, costs), day-by-day itineraries, destination scoring/comparison, nomad-city scoring, and aurora destinations with NOAA KP-index.
On the ground: restaurants/bars, attractions, viewpoints/beaches/hiking, local events, bus/train/ferry search, SIM guides, layover guides, packing lists, jet lag plans, phrasebooks, health/CDC data, cultural etiquette, tipping, outlets, emergency contacts, hospitals, and solo-safety info.
Memory & watching: traveler profile onboarding/updates, trip history, saved trips with booking checklists, and fare watches that emit buy signals.
Points & miles: cents-per-point valuation, bank transfer partners, points-vs-cash decisions, earning calculators, sweet-spot awards, and program comparison.
Utility: geocoding, place/route verification to catch hallucinations, and value-based ranking of trip options (price vs stops, refundability, baggage, transfer risk).
Provides direct booking links to Airbnb for hotel search results.
Enables evaluation of award bookings on ANA, including cents-per-point calculations and sweet spot recommendations.
Enables analysis of Chase Ultimate Rewards points, including transfer partners, valuation, and earning calculations.
Includes direct booking links to Expedia for hotel search results.
Enables real ratings and price levels for restaurants and bars via the Foursquare API.
Enables live flight searches using Google Flights data.
Provides booking links to Google Maps for restaurants and bars.
Supplies location data for restaurants, bars, and other points of interest from OpenStreetMap.
Includes direct booking links to Tripadvisor for hotels and restaurants.
Provides booking links to Untappd for bars and pubs.
Provides booking links to Yelp for restaurants.
Provides booking links to Zomato for restaurants.
π Wander Agent
Your AI's personal travel agent β flights, hotels, visas, points & miles.
75 tools. Zero API keys. One line to install.
Ask your AI anything about travel and get real data back, not hallucinations β live flight prices, the cheap fares airlines hide, real visa rules, 16-day forecasts, and credit-card points sweet spots.
pip install wander-agent
See the launch demo Β· β Star this repo if it saves you a layover βοΈ

Real run: asked for "every way to save money on DXBβDPS for 4" β it surfaced hidden-city, split-ticket, and nearby-airport fares for ~$8,000 group savings.
Try these the second you install β paste any of them to your AI:
π« "Find me a flight from NYC to Tokyo the airlines don't want me to see." β hidden-city + split-ticket fares OTAs are banned from showing you
π΄ "Plan a 10-day Bali trip for 2 from Dubai in September, budget $3,000." β flights, hotels, visa, weather, restaurants, packing list, day-by-day β one response
π "Which of my two passports gets me into more countries visa-free?" β dual-passport diff with Henley rankings
π³ "Turn my Amex points into the best business-class flight to Europe." β points sweet-spot finder across transfer partners
What is this?
Wander Agent is a tool plugin for AI assistants (Claude, Cursor, Windsurf, etc.) that gives the AI real travel data to work with.
Without this plugin, asking an AI "cheapest flights from New York to Tokyo in August?" gets you a made-up answer. With this plugin, the AI calls real data sources β Google Flights, Open-Meteo, US State Dept advisories, OpenStreetMap β and gives you actual prices, real forecasts, and live visa requirements.
You talk to the AI the same way you always do. The AI does the rest.
"Plan me a 10-day trip to Bali for 2 people leaving from Dubai in September, budget $3,000" β Real flights, real hotels, visa requirements, weather forecast, local restaurants, packing list, day-by-day itinerary β all in one response.
Related MCP server: travel-mcp-server
What can it do?
Search live flights (Google Flights + Kiwi.com in parallel)
Find hidden-city fares β e.g. buy NYCβMexico via Houston, exit in Houston at 40% discount
Split-ticket search β book two separate tickets via a hub; OTAs are contractually forbidden from showing you this
Month-level price scan β check every month for the next year, returns cheapest month to fly
Fare calendar β cheapest day within a given month, day-of-week analysis
Scan for mistake fares and error pricing from deal alert sites
Find the cheapest destination you can fly to from anywhere
Find cheapest meeting point for friends flying from different cities
Automatically checks nearby airports (JFK also checks EWR, LGA; DXB also checks SHJ, AUH)
Search hotels with direct booking links to Booking.com, Airbnb, Expedia, Tripadvisor, and 6 more
Optimize for cheapest flight + hotel combo across flexible dates
Check if you need a visa, e-visa, ETA, or nothing at all
See every country you can enter without a full visa
Passport power ranking β Henley Index 2024 rank, visa-free %, regional breakdown
Dual-passport comparison β see exactly which destinations each passport unlocks that the other doesn't
Transit visa check β do you need a visa just to change planes? 200+ passport Γ layover rules
Official government apply links included
16-day live forecast for any location
Best month to visit anywhere based on 5 years of climate data
Jet lag calculator with science-based recovery schedule
Live US State Dept advisory level for any country (1 = safe, 4 = do not travel)
List every country at or above a given risk level
Recent travel news: strikes, airport closures, entry bans, protests
Daily budget estimates for 220 cities (budget / mid-range / luxury)
Live currency conversion
Total trip cost estimate combining flights, hotels, and daily spend
Day-by-day itinerary with weather and activities for each day
Rank and score destinations by cost + weather + safety + events
Compare multiple destinations side-by-side
Aurora viewing destinations with NOAA KP-index forecast
Open-jaw trips β fly into Rome, train to Paris, fly home from Paris. Composed automatically.
Restaurants, bars, pubs, and cafes near any location (OpenStreetMap)
Cuisine filters, price level, opening hours, distance
Booking links: Google Maps, Zomato, TripAdvisor, Yelp, OpenTable, Resy, Untappd
Packing list tailored to weather, activities, and trip length
Language phrasebook for 17 languages with pronunciation guides
Layover guide for 10 major hub airports (DXB, SIN, IST, DOH, NRT, CDG, HKG, ICN, AMS, HND)
Health requirements: vaccines, water safety, food safety, pre-trip timeline
Bus, train, and ferry options with direct booking links
Viewpoints, beaches, hiking trails, coworking spaces near any location
Local SIM guide β 25+ countries: best prepaid SIM vs eSIM, cost, where to buy, tethering policy
Saves your home airports, passports, currency, and interests β never ask again
Logs your trip history
Saved trips β a persistent trip with an 8-item booking checklist that survives across sessions
Fare watching β set a target price on a route, re-price on demand, get a buy signal when it drops
Value ranking β scores options 0β100 on price plus stops, duration, refundability, baggage and hassle (flags hidden-city / split-ticket risk), so cheapest isn't blindly "best"
Points valuation β is this award booking a good deal? Cents-per-point calculator with verdict (excellent / good / fair / poor) against 20+ program baselines
Transfer partners β which airlines and hotels can you transfer Chase UR / Amex MR / Citi TYP / Capital One / Bilt points to? With ratios and transfer times
Points vs cash β should you use points or pay cash? Factors in cpp value, opportunity cost, and what you'd earn back paying cash
Earning calculator β how many points does a $500 dinner earn on your Amex Gold? 9 cards modeled with bonus categories
Sweet spot awards β curated list of outsized-value redemptions: ANA first class for 120k VA miles (16.7cpp), Hyatt all-inclusive for 25k (2.4cpp), Turkish business for 45k (8.9cpp)
Program comparison β which of your points programs gives the best value for a specific booking?
Card portfolio β save your cards to your profile, points tools use them automatically
Setup (5 minutes)
Step 1 β Install Python
You need Python 3.10 or newer. Check if you have it:
python3 --versionDon't have it? Download from python.org.
Step 2 β Install Wander Agent
From PyPI (recommended):
pip install wander-agentOr with uv β no install at all, run directly:
uvx wander-agentOr from source:
git clone https://github.com/VirajMishra1/wander-agent.git
cd wander-agent
pip install -e .Verify it worked:
wander-agent --helpStep 3 β Connect to your AI
Pick the app you use:
Open this file in a text editor:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
Add this:
{
"mcpServers": {
"wander-agent": {
"command": "wander-agent"
}
}
}Save the file, then quit and reopen Claude Desktop.
If you get an error about wander-agent not being found, find the full path first:
which wander-agentThen use that path in the config:
{
"mcpServers": {
"wander-agent": {
"command": "/usr/local/bin/wander-agent"
}
}
}claude mcp add wander-agent wander-agentConfirm it registered:
claude mcp listCreate or edit .cursor/mcp.json in your home directory:
{
"mcpServers": {
"wander-agent": {
"command": "wander-agent"
}
}
}Restart Cursor.
Edit ~/.codeium/windsurf/mcp_config.json:
{
"mcpServers": {
"wander-agent": {
"command": "wander-agent"
}
}
}Restart Windsurf.
Open VS Code settings, search for "Cline MCP", edit cline_mcp_settings.json:
{
"mcpServers": {
"wander-agent": {
"command": "wander-agent"
}
}
}Edit .continuerc.json in your project or home directory:
{
"mcpServers": [
{
"name": "wander-agent",
"command": "wander-agent"
}
]
}Edit ~/.config/zed/settings.json:
{
"context_servers": {
"wander-agent": {
"command": {
"path": "wander-agent",
"args": []
}
}
}
}Optional: API keys for better data
Everything works without any API keys. These add richer data if you want:
Variable | What it unlocks | Get it free at |
| Real ratings and price levels for restaurants/bars | |
| Live event listings (concerts, sports, shows) |
Set them before starting your AI:
export FOURSQUARE_API_KEY=your_key_here
export TICKETMASTER_API_KEY=your_key_hereOr add them to your shell profile (~/.zshrc, ~/.bashrc) to make them permanent.
All 75 Tools
βοΈ Flights
Tool | What it does |
| Live flight search across Google Flights and Kiwi.com in parallel. Returns prices, duration, stops, and booking links. |
| Hidden-city fares β buy a connecting flight and exit at the layover city. Often 40β60% cheaper. Carry-on only. |
| Book two separate tickets through a hub instead of one through-ticket. OTAs are contractually forbidden from showing this. Savings of 20β60% on many routes. Includes full risk disclosure. |
| Scans the next 12 months by sampling the first Tuesday of each month (statistically cheapest booking day). Returns all months ranked by price with season analysis and booking links. |
| Full month price grid β up to 15 sampled days, day-of-week analysis, price tiers, best/worst weeks. Find the cheapest day to fly within a given month. |
| Scans Secret Flying and The Flight Deal RSS for error fares and flash deals. |
| Cheapest destinations from an origin across 114 airports worldwide. |
| Finds destinations reachable within a total budget (flights + hotels). |
| Cheapest city for multiple friends to meet, flying from different cities. |
| Confirms a direct or connecting route exists between two airports. |
| Aurora-viewing destinations with live NOAA KP-index forecast and flight prices. |
π¨ Hotels
Tool | What it does |
| Hotels with booking links to Booking.com, Airbnb, Expedia, Tripadvisor, and 6 more. |
| Finds the cheapest flight + hotel combo across a flexible date window (Β±7 days). |
π Visas & Entry
Tool | What it does |
| Visa category for a passport + destination pair. Returns visa-free, ETA, e-visa, visa on arrival, or visa required β with the official apply link. |
| Every country a given passport can enter without a full embassy visa. |
| Henley Index 2024 rank, visa-free access count, frictionless travel %, and regional breakdown for any passport. Pass two passports to get a head-to-head diff: exactly which destinations each one unlocks that the other doesn't. |
| Do you need a transit visa at your layover airport? Covers 200+ passport Γ layover-country combinations. Checks LHR, JFK, DXB, SIN, FRA, IST, DOH, NRT, ICN, YYZ, SYD, and 30+ others. |
π€οΈ Weather
Tool | What it does |
| 16-day live weather forecast for any coordinates. Falls back to 5-year historical data for dates beyond the forecast window. |
| Ranks all 12 months for a location by weather quality, based on historical climate data. |
β οΈ Safety & News
Tool | What it does |
| US State Dept advisory level (1β4) and summary. Pulled from the live RSS feed. |
| All countries currently at or above a given advisory level. |
| Scans Google News for recent disruptions: strikes, airport closures, entry bans, protests. |
π° Costs & Currency
Tool | What it does |
| Daily budget estimates for 220 cities across budget, mid-range, and luxury tiers. |
| Live currency conversion via European Central Bank rates. |
| Exchange rates for multiple currencies from a base currency. |
πΊοΈ Planning & Scoring
Tool | What it does |
| The main orchestrator. Calls 8+ tools in parallel and returns a complete trip: flights, hotels, visa, weather, safety, activities, ground transport, cost estimate, and booking checklist. |
| Day-by-day itinerary with weather forecast and suggested activities for each day. |
| Plan a fly-in/overland/fly-out trip: land in city A, travel by train or bus, fly home from city B. Composes flight + ground transport search. Shows total cost vs a round-trip to city A only. Accepts city names or IATA codes. |
| Ranks destinations by a weighted combination of cost, weather, safety, and events. |
| Side-by-side comparison of 2β5 destinations for the same dates. |
π Food & Nightlife
Tool | What it does |
| Real venues near a location from OpenStreetMap. Returns cuisine, price level, opening hours, distance, and links to Google Maps, Zomato, TripAdvisor, Yelp, OpenTable, Resy, and Untappd. |
π Smart Trip Tools
Tool | What it does |
| Ranks cities for remote work across 6 dimensions: cost, safety, internet speed, weather, visa ease, and lifestyle. Configurable weights. |
| CO2e footprint for any flight using ICAO/DEFRA 2024 factors with radiative forcing (RFI Γ1.9). Per-passenger and total emissions, Gold Standard offset cost, and train/car comparison for short routes. |
π On the Ground
Tool | What it does |
| Packing list tailored to destination weather, activities, trip length, and budget level. |
| Viewpoints, beaches, hiking trails, coworking spaces, waterfalls, markets, and more from OpenStreetMap. |
| Jet lag severity with a science-based recovery schedule: pre-departure shift, melatonin timing, light exposure strategy. |
| Phrasebook for 17 languages with local script, romanized pronunciation, and audio tips. |
| What to do during a layover at 10 major hubs. Includes transit visa check, in-airport activities, and city excursion options. |
| Required and recommended vaccines, water safety, food safety, mosquito risk, altitude risk, and a pre-trip preparation timeline. Based on CDC and WHO 2024β2025 data. |
| Bus, train, and ferry options with booking links. Region-aware: Amtrak and Greyhound for the US, Trainline and BlaBlaCar for Europe, IRCTC for India, 12Go for Southeast Asia. |
| Best prepaid SIM card and eSIM for 25+ countries. Returns operator, cost, data allowance, where to buy, tethering policy, and duration-based advice (β€3 days β eSIM; longer β local SIM). Falls back to Airalo/Holafly for unlisted countries. |
| Capital, languages, population, currency, timezones, calling code, borders. Live from RestCountries. |
| DST-aware conversion between IANA timezones. |
| Sunrise, sunset, twilight and day length for any coordinates and date (UTC). |
| Tipping customs and amounts by country. |
| Dos, don'ts, dress code, greetings, photography rules. |
| Plug types, voltage, and whether you need an adapter. |
| Police, ambulance, fire and tourist-police numbers. |
| Hospitals and clinics near coordinates via OpenStreetMap. |
| Solo travel risk level, top risks, safe areas, transport tips. |
ποΈ Attractions & Info
Tool | What it does |
| Attractions near a location from Wikidata. Filter by category: museums, parks, architecture, nightlife, food, historic, nature, and more. |
| Live events from Eventbrite: concerts, sports, festivals. |
| Country basics: currency, official language, timezone, dialling code, driving side. |
| Converts a place name to coordinates. |
| Confirms a place actually exists (catches AI hallucinations before they reach you). |
π§ Traveler Profile
Tool | What it does |
| Loads your saved profile: home airports, passports, currency, interests, and trip history. |
| One-time setup. Saves your preferences so the AI uses them automatically in every future session. |
| Update any field, manage credit cards in your portfolio, or log a completed trip. |
| Your logged trip history. |
π§³ Saved Trips (cross-session memory)
Persisted to ~/.wander_agent/trips.json. A trip carries an 8-item booking checklist (flights, hotel, visa, insurance, ground transport, advisory, packing, notify bank).
Tool | What it does |
| Save a trip you're planning. Returns a |
| List saved trips with checklist progress. Filter by status (planning/booked/completed/cancelled). |
| Full state + checklist progress for one trip, by id or destination. |
| Change status/dates, tick checklist items, or shortlist a flight/hotel option onto the trip. |
| Remove a saved trip. |
π Fare Watching
Persisted to ~/.wander_agent/fare_watches.json. Records a baseline price and a price history per watched route.
Tool | What it does |
| Start watching a route with an optional target price. Captures a baseline on creation. |
| List watches with baseline / last / lowest price seen and status. |
| Re-price watched routes now. Returns buy-signal alerts: |
| Pause or delete a watch. |
βοΈ Value Ranking
Tool | What it does |
| Scores a list of flight/trip options 0β100 on price plus stops, duration, refundability, baggage and hassle. Presets: cheapest / fastest / easiest / flexible / balanced. Flags hidden-city, split-ticket and self-transfer risk so the cheapest fare isn't blindly the winner. |
π³ Credit Card Points & Miles
Static dataset covering 20 loyalty programs (Chase UR, Amex MR, Citi TYP, Capital One, Bilt, 11 airlines, 4 hotel chains), 9 popular credit cards with bonus categories, and 10 curated sweet-spot awards. Card portfolio saved to ~/.wander_agent/profile.json.
Tool | What it does |
| Is this award booking worth it? Calculates cents-per-point and compares against baseline valuations for the program. Returns excellent / good / fair / poor verdict. |
| Shows all airline and hotel transfer partners for a bank program (Chase UR β United, Hyatt, BA, etc.) with transfer ratios and times. Sorted by partner value. |
| Should you use points or pay cash for this booking? Factors in cpp value, opportunity cost of points, and how many points you'd earn back paying cash on a specific card. |
| How many points a purchase earns on a given card. Covers 9 cards with bonus category multipliers (3x dining, 5x travel portal, 4x supermarkets, etc.). |
| Curated high-value redemptions: ANA first class via VA miles (16.7cpp), Singapore Suites (16.3cpp), Turkish business (8.9cpp), Hyatt all-inclusive (2.4cpp), and more. Filters by your programs, cabin, budget, or route. |
| Which of your points programs gives the best value for a specific booking? Compares estimated points cost, portal vs transfer value, best partner, and matching sweet spots. Uses your profile cards automatically. |
Tool Rankings: Usefulness Γ X-Factor
Ranked by a combination of practical impact and uniqueness β things no OTA, no chatbot, and no other travel tool does.
Rank | Tool | Why it's here |
π₯ 1 |
| OTAs are contractually prevented from showing this. Book two tickets via a hub instead of a through-ticket. 20β60% savings on many long-haul routes. The travel industry's open secret. |
2 |
| Hidden-city ticketing. Buy a flight to city B with a layover in city A β exit in city A and never board the last leg. 40β60% off. Illegal per airline T&Cs but not against any law. Carry-on only. |
3 |
| One message β complete trip. Fires 8+ tools in parallel: flights, hotels, visa, weather, safety, activities, ground transport, cost estimate. The single best demo of what this agent can do. |
4 |
| Scans 12 months, samples first Tuesday of each (statistically cheapest booking day). Returns months ranked by price with season labels. Shifting by 1β2 months = hundreds of dollars saved. |
5 |
| The one nobody thinks to check until it's too late. Do you need a visa just to change planes at Heathrow? At Frankfurt? 200+ passport Γ layover combinations. Catches the trip-killer before you book. |
6 |
| Three friends, three different cities. What's the cheapest city for all of them to meet? No OTA has a tool for this. |
7 |
| Fly into Rome, take a train to Paris, fly home from Paris. No OTA lets you compose this. Automatically prices both flights + the overland segment and compares vs a simple round-trip to Rome. |
8 |
| Henley 2024 rank, visa-free %, regional breakdown. Dual-passport mode: exact set-diff of which destinations each passport unlocks. "Use your Indian passport for Thailand, your US passport for Brazil." |
9 |
| 6-dimension scoring for digital nomad decisions: cost, safety, internet speed, weather, visa ease, lifestyle. Configurable weights. "Score Bali vs Lisbon vs Tbilisi for 3 months, weight internet 3Γ above cost." |
10 |
| Error fares and airline pricing mistakes from dedicated deal aggregators. Passive discovery β "are there any crazy cheap fares out of JFK right now?" |
11 |
| Full price grid for a month. Up to 15 sampled days, cheapest day highlighted, day-of-week analysis (Tuesdays 18% cheaper on average), best/worst weeks. |
12 |
| "Where can I fly cheapest from London right now?" Scans 114 airports. Discovery tool for spontaneous travelers. |
13 |
| "I have $1,500 total for 7 nights, leaving from NYC β where can I actually go?" Returns ranked reachable destinations. |
14 |
| Shifts departure Β±7 days to find the cheapest flight + hotel combo. Same trip, different dates, lower price. |
15 |
| ICAO/DEFRA 2024 emission factors with radiative forcing (RFI Γ1.9). Per-person and total CO2e, Gold Standard offset cost at $18/tonne, train/car comparison for routes under 1,500km. |
16 |
| Core engine. Parallel Google Flights + Kiwi.com. Checks nearby airports automatically. |
17 |
| Most-asked travel question. Instant answer with official government apply link. |
18 |
| Day-by-day schedule with weather per day and activity suggestions. |
19 |
| Weighted rank: cost + weather + safety + upcoming events. "Best place to go in September with good weather, under $150/day, safety level 1." |
20 |
| Full list of countries a passport can enter without a full embassy visa. |
21 |
| 25+ countries. Best prepaid SIM vs eSIM, exact cost, where to buy, tethering, activation steps. Short trip = eSIM. Long trip = local SIM. Saves the first-hour scramble at every airport. |
22 |
| Side-by-side: cost, weather, safety, visa requirements, flights β for 2β5 destinations, same dates. |
23 |
| Bus + train + ferry with real booking links. Region-aware. Often cheaper and more convenient than flying for routes under 500km. |
24 |
| Required vaccines, recommended vaccines, water safety, food safety, mosquito risk, altitude risk, pre-trip timeline. CDC + WHO 2025 data. |
25 |
| Live US State Dept level 1β4 with summary. Pulled from RSS β not cached stale data. |
26 |
| 16-day live forecast. Falls back to 5-year historical climate data for further-ahead dates. |
27 |
| Best spots for northern lights with live NOAA KP-index forecast + flight prices from your origin. Viral for the "bucket list" audience. |
28 |
| Hotel search with deep links to 9 booking sites. No prices shown directly (all hotel price APIs are paid), but all the links you need. |
29 |
| Daily budget for 220 cities: budget / mid-range / luxury tiers. |
30 |
| Climate-based ranking of all 12 months for a location. Based on 5 years of historical data. |
31 |
| What to actually do during a long layover at DXB, SIN, IST, DOH, NRT, CDG, HKG, ICN, AMS, or HND. In-airport options + city excursion feasibility. |
32 |
| Wikidata attractions by category: museums, parks, architecture, food, nightlife, historic, nature. |
33 |
| OpenStreetMap viewpoints, beaches, hiking trails, coworking spaces, waterfalls, hot springs, markets. |
34 |
| Real venues from OSM with 7 booking site links per result. Cuisine filter, price level, distance. |
35 |
| 17 languages. Local script + romanized pronunciation + audio tips. |
36 |
| Tailored to destination weather, planned activities, trip length, and budget level. |
37 |
| Live Eventbrite events at destination: concerts, festivals, sports. Best for 0β60 day horizon. |
38 |
| Google News scan for disruptions: strikes, closures, protests, entry bans. |
39 |
| Severity rating + science-based recovery: pre-trip sleep shifting, melatonin timing, light exposure schedule. |
40 |
| Country basics: currency, language, timezone, dialling code, driving side. |
41 |
| All countries currently at Level 2, 3, or 4. Useful for insurance and risk-screening. |
42 |
| Confirms a route actually exists. Catches hallucinated itineraries before you book. |
43 |
| One-time setup: home airports, passports, currency, interests. Feeds every tool automatically. |
44 |
| Load saved profile. Used automatically at session start. |
45 |
| Update preferences or log a completed trip. |
46 |
| Your logged trip history. |
47 |
| ECB live rate conversion. |
48 |
| Multi-currency rates from a base currency. |
49 |
| Place name β latitude/longitude. Used internally by most tools. |
50 |
| Confirms a place exists before building a trip around it. Anti-hallucination guardrail. |
51 |
| Curated outsized-value redemptions the points community swears by. ANA first (16.7cpp), Singapore Suites (16.3cpp), Turkish J (8.9cpp). Filtered by your card portfolio. |
52 |
| Cents-per-point calculator with verdict against 20+ program baselines. Catches bad redemptions before you burn points. |
53 |
| Points or cash? Factors cpp, opportunity cost, and earning-back. The question every points traveler asks on every booking. |
54 |
| Which program gives best value for this booking? Cross-program comparison with sweet-spot matching. |
55 |
| Maps bank currency β airline/hotel partners. Transfer ratios, times, and partner valuations. |
56 |
| Points earned per dollar by card and category. 9 cards modeled. |
Data sources
Source | What it provides | Key needed? |
Google Flights (scraper) | Flight prices and airline names | No |
Kiwi.com | Live bookable flight prices | No |
Open-Meteo | Weather forecast and 5-year historical climate | No |
Frankfurter (ECB) | Currency exchange rates | No |
Wikidata SPARQL | Attractions and points of interest | No |
OpenStreetMap Overpass | Restaurants, bars, beaches, viewpoints, hiking | No |
US State Dept RSS | Travel advisories | No |
Open-Meteo Geocoding | Coordinates for place names | No |
RESTCountries | Country metadata | No |
Secret Flying / The Flight Deal | Mistake fares and deals | No |
NOAA Space Weather | Aurora KP-index forecast | No |
Google News RSS | Travel disruption news | No |
Skiplagged | Hidden-city fares | No (fragile scraper) |
Rome2Rio / Omio | Ground transport options | No (fallback to deeplinks) |
Eventbrite | Live local events | No |
Foursquare Places v3 | Restaurant/bar ratings and price levels | Optional (free tier) |
Ticketmaster Discovery | Live event listings | Optional (free tier) |
Static datasets | Visa requirements, cost of living, airport data, transit visa rules, SIM card data, Henley rankings, points/miles valuations | N/A |
How much can you trust each number?
Most results carry a data_meta block so the AI can tell you how reliable a figure is before you book:
"data_meta": {
"confidence": "scraped_live",
"trust_score": 80,
"trust_label": "Live scrape",
"meaning": "Scraped from Google Flights just now. Real but can shift minute to minute.",
"fetched_at": "2026-06-02T18:30:00+00:00",
"source": "google_flights + kiwi.com"
}Label | Trust | What it means |
| 95 | Opens the live provider page β always current |
| 90 | Official API (ECB rates, NOAA) |
| 85 | Live government feed (State Dept advisories) |
| 85 | Open-Meteo live weather |
| 80 | Real-time scrape β real but volatile |
| 55 | Hand-curated dataset β verify before booking |
| 50 | Wikidata-derived |
| 35 | Modeled figure β rough guide only |
Honest limitations
Flight prices: Google Flights scraper can break if Google changes their page structure. Kiwi prices are real and bookable. Both run in parallel β if one fails the other still returns results.
Split-ticket risk: find_split_ticket surfaces real savings but carries missed-connection risk. If your first flight is delayed the second airline won't wait and won't rebook you. The tool always returns a full risk disclosure list. Buy travel insurance that covers missed connections on separate tickets.
Hotel prices: Every hotel price API is paid. This tool returns hotel names and links to 9 booking sites where you can see real prices. No prices are shown directly.
Visa data: Static snapshot (updated 2024). Policies change β always verify with the official link in the response before you book anything. Do not rely on this for immigration decisions.
Transit visa data: Rules encoded as a static dataset covering 200+ combinations. Edge cases (nationalities with bilateral exemptions, recent policy changes) may be missing. Always verify with the airline or destination embassy.
Passport power data: Henley Index 2024 snapshot. Rankings shift year to year. Confirm with official sources before making nationality-based decisions.
SIM card data: Curated snapshot as of 2024-Q4. Prices and plans change frequently. Treat as guidance; verify before purchase.
Events: Scraped from Eventbrite. Best coverage for events 0β60 days ahead. Further-future events may not be listed yet.
Travel advisories: US State Dept only. Updated within 24β48 hours of official changes via RSS.
Health data: Curated snapshot from CDC Yellow Book and WHO 2024β2025 recommendations. Not a substitute for advice from a travel medicine clinic.
Ground transport: Rome2Rio data for route discovery. Actual prices and schedules must be confirmed on the booking sites β times and fares change.
Points/miles valuations: Baseline cpp values are editorial averages (TPG, NerdWallet, OMAAT). Actual redemption value depends on specific award availability, transfer bonuses, and dynamic pricing. Sweet spot awards assume saver-level availability. Card bonus categories reflect terms as of 2025-Q1 β issuers change these periodically.
Carbon calculations: ICAO/DEFRA 2024 emission factors with standard RFI multiplier (Γ1.9). Actual emissions vary by aircraft type, load factor, and routing. Use as an estimate, not an accounting figure.
Cloud deployment (Docker)
The included Dockerfile and railway.toml let you host this server in the cloud so you can connect to it from any device β not just the computer where you installed it.
You do not need this for normal local use. Install and run locally as described in Setup above.
If you want to self-host on Railway:
# Push to GitHub, then connect repo to Railway
# Set env vars in Railway dashboard if using optional API keysThe server switches from stdio (local) to HTTP automatically based on the WANDER_TRANSPORT environment variable.
Development
# Install with dev dependencies
pip install -e ".[dev]"
# Run tests
python -m pytest tests/ -v
# Count registered tools
grep -c "@mcp.tool()" src/wander_agent/server.pyAdding a tool:
Create
src/wander_agent/tools/your_tool.pywith an async functionImport it in
src/wander_agent/server.pyWrap with
@mcp.tool()and an async wrapper functionRestart your AI client to pick up the new tool
CI: every push and PR to main runs the test suite on Python 3.10/3.11/3.12 and asserts the registered tool count.
Releases: publishing a GitHub release triggers the PyPI publish workflow (trusted publishing β no tokens). Bump version in pyproject.toml and server.json first.
License
MIT
mcp-name: io.github.VirajMishra1/wander-agent
Available Tools
75 toolstool_best_month_to_visitA
WEATHER timing: best month to visit by climate, not price.
"When is Bali at its best?" Uses 5yr Open-Meteo historical archive. No auth. For cheapest month by airfare use find_cheapest_month; for day-level price grid within a month use fare_calendar.
Args: latitude: Location latitude longitude: Location longitude preferences: warm_dry, cool_dry, warm_any, snow, shoulder_season
Inputs: latitude (required), longitude (required), preferences.
tool_calculate_flight_carbonA
Calculate CO2e carbon footprint for a flight.
Uses ICAO/DEFRA 2024 emission factors including radiative forcing (RFI Γ1.9). Shows per-passenger and total emissions, carbon offset cost at Gold Standard prices ($18/tonne), and train/car comparison for short-to-medium routes. No API key required.
Args: origin: Origin airport IATA code (e.g., "JFK") destination: Destination airport IATA code (e.g., "LHR") passengers: Number of passengers cabin_class: economy | premium_economy | business | first trip_type: one_way | round_trip
Inputs: origin (required), destination (required), trip_type, passengers, +1 more.
tool_calculate_jet_lagA
Calculate jet lag severity and give a science-based recovery schedule.
Covers pre-departure schedule shift, on-plane tips, melatonin timing, and post-arrival light exposure strategy.
Args: origin: City or IATA code (e.g., "New York", "JFK") destination: City or IATA code (e.g., "Tokyo", "NRT") departure_date: YYYY-MM-DD flight_duration_hours: Flight time in hours (0 = auto-estimated)
Inputs: origin (required), destination (required), departure_date (required), flight_duration_hours.
tool_calculate_points_or_cashA
Should I pay cash or use points? Factors in cpp value, opportunity cost, and points-back earning on the cash payment. Returns a clear recommendation.
Args: cash_price: Cash price for the booking points_price: Points/miles price for the same booking program: Points program (e.g., "chase_ur", "united_mp") category: Spending category if paying cash (e.g., "travel", "dining") β affects earning calc card_key: Specific card to calculate earning (e.g., "chase_sapphire_reserve") currency: Cash price currency taxes_fees_on_award: Cash taxes/fees on the award redemption
Inputs: program (required), cash_price (required), points_price (required), card_key, +3 more.
tool_cheap_anywhere_fromA
INSPIRATION: Find cheapest destinations from origin airport.
"Show me cheap flights from NYC anywhere in March" - returns ranked destinations by price. Set round_trip_days for realistic round-trip budgeting.
Args: origin: IATA airport code (e.g., "JFK") month: YYYY-MM constraint (optional) max_price: Filter out above this price (per-person) max_results: Max destinations currency: USD, EUR, etc. regions: Comma-separated (europe, asia, americas, oceania, africa, middle_east) round_trip_days: Days at destination for round-trip price (omit for one-way)
Inputs: origin (required), month, regions, currency, +3 more.
tool_check_fare_watchesA
Re-price watched routes now and return buy-signal alerts.
Alerts: target_hit, price_drop, price_rise, no_change.
Args: watch_id: Check one watch, or omit to check all active watches
Inputs: watch_id.
tool_check_transit_visaA
Check if you need a transit visa for a layover airport.
Covers the most common passport + layover combinations for 40+ major hubs: LHR, JFK, LAX, FRA, AMS, CDG, DXB, SIN, IST, DOH, NRT, ICN, HKG, YYZ, SYD, and more. This is a common trip-ruiner β carriers deny boarding if you lack the required transit document. Check BEFORE booking.
Args: passport_country: Your passport ISO2 code (e.g., "IN", "US", "NG") layover_airport: IATA code of layover airport (e.g., "LHR", "DXB", "JFK") connecting_to: Optional final destination airport IATA (for context)
Inputs: layover_airport (required), passport_country (required), connecting_to.
tool_check_travel_healthA
Health requirements, vaccine recommendations, and safety tips for a destination.
Covers required vaccines, CDC/WHO recommendations, water safety, mosquito risk, altitude sickness, food safety, and a pre-departure preparation timeline.
Args: destination_iso2: ISO 2-letter country code OR IATA airport code (e.g., "TH", "JP", "BKK", "DPS") trip_duration_days: Trip length (affects malaria prophylaxis advice etc.)
Inputs: destination_iso2 (required), trip_duration_days.
tool_check_visa_requirementA
Check the visa requirement for one passport entering one destination country.
Read-only. No auth required. Data source: built-in curated dataset (static snapshot β regulations change; always verify with the official embassy before travel). Returns: category (visa_free / eta_required / visa_on_arrival / evisa / visa_required), apply_link, estimated cost, processing time, and guidance notes. Invalid ISO codes return an error field, not an exception.
Use this for a single passport-destination pair. Use tool_visa_free_destinations to list all countries a passport can enter. Use tool_check_transit_visa specifically for layover/transit visa requirements, not entry visas.
Args: passport_country: ISO 2-letter passport country code (e.g., "US", "GB", "IN") destination_country: ISO 2-letter destination country code (e.g., "JP", "TH", "BR")
Inputs: passport_country (required), destination_country (required).
tool_compare_destinationsA
INSPIRATION: Compare multiple destinations side-by-side for same dates.
"Paris vs Rome vs Barcelona for next month" - returns flight + hotel costs for each, ranked by total cost.
Args: origin: Departure airport IATA code destinations: Comma-separated (e.g., "CDG,FCO,BCN" or "Paris,Rome,Barcelona") departure_date: YYYY-MM-DD return_date: YYYY-MM-DD travelers: Number of travelers currency: USD, EUR, etc.
Inputs: origin (required), return_date (required), destinations (required), departure_date (required), +2 more.
tool_compare_points_programsA
Which of my points programs gives the best value for this booking?
Compares estimated points cost across programs, portal vs transfer value, best transfer partner, and matching sweet spots. Uses profile cards if no programs specified.
Args: cash_price: What the booking costs in cash programs: Comma-separated (e.g., "chase_ur,amex_mr") β omit to use profile cards cabin: Target cabin class (economy, business, first) route: Route keyword to match sweet spots (e.g., "Japan", "Europe") currency: Cash price currency
Inputs: cash_price (required), cabin, route, currency, +1 more.
tool_convert_currencyA
Convert between currencies with live rates. No auth required.
Args: amount: Amount to convert from_currency: Source currency (e.g., "USD") to_currency: Target currency (e.g., "EUR")
Inputs: amount (required), to_currency (required), from_currency (required).
tool_convert_timezoneA
Convert a date/time between IANA timezones, DST-aware.
Args: datetime_str: e.g. "2026-08-15 14:30" or "2026-08-15T14:30:00" from_timezone: IANA name, e.g. "America/New_York" to_timezone: IANA name, e.g. "Asia/Tokyo" or "UTC"
Inputs: to_timezone (required), datetime_str (required), from_timezone (required).
tool_delete_tripA
Delete a saved trip.
Args: trip_id: 8-char trip id
Inputs: trip_id (required).
tool_estimate_points_earningA
Calculate points earned on a purchase for a specific credit card and spending category.
Read-only. No auth required. Uses static bonus multiplier data (standard published rates; does not reflect temporary promotions). Returns: points_earned, base_earn_rate, applied_multiplier, program name, and estimated_value_usd at mid-range cpp. Supports 9 cards: chase_sapphire_reserve, chase_sapphire_preferred, amex_platinum, amex_gold, capital_one_venture_x, citi_premier, bilt_mastercard, ink_preferred, amex_green.
Use this when the user wants to know which card to swipe for a specific purchase. Use tool_calculate_points_or_cash to decide whether to pay cash or redeem points. Use tool_estimate_points_value to evaluate a specific award booking's cpp.
Args: amount: Purchase amount (in the specified currency) card_key: Card identifier β chase_sapphire_reserve, amex_gold, bilt_mastercard, etc. category: Spending category β dining, travel, flights, restaurants, supermarkets, rent, general (default: general) currency: ISO currency code of the purchase (e.g., "USD", "EUR")
Inputs: amount (required), card_key (required), category, currency.
tool_estimate_points_valueA
Is this award booking a good deal? Calculate cents-per-point and compare against baseline valuations for 20+ programs (Chase UR, Amex MR, airline miles, hotel points). Returns verdict: excellent/good/fair/poor.
Args: points_cost: Points/miles required for the award booking cash_price: What the same booking costs in cash program: Points program (e.g., "chase_ur", "amex_mr", "united_mp", "hyatt_woh") currency: Cash price currency taxes_fees: Taxes/fees still paid in cash on the award (e.g., fuel surcharges)
Inputs: program (required), cash_price (required), points_cost (required), currency, +1 more.
tool_fare_calendarA
PRICE timing (day-level): cheapest DAY to fly within ONE month.
Samples up to 15 departure dates in one month β day-of-week analysis, price tiers, best/worst weeks. For cheapest MONTH across a year use find_cheapest_month; for best weather use best_month_to_visit.
Args: origin: Origin airport IATA code (e.g., "JFK") destination: Destination airport IATA code (e.g., "LHR") year: Year (default: next occurrence of month) month: Month 1-12 (default: next month) adults: Number of passengers cabin_class: economy | premium_economy | business | first currency: Currency code (e.g., "USD", "EUR", "GBP") trip_length_days: If set, price as round-trip (return = departure + N days)
Inputs: origin (required), destination (required), year, month, +4 more.
tool_find_aurora_destinationsA
KILLER: Reverse search - "where to see northern lights cheapest, next 60 days?"
Combines NOAA KP-index forecast + aurora-zone airports + flight prices. Returns ranked destinations with aurora visibility scores.
Args: origin: Departure IATA code max_budget: Max flight budget days_ahead_min: Earliest departure (days from now) days_ahead_max: Latest departure currency: USD, EUR, etc. max_results: max destinations
Inputs: origin (required), currency, max_budget, max_results, +2 more.
tool_find_cheapest_monthA
PRICE timing (month-level): cheapest MONTH to fly across the next N months.
Samples the first Tuesday of each month, ranks months by price with season analysis. For cheapest DAY within one month use fare_calendar; for best weather use best_month_to_visit.
Args: origin: Origin airport IATA code (e.g., "JFK") destination: Destination airport IATA code (e.g., "BCN") months_ahead: Future months to scan (1-12, default 12) adults: Number of passengers cabin_class: economy | premium_economy | business | first currency: Currency code trip_length_days: Days for round-trip return leg (departure + N) trip_type: round_trip | one_way
Inputs: origin (required), destination (required), adults, currency, +4 more.
tool_find_destinations_by_budgetA
INSPIRATION: "I have $1500, where can I go?" Ranks destinations under a total budget with flight + hotel costs calculated.
Args: origin: Departure airport IATA code (e.g., "JFK") total_budget: Total budget for trip trip_length_days: Number of nights departure_month: YYYY-MM (e.g., "2026-08") or omit for any travelers: Number of travelers interests: Comma-separated (e.g., "beach,food,history") visa_free_only: Only visa-free destinations (requires passport_country) passport_country: ISO 2-letter code (e.g., "US") currency: USD, EUR, etc. max_results: Max destinations to return
Inputs: origin (required), total_budget (required), currency, interests, +6 more.
tool_find_mistake_faresA
Fetch recent mistake fares and deal alerts from Secret Flying and Flight Deal RSS feeds.
Read-only. No auth required. Data freshness: RSS feeds polled at call time, posts typically 1-48 hours old. Returns a list of deals each with origin, destination, price, sale price, percentage discount, source, and post date. Does not book or hold fares β prices expire fast, often within hours.
Use this when the user wants passive deal discovery without a fixed destination. Use tool_search_flights when the user has a specific route and date in mind. Use tool_fare_calendar for flexible-date price grids on a known route.
Args: origin: City name to filter deals by departure city (e.g., "New York", "London") β omit to return deals from all origins days_lookback: Include only posts published in the last N days (1-30) max_results: Max deals to return (1-50)
Inputs: origin, max_results, days_lookback.
tool_find_nearby_hospitalsB
Find hospitals and clinics near a location via OpenStreetMap.
Args: latitude: Location latitude longitude: Location longitude radius_km: Search radius in km (1-30) max_results: Max results (1-20) city: Optional city name hint
Inputs: latitude (required), longitude (required), city, radius_km, +1 more.
tool_find_open_jawA
Plan an open-jaw trip: fly into one city, overland, fly out from another (e.g. JFKβRome, train to Paris, ParisβJFK). Shows total vs simple round-trip. Accepts IATA codes or city names.
Args: origin: Home airport IATA or city (e.g., "JFK" or "New York") fly_into: First destination IATA or city (e.g., "FCO" or "Rome") fly_out_from: Final departure IATA or city (e.g., "CDG" or "Paris") outbound_date: YYYY-MM-DD β fly origin β fly_into return_date: YYYY-MM-DD β fly fly_out_from β origin adults: Number of passengers cabin_class: economy | premium_economy | business | first currency: Currency code
Inputs: origin (required), fly_into (required), return_date (required), fly_out_from (required), +4 more.
tool_find_placesA
Find viewpoints, beaches, hiking trails, coworking spaces, and more.
Uses OpenStreetMap β no API key required.
Args: latitude: Location latitude longitude: Location longitude category: viewpoint | beach | hiking | coworking | waterfall | camping | market | hot_spring | museum | park radius_km: Search radius in km (1-100) max_results: Max places to return city: City name for richer search links (e.g., "Bali", "Cape Town")
Inputs: category (required), latitude (required), longitude (required), city, +2 more.
tool_find_skiplagged_faresA
KILLER: Find hidden-city ticketing fares (cheaper than direct).
Buy NYC->Mexico via Houston, get off in Houston, save 60%. Skyscanner and Kayak are CONTRACTUALLY FORBIDDEN from showing these. We pull them direct from Skiplagged.
CAVEATS: Carry-on only. One-way only. No frequent flyer credit. Tool returns warnings.
Args: origin: IATA code (e.g., "JFK") destination: IATA code (e.g., "LAX") departure_date: YYYY-MM-DD return_date: YYYY-MM-DD (compare round-trip; book separately) max_results: max fares to return
Inputs: origin (required), destination (required), departure_date (required), max_results, +1 more.
tool_find_split_ticketA
Find savings by booking two separate tickets through a hub (prices originβhub and hubβdestination independently). 20-60% off on competitive long-haul routes. β οΈ Missed-connection risk is on the traveler β surface result risks before booking.
Args: origin: Origin airport IATA code (e.g., "SFO") destination: Destination airport IATA code (e.g., "DEL") departure_date: YYYY-MM-DD departure date adults: Number of passengers cabin_class: economy | premium_economy | business | first currency: Currency code min_connection_hours: Minimum buffer hours between tickets at hub
Inputs: origin (required), destination (required), departure_date (required), adults, +3 more.
tool_find_sweet_spot_awardsA
Curated list of the best-value award redemptions in the points game.
ANA first class for 120k VA miles (16.7cpp), Hyatt all-inclusive for 25k (2.4cpp), Turkish J to Europe for 45k (8.9cpp), Singapore Suites for 92k (16.3cpp), and more. Filters by your programs, cabin class, budget, or route.
Args: programs: Comma-separated program keys (e.g., "chase_ur,amex_mr") β omit to use profile cards cabin: Filter by cabin (economy, business, first, suites, hotel) max_points: Only show awards under this points threshold route_keyword: Filter by route (e.g., "Japan", "Europe", "Caribbean")
Inputs: cabin, programs, max_points, route_keyword.
tool_find_transfer_partnersA
Show all airline and hotel transfer partners for a bank points program.
Maps Chase UR β United, Hyatt, BA, etc. Amex MR β Delta, ANA, Hilton, etc. Includes transfer ratios and transfer times. Sorted by partner value.
Args: program: Bank program key (e.g., "chase_ur", "amex_mr", "citi_typ", "capital_one", "bilt")
Inputs: program (required).
tool_generate_packing_listA
Generate a smart packing list tailored to destination, weather, and activities.
Fetches live weather to adapt clothing and gear suggestions.
Args: destination: City or country name start_date: YYYY-MM-DD end_date: YYYY-MM-DD activities: Comma-separated (e.g., "beach,hiking,business,nightlife") budget_level: budget, moderate, luxury travelers: Number of travelers latitude: Optional β auto-fetched if omitted longitude: Optional β auto-fetched if omitted
Inputs: end_date (required), start_date (required), destination (required), latitude, +4 more.
tool_geocodeA
City or place -> coordinates. No auth required.
Args: place_name: City or place (e.g., "Paris, France")
Inputs: place_name (required).
tool_get_cost_of_livingA
DIFFERENTIATOR: Cost-of-living index + quality of life scores for a city.
"Your $100/day = lavish in Lisbon, broke in London." Free, no auth. Covers ~270 cities globally with detailed quality scores.
Args: city: City name (e.g., "Lisbon", "Tokyo", "San Francisco") home_currency: Your home currency (USD, EUR, etc.)
Inputs: city (required), home_currency.
tool_get_country_factsA
Key facts about a country: capital, languages, population, currency, timezones, calling code, borders. Live data from RestCountries.
Args: country: Country name or ISO 2/3-letter code (e.g., "Japan", "JP", "JPN")
Inputs: country (required).
tool_get_cultural_etiquetteB
Cultural dos/don'ts, dress code, greetings, photography rules. Curated snapshot.
Args: country_iso2: ISO 2-letter code (e.g., "JP", "IN", "TH")
Inputs: country_iso2 (required).
tool_get_destination_infoA
Essential country info (currency, language, timezone). No auth required.
Args: country_name: Country name (e.g., "Japan")
Inputs: country_name (required).
tool_get_emergency_contactsB
Emergency numbers (police, ambulance, fire, tourist police) for a country. Curated snapshot.
Args: country_iso2: ISO 2-letter code (e.g., "TH", "JP", "FR")
Inputs: country_iso2 (required).
tool_get_exchange_ratesA
Get exchange rates. No auth required.
Args: base_currency: Base (e.g., "USD") target_currencies: Comma-separated targets or omit for all
Inputs: base_currency (required), target_currencies.
tool_get_language_phrasebookA
Get a phrasebook for the local language at a destination.
Covers 17 languages with pronunciation guides and essential phrases.
Args: destination: City or country name (e.g., "Tokyo", "France", "Bangkok") language_code: Override language (ja, fr, es, it, de, pt, th, zh, ar, ko, hi, vi, id, tr, ms, sw) category: greeting | essential | food | transport | shopping | emergency | accommodation | numbers
Inputs: destination (required), category, language_code.
tool_get_local_eventsA
DIFFERENTIATOR: Find concerts, shows, sports during your trip dates.
"Coldplay is in Paris while you're there." Uses Ticketmaster Discovery.
Args: city: City name start_date: YYYY-MM-DD end_date: YYYY-MM-DD classification: music, sports, arts, family, film, miscellaneous keyword: Artist, team, or show name max_results: Max events
Inputs: city (required), end_date (required), start_date (required), keyword, +2 more.
tool_get_local_sim_guideA
Local SIM/eSIM guide for a country: operators, cost, data, where to buy, activation, tethering policy, duration advice. 25+ countries; falls back to Airalo/Holafly otherwise.
Args: country: Country name (e.g., "Thailand"), ISO2 code (e.g., "TH"), or city (e.g., "Bangkok") trip_duration_days: Trip length in days β affects local SIM vs eSIM recommendation data_heavy: True if you stream video, work remotely, or need constant hotspot
Inputs: country (required), data_heavy, trip_duration_days.
tool_get_outlet_infoB
Electrical plug types, voltage, frequency and whether an adapter is needed. Curated snapshot.
Args: country_iso2: ISO 2-letter code (e.g., "US", "JP", "AU")
Inputs: country_iso2 (required).
tool_get_passport_powerA
Rank passport strength, optionally compare two head-to-head: visa-free count, frictionless %, regional breakdown, Henley 2024 rank. With compare_with, shows which destinations each passport unlocks that the other doesn't.
Args: passport_country: Your passport ISO2 code (e.g., "US", "IN", "NG", "CN") compare_with: Optional second passport ISO2 for comparison (e.g., "GB")
Inputs: passport_country (required), compare_with.
tool_get_solo_travel_safetyB
Solo travel safety: risk level, female/male solo notes, top risks, safe areas, transport tips. Curated snapshot.
Args: country_iso2: ISO 2-letter code (e.g., "TH", "IN", "ZA")
Inputs: country_iso2 (required).
tool_get_stopover_guideA
Get a layover activity guide for a major hub airport.
Read-only. No auth required. Data source: built-in curated dataset for 10 hubs: IST, DXB, SIN, DOH, NRT, HND, CDG, HKG, ICN, AMS. Returns in-terminal activities, city excursion options (only suggested when layover_hours is sufficient for safe exit/re-entry), and transit visa status for the given passport. Unsupported airports return an error field with a list of supported IATA codes.
Use this when the user has a confirmed layover and wants to make use of the time. Use tool_check_transit_visa for a standalone transit visa check without activity content. Do not use for airports not in the supported list above.
Args: airport: IATA code of the layover airport (e.g., "DXB", "SIN", "IST") layover_hours: Total available layover time in decimal hours (e.g., 4.5) passport_country: ISO-2 passport code for transit visa check (e.g., "IN", "US") β omit to skip visa check
Inputs: airport (required), layover_hours (required), passport_country.
tool_get_sunrise_sunsetB
Sunrise, sunset, solar noon, twilight and day length for a location (UTC times).
Args: latitude: Location latitude longitude: Location longitude date: YYYY-MM-DD or "today"
Inputs: latitude (required), longitude (required), date.
tool_get_tipping_guideC
Tipping customs and expected amounts (restaurants, taxis, hotels, bars). Curated snapshot.
Args: country_iso2: ISO 2-letter code (e.g., "US", "JP", "TH")
Inputs: country_iso2 (required).
tool_get_travel_advisoryA
Official US State Department travel advisory for a country.
Returns advisory level (1=safe, 4=do not travel), summary, and link. No API key. Cached 60 min.
Args: country: Country name in English (e.g., "Japan", "Egypt") or ISO code
Inputs: country (required).
tool_get_traveler_profileA
Load the stored traveler profile (home airports, passports, history).
ALWAYS call this at the start of a session. If onboarded=False, walk the user through onboard_traveler before doing anything else.
Inputs: no named parameters.
tool_get_travel_newsA
Get recent travel news and disruption alerts for a destination.
Scans Google News RSS for strikes, airport closures, entry bans, protests. No API key required.
Args: destination: City or country name (e.g., "Paris", "Thailand") days_lookback: Only news from last N days (1-30) max_results: Max articles to return
Inputs: destination (required), max_results, days_lookback.
tool_get_trip_historyA
View logged trip history for this traveler.
Args: limit: Max trips to return (most recent first)
Inputs: limit.
tool_get_trip_statusA
Get a saved trip's full state + checklist progress. Look up by id or destination.
Args: trip_id: 8-char trip id destination: City/country if id unknown
Inputs: trip_id, destination.
tool_get_weatherA
Get weather forecast for travel dates. No auth required.
Args: latitude: Latitude longitude: Longitude start_date: YYYY-MM-DD end_date: YYYY-MM-DD
Inputs: end_date (required), latitude (required), longitude (required), start_date (required).
tool_list_advisories_by_levelA
List countries currently at advisory level X or above.
"What countries should I avoid right now?"
Args: min_level: 1-4. Default 3 = Reconsider Travel. 4 = Do Not Travel.
Inputs: min_level.
tool_list_fare_watchesA
List saved fare watches with baseline/last/low prices.
Args: status: Filter active/paused/triggered (omit for all)
Inputs: status.
tool_list_my_tripsA
List the traveler's saved trips with checklist progress.
Args: status: Filter by planning/booked/completed/cancelled (omit for all)
Inputs: status.
tool_multi_origin_meetupA
Find the cheapest city for a group of travelers flying from different origins to meet.
Read-only. No auth required. Scrapes Google Flights live for each origin-destination pair; results are indicative. Returns a ranked list of meeting cities each with total group cost, per-traveler cost breakdown, and individual flight details. Combinatorial search β response time scales with number of origins Γ candidates.
Use this when multiple travelers in different cities need to meet and want to minimize total group flight spend. Use tool_search_flights for single-origin itineraries. Use tool_optimize_budget when origin and destination are fixed.
Args: origins: Comma-separated IATA codes for each traveler's departure city (e.g., "JFK,LHR,NRT" for New York, London, Tokyo) departure_date: YYYY-MM-DD shared departure date return_date: YYYY-MM-DD shared return date max_results: Max candidate meeting cities to return (1-20) currency: ISO currency code for price display β USD, EUR, etc. regions: Comma-separated region filter to narrow candidates β europe, asia, americas, middleeast, africa (omit for global)
Inputs: origins (required), return_date (required), departure_date (required), regions, +2 more.
tool_onboard_travelerA
First-time setup. Saves the traveler profile for reuse every future session.
Args: name: First name home_airports: Comma-separated IATA (e.g., "JFK,EWR") passports: Comma-separated ISO-2 (e.g., "US" or "US,IN") home_currency: USD, EUR, GBP, INR, etc. travel_style: budget, moderate, luxury interests: Comma-separated (e.g., "food,history,beach") dietary: Comma-separated restrictions preferred_cabin: economy, premium_economy, business, first visas_held: ISO-2 dest codes with active visas (e.g., "IN,CN") eta_held: Active ETAs (e.g., "ESTA (US),UK ETA")
Inputs: name, dietary, eta_held, interests, +6 more.
tool_optimize_budgetA
Find the cheapest flight + hotel combination across flexible date windows.
Read-only. No auth required. Scrapes Google Flights and Hotels live; prices are indicative and may shift. Returns ranked date combinations each with total cost (flights + estimated hotel), per-person breakdown, and booking deeplinks.
Use this when the user wants the lowest total trip cost and can shift dates by a few days. Use tool_search_flights for fixed-date flight-only search. Use tool_fare_calendar for a full month price grid without hotel bundling.
Args: origin: Departure airport IATA code (e.g., "JFK") destination: Arrival airport IATA code (e.g., "CDG") departure_date: Preferred departure YYYY-MM-DD return_date: Preferred return YYYY-MM-DD adults: Number of travelers (affects per-person vs total cost) currency: ISO currency code β USD, EUR, etc. flexible_dates: True to search Β±flexibility_days around given dates flexibility_days: Date window to search each side, 1-7
Inputs: origin (required), destination (required), return_date (required), departure_date (required), +4 more.
tool_plan_itineraryA
PLANNING: Generate data-backed day-by-day itinerary with real activities and weather.
Args: destination: City and country (e.g., "Paris, France") start_date: YYYY-MM-DD end_date: YYYY-MM-DD interests: Comma-separated (e.g., "food,history,nature,art") budget_level: budget, moderate, luxury travelers: Number of travelers include_weather: Include forecast include_activities: Include nearby attractions
Inputs: end_date (required), start_date (required), destination (required), interests, +4 more.
tool_plan_trip_packageA
Complete bookable trip package in one call: flights, hotels, visa, weather, advisory, attractions, ground transport, cost estimate + booking URLs/checklist.
Use when the destination is decided; use score_destinations if still deciding.
Args: origin: Departure airport IATA or city (e.g., "DXB", "JFK", "New York") destination: Destination city (e.g., "Bali", "Tokyo", "Paris") departure_date: YYYY-MM-DD return_date: YYYY-MM-DD (auto-calculated from trip_length_days if omitted) trip_length_days: Nights (used when return_date omitted) travelers: Number of travelers passport_country: ISO-2 for visa check (e.g., "US", "IN", "GB") currency: Home currency for all prices budget_level: budget, moderate, luxury interests: Comma-separated (e.g., "beach,food,history") include_ground_transport: Also search buses/trains
Inputs: origin (required), destination (required), departure_date (required), currency, +7 more.
tool_rank_trip_optionsA
Rank flight/trip options on a 0-100 value score β price plus stops, duration, refundability, baggage and hassle β not price alone.
Pass a JSON array of option objects with any of: price, duration_minutes, stops, refundable, checked_bag_included, self_transfer, hidden_city, split_ticket, visa_required, transit_visa_required, label.
Args: options_json: JSON array of option objects priority: cheapest/fastest/easiest/flexible/balanced currency: Display currency
Inputs: options_json (required), currency, priority.
tool_save_tripA
Save a trip the traveler is planning. Returns a trip_id + 8-item booking checklist.
Use when a traveler commits to a destination so progress persists across sessions.
Args: destination: City or country depart_date: YYYY-MM-DD return_date: YYYY-MM-DD origin: Home airport IATA travelers: Headcount passport_country: ISO2 for visa context purpose: leisure/business/etc notes: Free text
Inputs: destination (required), notes, origin, purpose, +4 more.
tool_score_destinationsA
DIFFERENTIATOR: Multi-objective destination ranking.
Scores destinations on cost + weather + safety + events + quality of life simultaneously. The killer "where should I actually go?" tool.
Args: destinations: Comma-separated (e.g., "Paris,Rome,Barcelona,Tokyo") travel_start: YYYY-MM-DD travel_end: YYYY-MM-DD weights: key:weight pairs (e.g., "cost:3,weather:2") weather_pref: warm_dry, cool_dry, warm_any, snow, shoulder_season origin: Optional origin airport
Inputs: travel_end (required), destinations (required), travel_start (required), origin, +2 more.
tool_score_nomad_citiesA
Score and rank cities for digital nomad / remote-work suitability.
Combines cost of living, safety advisory, internet speed index, weather comfort, visa ease, and lifestyle/coworking data into a single ranked score. No API key required.
Args: cities: Comma-separated city names (e.g., "Bali,Lisbon,Chiang Mai,Medellin") month: Month 1-12 to evaluate weather (default: current month) weights: Scoring weights as "dimension:percent" pairs summing to 100. Dimensions: cost, safety, internet, weather, visa, lifestyle
Inputs: cities (required), month, weights.
tool_search_activitiesA
Search activities and attractions near a GPS coordinate using Wikidata/OpenTripMap.
Read-only. No auth required. No rate limits. Data source: Wikidata with OpenTripMap fallback β community-curated, not real-time. Returns a list of places each with name, category, coordinates, description, and Wikipedia link where available.
Use this when you have coordinates (from tool_geocode) and need nearby things to do. Use tool_search_restaurants_bars specifically for dining. Use tool_get_local_events for time-sensitive events like concerts or festivals. Not suitable for business hours or current pricing β those change frequently.
Args: latitude: Decimal latitude (e.g., 48.8566 for Paris) longitude: Decimal longitude (e.g., 2.3522 for Paris) radius_km: Search radius in km, 1-50 category: Filter by type β culture, nature, food, shopping, nightlife, architecture, historic, museums, religion, sport β or omit for all max_results: Max places to return, 1-50
Inputs: latitude (required), longitude (required), category, radius_km, +1 more.
tool_search_flightsA
Search live flight prices between two airports using Google Flights data.
Read-only. No auth required. No rate limits enforced. Data freshness: scraped live at call time; prices may shift minute-to-minute. Returns a list of flight options each with price, stops, duration, airline, and booking deeplink.
Use this when the user wants to compare specific flight options for a known origin-destination pair. Use tool_fare_calendar instead when dates are flexible. Use tool_find_cheapest_month for month-level planning. Use tool_cheap_anywhere_from when the destination is open. Use tool_optimize_budget to bundle flights + hotels.
Args: origin: IATA airport code (e.g., "JFK", "LAX", "LHR") destination: IATA airport code (e.g., "CDG", "NRT", "SYD") departure_date: YYYY-MM-DD return_date: YYYY-MM-DD (omit for one-way) adults: Number of passengers, 1-9 max_results: Max flight options to return (1-20) currency: ISO currency code β USD, EUR, GBP, INR, etc. nonstop_only: True to exclude connecting flights
Inputs: origin (required), destination (required), departure_date (required), adults, +4 more.
tool_search_ground_transportA
Search bus, train, and ferry options between two cities.
Returns multi-modal route overview + direct booking links for Amtrak, FlixBus, Greyhound, Megabus, OurBus, BlaBlaCar, Busbud, Trainline, IRCTC, 12Go, and Rome2Rio. No API key required.
Args: origin_city: Departure city (e.g., "State College", "Paris", "Mumbai") destination_city: Destination city (e.g., "New York", "London", "Delhi") date: Departure date YYYY-MM-DD travelers: Number of travelers region: us, europe, india, sea β auto-detected if omitted
Inputs: date (required), origin_city (required), destination_city (required), region, +1 more.
tool_search_hotelsA
PLANNING: Search hotels in a city.
Uses Google Hotels names through fast_hotels plus booking deeplinks. Args: city: City name (e.g., "Paris", "Tokyo") - NOT IATA code check_in: YYYY-MM-DD check_out: YYYY-MM-DD adults: Number of guests rooms: Number of rooms max_results: Max results currency: USD, EUR, etc. price_range: "100-300" ratings: "3,4,5"
Inputs: city (required), check_in (required), check_out (required), rooms, +5 more.
tool_search_restaurants_barsA
Find restaurants/bars/pubs/cafes near a location: cuisine, price, hours, distance + links to Google Maps, Zomato, TripAdvisor, Yelp, OpenTable, Resy, Untappd, Foursquare. Ratings need FOURSQUARE_API_KEY (free tier).
Args: latitude: Location latitude longitude: Location longitude category: restaurant | bar | pub | cafe | nightlife | all radius_m: Walk radius in metres (default 1000 = ~12min walk) max_results: Max venues (1-30) cuisine: Filter by cuisine e.g. "italian", "japanese", "thai", "indian" city: City name for better search links e.g. "Tokyo", "Paris"
Inputs: latitude (required), longitude (required), city, cuisine, +3 more.
tool_stop_fare_watchA
Pause or permanently delete a fare watch by its ID.
Writes to local profile store (~/.wander_agent/). No external auth required. Returns the updated watch record. Pausing (delete=False) keeps history but stops the watch from being checked by tool_check_fare_watches. Deleting (delete=True) removes it permanently with no recovery.
Use this when the user has booked the flight or no longer needs the alert. Use tool_list_fare_watches to find the watch_id if unknown. Use tool_check_fare_watches to re-price before deciding to stop.
Args: watch_id: ID of the watch to stop (from tool_list_fare_watches or tool_watch_fare) delete: False to pause (reversible); True to delete permanently
Inputs: watch_id (required), delete.
tool_update_traveler_profileA
Update profile fields, manage cards, or log a trip. Pass only what changed.
Args: name: Update name home_airports: Replace home airports (comma-separated IATA) passports: Replace passports (comma-separated ISO-2) home_currency: Update home currency travel_style: budget, moderate, luxury interests: Replace interests (comma-separated) dietary: Replace dietary restrictions preferred_cabin: economy, premium_economy, business, first visas_held: Replace full visa list (comma-separated ISO-2 dest codes) eta_held: Replace ETA list add_visa: Append one ISO-2 dest code to visas_held add_card: Card key to add (e.g., "chase_sapphire_reserve", "amex_gold", "bilt_mastercard") add_card_nickname: Optional nickname for the card add_card_balance: Current points balance on this card's program remove_card: Card key to remove from portfolio add_trip_destination: Log a trip β destination name add_trip_from: Trip start YYYY-MM-DD add_trip_to: Trip end YYYY-MM-DD add_trip_purpose: tourism, business, family, other
Inputs: name, dietary, add_card, add_visa, +15 more.
tool_update_tripA
Update a saved trip: change status/dates, tick checklist items, shortlist options.
Checklist keys: book_flights, book_hotel, check_visa, travel_insurance, book_ground_transport, check_advisory, pack, notify_bank.
Args: trip_id: 8-char trip id status: planning/booked/completed/cancelled depart_date: YYYY-MM-DD return_date: YYYY-MM-DD notes: Replace notes mark_done: Checklist key to mark done mark_undone: Checklist key to un-mark checklist_note: Note for the marked item shortlist_flight: Flight option dict to save shortlist_hotel: Hotel option dict to save
Inputs: trip_id (required), notes, status, mark_done, +6 more.
tool_verify_flight_routeA
Verify a flight route exists between two airports.
Args: origin: IATA code destination: IATA code
Inputs: origin (required), destination (required).
tool_verify_placeA
Verify a named place actually exists by cross-checking OSM, Foursquare, and OpenTripMap.
Read-only. No auth required (Foursquare key optional; degrades gracefully without it). Returns: verified (bool), confidence score, canonical name, coordinates, matched sources, and a warning message if the place appears to be hallucinated.
Use this before presenting any specific restaurant, hotel, or attraction to the user β especially when the name came from an LLM rather than a live API. Do not use for checking business hours or current availability; this only confirms existence. Use tool_geocode if you only need coordinates for a city or landmark.
Args: place_name: Place name to verify (e.g., "Eiffel Tower", "Nobu Tokyo") city: City context to narrow the search (e.g., "Paris", "Tokyo") expected_type: Optional type hint β restaurant, attraction, hotel, museum, park
Inputs: city (required), place_name (required), expected_type.
tool_visa_free_destinationsA
List all countries a passport can enter without a traditional pre-arranged visa.
Read-only. No auth required. Data source: built-in curated dataset (static snapshot β verify with official embassy before travel). Returns a list of countries each with entry category, apply link, and notes. Invalid passport codes return an empty list. Territories and disputed regions may not be included.
Use this for broad destination discovery ("where can I go without a visa?"). Use tool_check_visa_requirement for a precise single-pair lookup. Use tool_check_transit_visa for transit/layover visa checks, not entry.
Args: passport_country: ISO 2-letter passport country code (e.g., "IN", "BR", "ZA") include_categories: Comma-separated filter β valid values: visa_free, visa_on_arrival, evisa, eta_required (default includes all four)
Inputs: passport_country (required), include_categories.
tool_watch_fareA
Create a fare watch that records a baseline price and alerts when a target is hit.
Writes to local profile store (~/.wander_agent/). No external auth required. Returns the created watch_id, baseline price fetched at creation time, and target_price (auto-set to 10% below baseline if not specified). The watch is passive β prices are only re-checked when tool_check_fare_watches is called.
Use this to begin monitoring a route. Use tool_check_fare_watches to poll for price changes. Use tool_list_fare_watches to see all active watches. Use tool_stop_fare_watch to pause or delete a watch when no longer needed.
Args: origin: Departure airport IATA code (e.g., "JFK") destination: Arrival airport IATA code (e.g., "LHR") depart_date: YYYY-MM-DD departure date return_date: YYYY-MM-DD return date for round trip; omit for one-way adults: Number of passengers (affects price baseline) currency: ISO currency code β USD, EUR, GBP, etc. target_price: Alert threshold; omit to auto-set at 10% below baseline
Inputs: origin (required), depart_date (required), destination (required), adults, +3 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelogβ¦
TDQS
Scored across 75 tools
Many tools have overlapping purposes, especially for flight price search (search_flights, fare_calendar, find_cheapest_month, cheap_anywhere_from) and destination scoring. However, descriptions explicitly cross-reference alternatives (e.g., 'use X instead when...'), which helps disambiguate but does not eliminate confusion given the sheer number of similar tools.
Nearly all tools follow a consistent snake_case verb_noun pattern with a tool_ prefix (e.g., search_flights, get_travel_advisory, calculate_points_or_cash). A minor deviation is tool_fare_calendar, which is noun-based without a verb, but the overall naming is highly predictable.
With 75 tools, this server far exceeds any reasonable scope for a single MCP server. The domain is broad, but the volume creates extreme cognitive load and likely substantial overlap, making tool selection error-prone.
The tool surface covers almost every aspect of travel planning: flights, hotels, visas, health, weather, points, logistics, trip management, and more. Gaps exist in execution (no direct booking, car rental, or insurance tools), but these are minor for a planning-focused agent.
Maintenance
Related MCP Connectors
Aggregated travel MCP β flights, tours, activities, price checks, visas, and more.
Travel Feeds MCP.
MCP server for Travel & Transportation
AI marketplace β flights, tours, activities, transport & more via MCP. No auth required.
Related MCP Servers
AlicenseAqualityDmaintenanceAI travel agent over MCP β live flights, hotels, activities, and events worldwide, then completes the booking on autonomad.ai.8627 npm2MIT- FlicenseAqualityDmaintenanceAn AI-powered travel planner MCP server enabling flight and hotel search, weather forecasts, point-of-interest discovery, itinerary generation, and budget management.8-
- AlicenseNot gradedqualityDmaintenanceA production-ready MCP server for intelligent travel planning that integrates 16 tools, live APIs, and a gamification system to help users plan trips, track expenses, and discover events.8 npmMIT
- AlicenseNot gradedqualityDmaintenanceCoordinates flights, hotels, events, weather, currency, and traffic data through a single MCP server, enabling comprehensive trip planning via natural language prompts.MIT