Skip to content

Repository files navigation

🌍 Wander Agent

A travel planning AI with 46 tools, zero API keys required.

Ask your AI anything about travel — flights, hotels, visas, weather, safety, local food, packing lists — and get real data back, not hallucinations.

Python 3.10+MCPLicense: MIT


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.


What can it do?

✈️ Flights
  • 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
  • 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)
🏨 Hotels
  • Search hotels with direct booking links to Booking.com, Airbnb, Expedia, Tripadvisor, and 6 more
  • Optimize for cheapest flight + hotel combo across flexible dates
📋 Visas & Entry
  • Check if you need a visa, e-visa, ETA, or nothing at all
  • See every country you can enter without a full visa
  • Official government apply links included
🌤️ Weather
  • 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
⚠️ Safety
  • 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
💰 Costs
  • Daily budget estimates for 220 cities (budget / mid-range / luxury)
  • Live currency conversion
  • Total trip cost estimate combining flights, hotels, and daily spend
🗺️ Planning
  • 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
🍜 Food & Nightlife
  • 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
🎒 On the Ground
  • 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
🧠 Memory
  • Saves your home airports, passports, currency, and interests
  • Never ask again — the AI uses your profile automatically
  • Logs your trip history

Setup (5 minutes)

Step 1 — Install Python

You need Python 3.10 or newer. Check if you have it:

python3 --version

Don't have it? Download from python.org.


Step 2 — Install Wander Agent

git clone https://github.com/VirajMishra1/wander-agent.git
cd wander-agent
pip install -e .

Using uv? Replace pip install -e . with uv pip install -e .

Verify it worked:

wander-agent --help

Step 3 — Connect to your AI

Pick the app you use:

Claude Desktop

Open this file in a text editor:

  • macOS:~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows:%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-agent

Then use that path in the config:

{
"mcpServers": {
"wander-agent": {
"command": "/usr/local/bin/wander-agent"
}
}
}
Claude Code (terminal)
claude mcp add wander-agent wander-agent

Confirm it registered:

claude mcp list
Cursor

Create or edit .cursor/mcp.json in your home directory:

{
"mcpServers": {
"wander-agent": {
"command": "wander-agent"
}
}
}

Restart Cursor.

Windsurf

Edit ~/.codeium/windsurf/mcp_config.json:

{
"mcpServers": {
"wander-agent": {
"command": "wander-agent"
}
}
}

Restart Windsurf.

Cline (VS Code extension)

Open VS Code settings, search for "Cline MCP", edit cline_mcp_settings.json:

{
"mcpServers": {
"wander-agent": {
"command": "wander-agent"
}
}
}
Continue.dev

Edit .continuerc.json in your project or home directory:

{
"mcpServers": [
{
"name": "wander-agent",
"command": "wander-agent"
}
]
}
Zed

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:

VariableWhat it unlocksGet it free at
FOURSQUARE_API_KEYReal ratings and price levels for restaurants/barsfoursquare.com/developers
TICKETMASTER_API_KEYLive event listings (concerts, sports, shows)developer.ticketmaster.com

Set them before starting your AI:

export FOURSQUARE_API_KEY=your_key_here
export TICKETMASTER_API_KEY=your_key_here

Or add them to your shell profile (~/.zshrc, ~/.bashrc) to make them permanent.


All 46 Tools

✈️ Flights

ToolWhat it does
search_flightsLive flight search across Google Flights and Kiwi.com. Returns prices, duration, stops, and booking links.
find_skiplagged_faresHidden-city fares — buy a connecting flight and exit at the layover city. Often 40–60% cheaper. Carry-on only.
find_split_ticket_faresBook two separate tickets via a hub instead of one through-ticket. OTAs are contractually forbidden from recommending this. Often 20–40% cheaper. Full risk warnings included.
optimize_open_jawFly INTO one city, travel overland, fly HOME from another. Combines two one-way flights + ground transport. No OTA does this. Avoids expensive backtracking and often saves hundreds.
get_fare_calendarFull month price grid — searches every departure day in a month and returns the cheapest date to fly. Shows day-of-week price patterns. Capped to prevent rate-limiting.
find_mistake_faresScans Secret Flying and The Flight Deal RSS for error fares and flash deals.
cheap_anywhere_fromCheapest destinations from an origin across 114 airports worldwide.
find_destinations_by_budgetFinds destinations reachable within a total budget (flights + hotels).
multi_origin_meetupCheapest city for multiple friends to meet, flying from different cities.
verify_flight_routeConfirms a direct or connecting route exists between two airports.
find_aurora_destinationsAurora-viewing destinations with live NOAA KP-index forecast and flight prices.

🏨 Hotels

ToolWhat it does
search_hotelsHotels with booking links to Booking.com, Airbnb, Expedia, Tripadvisor, and 6 more.
optimize_budgetFinds the cheapest flight + hotel combo across a flexible date window (±7 days).

📋 Visas & Entry

ToolWhat it does
check_visa_requirementVisa category for a passport + destination pair. Returns visa-free, ETA, e-visa, visa on arrival, or visa required — with the official apply link.
visa_free_destinationsEvery country a given passport can enter without a full embassy visa.
compare_passport_powerRank and compare passport strength side-by-side. Shows visa-free count, total accessible countries, Henley Index rank, and what one passport can enter that another cannot. Essential for dual-passport holders.

🌤️ Weather

ToolWhat it does
get_weather16-day live weather forecast for any coordinates. Falls back to 5-year historical data for dates beyond the forecast window.
best_month_to_visitRanks all 12 months for a location by weather quality, based on historical climate data.

⚠️ Safety & News

ToolWhat it does
get_travel_advisoryUS State Dept advisory level (1–4) and summary. Pulled from the live RSS feed.
list_advisories_by_levelAll countries currently at or above a given advisory level.
get_travel_newsScans Google News for recent disruptions: strikes, airport closures, entry bans, protests.

💰 Costs & Currency

ToolWhat it does
get_cost_of_livingDaily budget estimates for 220 cities across budget, mid-range, and luxury tiers.
convert_currencyLive currency conversion via European Central Bank rates.
get_exchange_ratesExchange rates for multiple currencies from a base currency.

🗺️ Planning & Scoring

ToolWhat it does
plan_trip_packageThe 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.
plan_itineraryDay-by-day itinerary with weather forecast and suggested activities for each day.
score_destinationsRanks destinations by a weighted combination of cost, weather, safety, and events.
compare_destinationsSide-by-side comparison of 2–5 destinations for the same dates.
score_nomad_destinationsRanks cities for digital nomads across 6 dimensions: monthly cost, internet speed (Speedtest data), safety, nomad visa availability, coworking density, and timezone overlap with home. Covers 25+ official nomad visa programs.

🍜 Food & Nightlife

ToolWhat it does
search_restaurants_barsReal 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.

🎒 On the Ground

ToolWhat it does
generate_packing_listPacking list tailored to destination weather, activities, trip length, and budget level.
find_placesViewpoints, beaches, hiking trails, coworking spaces, waterfalls, markets, and more from OpenStreetMap.
calculate_jet_lagJet lag severity with a science-based recovery schedule: pre-departure shift, melatonin timing, light exposure strategy.
get_language_phrasebookPhrasebook for 17 languages with local script, romanized pronunciation, and audio tips.
get_stopover_guideWhat to do during a layover at 10 major hubs. Includes transit visa check, in-airport activities, and city excursion options.
check_travel_healthRequired 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.
search_ground_transportBus, 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.

🏛️ Attractions & Info

ToolWhat it does
search_activitiesAttractions near a location from Wikidata. Filter by category: museums, parks, architecture, nightlife, food, historic, nature, and more.
get_local_eventsLive events from Eventbrite: concerts, sports, festivals.
get_destination_infoCountry basics: currency, official language, timezone, dialling code, driving side.
geocodeConverts a place name to coordinates.
verify_placeConfirms a place actually exists (catches AI hallucinations before they reach you).

🧠 Traveler Profile

ToolWhat it does
get_traveler_profileLoads your saved profile: home airports, passports, currency, interests, and trip history.
onboard_travelerOne-time setup. Saves your preferences so the AI uses them automatically in every future session.
update_traveler_profileUpdate any field or log a completed trip.
get_trip_historyYour logged trip history.

Data sources

SourceWhat it providesKey needed?
Google Flights (scraper)Flight prices and airline namesNo
Kiwi.comLive bookable flight pricesNo
Open-MeteoWeather forecast and 5-year historical climateNo
Frankfurter (ECB)Currency exchange ratesNo
Wikidata SPARQLAttractions and points of interestNo
OpenStreetMap OverpassRestaurants, bars, beaches, viewpoints, hikingNo
US State Dept RSSTravel advisoriesNo
Open-Meteo GeocodingCoordinates for place namesNo
RESTCountriesCountry metadataNo
Secret Flying / The Flight DealMistake fares and dealsNo
NOAA Space WeatherAurora KP-index forecastNo
Google News RSSTravel disruption newsNo
SkiplaggedHidden-city faresNo (fragile)
Foursquare Places v3Restaurant/bar ratings and price levelsOptional (free tier)
Ticketmaster DiscoveryLive event listingsOptional (free tier)
Static datasetsVisa requirements, cost of living, airport data, nomad visas, passport powerN/A
Speedtest Global Index 2024Internet speeds for 60+ cities (nomad scoring)No
Henley Passport IndexPassport global rank referenceNo

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 — the cheaper one wins.

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. Policies change — always verify with the official link in the response before you book anything.

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.

Split ticketing: Two separate bookings means two separate contracts. If your first flight is delayed and you miss the second, the second airline owes you nothing. The tool shows savings and risk warnings — the decision is yours.

Open-jaw ground cost: Overland leg cost is estimated (no live ground pricing API). Check the booking links for real prices before deciding.

Nomad scores: Internet speeds from Speedtest Global Index 2024 — city averages, not guaranteed at your specific accommodation. Nomad visa data curated from official sources but policies change; verify before applying.

Fare calendar: Searches a sample of dates in the month (default 12 of ~28 days) to avoid hitting scraper rate limits. Run twice with different max_combinations if you want more coverage.

Passport power: Based on our dataset of ~25 passports. For all 199 passports, see the Henley Passport Index directly. Verify current requirements before travel.


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 keys

The 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.py

Adding a tool:

  1. Create src/wander_agent/tools/your_tool.py with an async function
  2. Import it in src/wander_agent/server.py
  3. Wrap with @mcp.tool() and an async wrapper function
  4. Restart your AI client to pick up the new tool

License

MIT — see LICENSE.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages