Voyagier MCP server
com.voyagier/cli·v2.14.0·1 starsBook real travel from your agent — flights, hotels & activities behind a price-gated checkout.
1 stars71 downloads/wk
Reviews
Write oneNobody has reviewed Voyagier yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Voyagier tools (15, 3 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
add_travellerAdd a traveller to a trip plan. Travellers are required before search. Gender and date of birth are required at flight checkout; passport data hard-gates international reservations (set those via the CLI travellers update later). Loyalty programs are applied at checkout best-effort — a booking never fails because of them.
agent_docsPrint the full Voyagier agent reference (AGENT.md) as markdown — the canonical integration guide for the compose/close loop, error codes, and quirks.
bookwrite actionCreate a real Stripe checkout for the bookable items. REQUIRES expect_total — this is the price hard-gate: the checkout is created only if the chargeable subtotal equals expect_total exactly (cents-compared), else it fails closed with PRICE_CHANGED and NO checkout is created. Get the current subtotal from book_dry_run first. Never retry a successful book (unpaid sessions are invisible and a retry
book_dry_runwrite actionPreview a checkout WITHOUT creating one and WITHOUT needing a price gate: returns the chargeable subtotal, blockers, existing checkouts, and the next step. Optionally pass expect_total to also get a gate verdict (data.gate.{wouldPass,failReason}) — pre-verify without risking PRICE_CHANGED. This is the checkout truth; run it before book.
booking_statusShow payment + booking status for past checkouts on a plan (post-payment confirmation lookup). Booking-record amounts are raw CENTS.
create_clientwrite actionCreate or return an existing advisor CRM client by email (idempotent upsert). A trip plan requires a clientId. Returns { client, ok, created }.
doctorSelf-check the CLI environment (auth, schema reachability, local state, version) before doing real work. Run this first when you hit an unfamiliar error.
get_selection_optionsRead a selection's options. Search is ASYNC: when a search returns optionCount 0 the inventory fetch is still running — with wait=true (default) this polls with backoff until the status is terminal (READY / NO_RESULTS / AWAITING_INPUT / FETCH_ERROR), then returns the options to select from.
plan_statusONE call answering 'what's left before this plan can book?'. Switch on data.readiness: BOOKED | READY_TO_BOOK | BLOCKED (act on data.blockers[]/nextSteps[]) | IN_PROGRESS (system is working — poll, don't act). book_dry_run is the checkout truth on any contradiction.
plan_tripScaffold a trip plan: creates the plan + a default goal graph (a round-trip + hotel TEMPLATE) and returns { tripPlanId, travellerIds, nextSteps }. It does NOT search or select — follow nextSteps to compose. Prune goals the brief doesn't need with the shape flags: one_way (drops the Return Flights goal), flight_only (drops the hotel goal), hotel_only (drops ALL flight goals). Omitting return alone
quoteProduce the advisor offer snapshot for a plan: items, chargeableTotal, and a machine-readable acceptance block { command, itemIds, expectedTotal }. quote's chargeableTotal equals the book price gate, so the acceptance total can never fail its own gate on an unchanged cart.
search_activitiesSearch bookable activities/experiences against the plan's Activity goal. Returns a compact envelope { selectionId, optionCount, topOptions[≤10] }. If optionCount is 0 the async fetch is still running — poll get_selection_options with wait, then select.
search_flightsSearch flights against the plan's Flight goal (REUSES the goal's selection — does not create a new one). Returns a compact envelope { selectionId, optionCount, topOptions[≤10] } (round trips also return returnSelectionId). If optionCount is 0 the async fetch is still running — poll get_selection_options with wait. Round trip: pick BOTH legs; the SAME optionId appears in both legs' lists (leg-mirro
search_hotelsSearch hotels against the plan's Hotel goal. Returns a compact envelope { selectionId, optionCount, topOptions[≤10] }. Prices are STAY TOTALS, not nightly. If optionCount is 0 the async fetch is still running — poll get_selection_options with wait, then select.
select_optionChoose an option on a selection by explicit selection + option id (defaults to choosing for all travellers). With wait=true (default), after the pick succeeds it polls until the pick is reflected server-side AND readiness settles, then returns a plan-status snapshot. A timed-out wait never means the pick failed. Round trip: call once per leg — the identical optionId on both legs is intended.
Public scan report
scanner v0.1.9 · 2026-09-24 · same rubric, same numbers if you re-run it
- Code scan63 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitystatic API keys via environment variables6/15
- Maintenancelast push 0 days ago15/15
- Maintainer identitynamespace and repository owner differ; GitHub account older than a year; website matches verified namespace8/10
How Voyagier compares
Against every graded AI and agents MCP server, from our own scans and uptime checks. Updated after each scan run.
- Safety score
- 83/100
- higher than 68% of 4,460 AI and agents servers
- Tools
- 15
- the typical AI and agents server has 6
- Tools that change things
- 20%
- typical: 0%. Fewer write tools means less an agent can break
- GitHub stars
- 1
- more than 50% of 2,711 AI and agents servers
- Downloads a week
- 71
- more than 55% of 1,538 AI and agents servers with a package
What its tools let an agent do: 10 read · 5 create
Install Voyagier in Claude Code, Cursor or VS Code
Runs npx -y @voyagier/cli on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add cli -- npx -y @voyagier/cli
What the publisher says
From the Voyagier repository's README, as published. We do not edit it. Read it on GitHub
@voyagier/cli
Plan, price and book real trips from your terminal. Everything syncs to voyagier.com.
The CLI is a shell for the Voyagier MCP server: one command per tool. Every trip-planning command is one MCP tool — voyagier -- — built at runtime from the server's tool list at https://mcp.voyagier.com/api/mcp. The same tools power claude.ai, Claude Desktop and every other MCP client, so there is one implementation of every verb and a tool published on the server shows up in your terminal without an upgrade. For hosts that only speak stdio, voyagier mcp is a proxy for the same server.
npm install -g voyagier # or the canonical package: @voyagier/cli
voyagier auth login # browser flow; keeps the token out of shell history
voyagier doctor # credentials, MCP connection, tool count, version
voyagier mcp install claude-code # point an MCP client at the hosted server (also: cursor, claude-desktop)voyagier is a convenience alias that tracks the latest compatible @voyagier/cli release. Pinning an exact version? Use the canonical package: npm install -g @voyagier/cli@.
No install permissions (sandboxed agent, CI)? Every command works zero-install via npx:
VOYAGIER_TOKEN=<your-token> npx @voyagier/cli doctor --jsonQuick Start
A trip plan is a goal graph: the plan ships with goals (flights, hotel, dates, destination, travellers) and you compose the trip by exploring inventory, promoting a search onto a goal, and selecting options. Searches are asynchronous — poll until the status is terminal.
# 1) Find or create the client
voyagier list_clients --query "Doe" --json
voyagier create_client --name "Doe Family" --client_type Individual --email "doe@example.com" --json
# 2) Resolve the destination, then scaffold the plan with its party
voyagier search_destinations --query "Lisbon" --json
voyagier create_plan --client_id <CLIENT_ID> --title "Doe — Lisbon" \
--travel_destination_id <DESTINATION_ID> --start_date 2026-11-20 --end_date 2026-11-27 \
--travellers '[{"first_name":"Jane","last_name":"Doe","type":"Adult"}]' --json
# 3) Explore flights (no plan is touched), poll, then promote the result onto the plan's goal
voyagier search_flights --from BWI --to LIS --date 2026-11-20 --return 2026-11-27
voyagier get_search_status --search_id <SEARCH_ID>
voyagier promote_search --plan_id <PLAN_ID> --search_id <SEARCH_ID> --goal_id <GOAL_ID> --json
# 4) Options → pick
voyagier get_options --selection_id <SELECTION_ID>
voyagier select_option --option_id <OPTION_ID> --json
# 5) Readiness, quote, book at exactly the quoted price
voyagier get_plan_status --plan_id <PLAN_ID>
voyagier get_plan_quote --plan_id <PLAN_ID>
voyagier book_plan --plan_id <PLAN_ID> --expect_total_cents <CENTSvoyagier --help prints the server's description of the tool and one flag per input, with types and required-ness.
How the command surface works
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Voyagier: common questions
- Is Voyagier MCP server safe?
- Mostly: it is graded B (83/100). Read the Voyagier safety report
- How do I install Voyagier?
- It runs on your machine. Copy the Claude Code, Cursor, VS Code or Claude Desktop config from the install section.
- Does Voyagier need an API key?
- Yes. The registry entry asks for
VOYAGIER_TOKEN. - Is Voyagier maintained?
- The last commit was 41 days ago (2026-09-24). The latest release is v2.14.0.
- What can I use instead of Voyagier?
- Servers from other publishers that do the same job: mcptoon MCP server, yutu MCP server and REA MCP server.
- How does Voyagier compare with other AI and agents MCP servers?
- safety score 83/100 (higher than 68% of 4,460 AI and agents servers); tools 15 (the typical AI and agents server has 6); tools that change things 20% (typical: 0%. Fewer write tools means less an agent can break). Full comparison.
Alternatives to Voyagier
Same job from other publishers: the closest match first, then the best rated.
- mcptoonMCP tools + agent skills in one zero-dependency CLI: 71,929 -> 581 tokens (-99.2%, measured).not reviewedEstablishedA
- yutuCLI, MCP server, and AI agent to automate YouTube workflowsnot reviewedEstablishedA
- REAReverse engineer anything from your terminal or agent with one CLI and MCP server.not reviewedEstablishedA
- Watch CLIHand any social video to your AI agent — frames + transcript bundled. MCP server for watch-cli.not reviewedEstablishedB