wanderlog-mcp
Provides hotel search across Airbnb listings via Wanderlog's hotel aggregator, returning ranked offers and per-vendor price comparison.
Provides hotel search across Expedia offers via Wanderlog's hotel aggregator, returning ranked offers and per-vendor price comparison.
Provides hotel search across Google hotel offers via Wanderlog's hotel aggregator, returning ranked offers and per-vendor price comparison.
Click on "Deploy Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@wanderlog-mcpCreate a 7-day Lisbon itinerary with hotels and day trips"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
wanderlog-mcp
An MCP server that lets Claude (or any MCP-compatible agent) view and build Wanderlog trip itineraries through conversation.
Instead of clicking through the Wanderlog UI to plan a trip, you just ask:
"Create a 14-day Japan Golden Route trip — Tokyo, Hakone, Kyoto, Nara, and Osaka."
The agent calls the tools, interleaves places and notes for each day, adds hotel blocks, ferries, buses, trains, rental cars, and checklists, and you end up with a fully populated Wanderlog trip in a few minutes.
See a real example: 14-day Japan Golden Route — built entirely by an AI agent using this MCP server.
What's New (Unreleased)
Custom-list lifecycle operations now reject duplicate or ambiguous section headings instead of silently changing the first match.
wanderlog_search_hotels— search Wanderlog's hotel aggregator across airbnb, expedia, google, and kayak. Returns ranked offers with per-vendor price comparison and faceted filter discovery so the LLM never has to memorise Wanderlog's internal enum values.A failed startup authentication probe now gets one shared retry on the first tool call, allowing valid sessions to recover from a transient network or proxy error without restarting the server.
wanderlog_add_placeaccepts an optionalplace_id, sowanderlog_search_places(response_format: "detailed") now has somewhere to send its results — pass the id straight through to add the exact candidate when a name matches multiple branches or the wrong city, instead of hoping the top autocomplete match is right.wanderlog_annotate_placenow replaces a place's existing note instead of appending the new text to it, including notes that contain images.Place lookups no longer fail with "Place not found" when Wanderlog's autocomplete returns an entry with no place ID ahead of the real result. This affected adding places, hotels, journal stops and transit endpoints, and
wanderlog_search_placeslisted those entries asundefined.
Related MCP server: wanderlog-mcp
What's New in v0.3.1
Wanderlog rate-limits rapid edits — burst mutations (an LLM building a full itinerary) now retry automatically with backoff instead of failing with an opaque "Submit op timeout".
Rate-limit rejections that can't be retried surface as a clear error instead of a 10-second hang.
New day sections created by
wanderlog_update_trip_datesnow match Wanderlog's native section shape exactly.
What's New in v0.3.0
wanderlog_search_guides+wanderlog_get_guide— discover and read user-written Wanderlog travel guides. The LLM can ask "what guides exist for Vietnam?" and pull full itineraries to use as inspiration.wanderlog_remove_note— remove standalone note blocks by natural-language reference.wanderlog_edit_note— find-and-replace across note blocks, place annotations, and checklist titles/items.Detailed mode no longer truncates place notes or note blocks — guides and itineraries render their full commentary.
Fixes: notes containing embeds no longer render as
[object Object]; place references now match across hyphen/dash differences (e.g."Roppongi Hills - Tokyo City View").
What's New in v0.2.0
wanderlog_rename_day— replace auto-generated day headings (e.g."Barcelona") with descriptive ones ("Arrival — Feria de Abril"). Pass""to reset back to the default.Tools table now documents
wanderlog_annotate_placeandwanderlog_add_expense(shipped previously, missing from v0.1.0 docs).
What's New in v0.1.0
Full itinerary building: places, notes, hotels, and checklists in a single conversation
wanderlog_search_places— find real-world places near any destination using Wanderlog's place databasewanderlog_add_note— interleave transit tips, booking info, and local advice between placeswanderlog_add_checklist— pre-trip and per-day checklists (visa, currency, timed-entry tickets)MCP server instructions injected at startup so Claude builds complete itineraries automatically
Startup auth probe — catches expired cookies immediately instead of failing mid-conversation
Example Prompts
"What trips do I have in Wanderlog?""Create a 7-day itinerary for Lisbon starting June 1 — include restaurants, day trips,
and a hotel near the waterfront.""Add a day trip to Sintra on day 3 of my Lisbon trip.""I'm spending 5 days in Tokyo — build me a full itinerary with museum visits, ramen spots,
and a ryokan in Shinjuku.""Look at my Barcelona trip and add practical notes for getting between each place.""Add a pre-trip checklist to my Paris trip — visa, currency, offline maps, travel insurance.""Move my Rome trip back by two weeks.""Give me the shareable link to my Kyoto itinerary.""Remove the Colosseum from day 2 of my Rome trip."Tools
Tool | What it does |
| List trips in your account |
| View a full itinerary, or filter to a single day |
| Get a shareable wanderlog.com link |
| Get a trip's |
| Find real-world places near a trip's destination |
| List user-written travel guides for a destination, with fallback suggestions when none exist |
| Read the full content of a public Wanderlog guide (sections, places, notes) |
| Search Wanderlog's hotel aggregator (airbnb/expedia/google/kayak) with per-vendor deal comparison |
| Create a new trip with destination + date range |
| Add a place to a specific day or general list |
| Add a note (transit tips, booking info, local advice) |
| Find-and-replace text in notes, place annotations, and checklists |
| Remove a standalone note block by natural-language reference |
| Add a hotel booking with check-in/check-out dates |
| Add a ferry, bus, or train leg (carrier, from/to, dates/times) to the shared Transit section |
| Add a rental car with pick-up/drop-off locations and times |
| Add a pre-trip or per-day checklist |
| Log a budget expense (amount, category, currency), optionally linked to a place |
| List budget expenses, optionally filtered by description / date / amount / currency |
| Remove a budget expense by description (with optional date / amount / currency filters) |
| Change a budget expense's description, amount, currency, category, or date |
| Update an existing place with a note, start/end time, or both |
| Remove a place by natural-language reference |
| Move an existing place or reservation block within its current section |
| Change a trip's date range |
| Rename a day's heading (e.g. |
| Create a uniquely named custom list, optionally after another section |
| Rename a custom list while preventing duplicate headings |
| Permanently delete a custom list and all blocks inside it |
| List journal (travelogue) stops, optionally filtered by title or date |
| Add a journal stop: a place + date/time + text entry |
| Edit a journal stop's title, text, or date/time (or the journal summary) |
| Remove a journal stop by title (with an optional date filter) |
Managing custom lists
Custom sections are undated lists outside Wanderlog's protected default/system sections.
Create one with wanderlog_add_section, rename it with wanderlog_update_section, and delete
it with wanderlog_delete_section. Deleting is destructive: every block in that section is
removed. Section headings used by these tools must be unique (matching ignores case); ambiguous
or duplicate targets return errors without submitting a mutation.
Prerequisites
Node.js 22 or newer
A Wanderlog account
An MCP-compatible client: Claude Code, Claude Desktop, OpenAI Codex, Cursor, VS Code, or any stdio MCP host
Setup
Step 1 — Get your Wanderlog session cookie
Wanderlog doesn't have a public API, so wanderlog-mcp authenticates using your browser session cookie (connect.sid). It's valid for roughly a year and never leaves your machine.
Treat it like a password — it grants the same access you have in the Wanderlog UI.
Chrome / Edge
Go to wanderlog.com and log in
Press
F12to open DevToolsClick the Application tab
In the left sidebar expand Storage → Cookies → https://wanderlog.com
Find the row where Name is
connect.sidClick the row, then double-click the Value cell and copy the full string — it starts with
s%3Aand is ~100 characters long
Firefox
Go to wanderlog.com and log in
Press
F12to open DevToolsClick the Storage tab
In the left sidebar expand Cookies → https://wanderlog.com
Find
connect.sidin the table, click it, and copy the Value
Why can't I use
document.cookiein the console? Wanderlog setsconnect.sidwith theHttpOnlyflag, which deliberately blocks JavaScript from reading it (XSS protection). DevTools bypasses this restriction — that's why it works and the console doesn't.
Step 2 — Configure your MCP client
Claude Code
claude mcp add wanderlog-mcp npx wanderlog-mcp \
--env WANDERLOG_COOKIE="s%3A...your value here..."Claude Desktop
Edit claude_desktop_config.json:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.jsonLinux:
~/.config/Claude/claude_desktop_config.json
{
"mcpServers": {
"wanderlog": {
"command": "npx",
"args": ["wanderlog-mcp"],
"env": {
"WANDERLOG_COOKIE": "s%3A...your value here..."
}
}
}
}Restart Claude Desktop after saving.
Cursor
Settings → MCP → Add server, or edit ~/.cursor/mcp.json:
{
"mcpServers": {
"wanderlog": {
"command": "npx",
"args": ["wanderlog-mcp"],
"env": {
"WANDERLOG_COOKIE": "s%3A...your value here..."
}
}
}
}VS Code (GitHub Copilot)
Add to your workspace .vscode/mcp.json:
{
"servers": {
"wanderlog": {
"type": "stdio",
"command": "npx",
"args": ["wanderlog-mcp"],
"env": {
"WANDERLOG_COOKIE": "s%3A...your value here..."
}
}
}
}OpenAI Codex
Edit ~/.codex/config.toml:
[mcp_servers.wanderlog]
command = "npx"
args = ["wanderlog-mcp"]
[mcp_servers.wanderlog.env]
WANDERLOG_COOKIE = "s%3A...your value here..."Run /mcp inside Codex to confirm the server loaded.
Smithery (one-click install)
npx @smithery/cli install wanderlog-mcp --client claudeStep 3 — Verify
Ask your agent: "What trips do I have in Wanderlog?"
It should call wanderlog_list_trips and return your account's trips. If it fails, see Troubleshooting below.
Refreshing your cookie
The cookie lasts about a year but can die sooner if you log out of wanderlog.com, change your password, or Wanderlog revokes the session. When that happens every tool call returns:
Wanderlog session invalid or expired — Capture a fresh connect.sid cookie from wanderlog.com DevTools and update WANDERLOG_COOKIE in your MCP config.
Repeat Step 1 above, update your config, and restart your MCP client.
Troubleshooting
Server starts but list_trips returns an auth error Your cookie is expired or wrong. Re-capture it from DevTools and update your config.
npx wanderlog-mcp hangs or does nothing
The server speaks stdio MCP — it's designed to be launched by an MCP host, not run directly in a terminal. Run it through Claude Code or Claude Desktop as described above.
Tools work but the agent ignores notes/checklists
The server injects instructions into the MCP initialize response that tell the agent to interleave places and notes and add checklists. This works reliably with Claude. Other clients may vary.
Security
The cookie is stored only in your MCP client config, never committed or logged
wanderlog-mcp runs entirely on your machine — there's no relay server
The startup auth probe validates your cookie without printing its value
To revoke access: log out of wanderlog.com (invalidates all sessions), then re-capture
Contributing
Pull requests are welcome. Before submitting:
npm run build && npm run testFor changes to transport or tool code, also run:
npm run test:integrationDisclaimer
wanderlog-mcp is an unofficial third-party tool, not affiliated with or endorsed by Wanderlog. It works by calling Wanderlog's private web-client API, which may change without notice. Use at your own risk.
License
MIT — see LICENSE
Made by shaikhspeare
This server cannot be deployed
Maintenance
Related MCP Connectors
Read and update your Everway trips and itineraries from any MCP-compatible AI assistant.
- AwayfolkOAuthapp.awayfolk
Shared trip planner for Claude and ChatGPT: ideas, days, bookings and packing for the whole party.
Travel tools for AI agents: plan and edit real trips, search stays and tours, import travel videos.
- TravolpOAuthcom.travolp
Travel planner: create, edit, and explore trip itineraries from your Travolp AI assistant.
Related MCP Servers
- AlicenseNot gradedqualityAmaintenanceEnables MCP-compatible agents to view, create, and edit Wanderlog trip itineraries through conversation, including places, notes, hotels, transit, checklists, expenses, guides, and shareable links.171 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables Claude or any MCP-compatible agent to view and build complete Wanderlog trip itineraries through conversation, from creating a trip and adding places, notes, hotels, transit legs, car rentals, checklists, and expenses to renaming days, reorganizing blocks, and adjusting dates. It also searches real-world places, user-written travel guides, and hotel aggregator deals, then returns shareable trip links.171 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables Claude or any MCP-compatible agent to view and build Wanderlog trip itineraries through conversation, including places, notes, hotels, transit, car rentals, checklists, expenses, and guides.171 npmMIT
- AlicenseNot gradedqualityAmaintenanceEnables Claude or any MCP-compatible agent to view and build Wanderlog trip itineraries through conversation, including places, notes, hotels, transit, checklists, expenses, and guides.171 npmMIT