Price gate
Booking runs only with the exact expected total. One cent of drift and it fails closed: no checkout, no charge.
book d860398a --expect-total 3931.21
PRICE_CHANGED → no checkout created/agents · Voyagier for AI agents
Agents plan. You approve the checkout.
Voyagier is an IATAN-accredited host agency. Its booking engine is now a CLI and an MCP server, and the trip carries end to end: plan, traveler details, loyalty numbers, verified total, checkout.
Condensed from a recorded session. Read the full story →
npm @voyagier/cli · MCP server built in · Works with Claude Desktop, Cursor, OpenClaw · MIT-licensed skill
Why this exists
Software is collapsing into the agent loop. Booking a trip is exactly the kind of work agents are built for: comparing hundreds of fares, juggling dates and traveler details, verifying totals. What was missing was a way to finish the job. Voyagier is the first booking rail built agent-first: real inventory, real fulfillment, structured for machines.
The same inventory our human advisors book from, live from connected suppliers. Not an affiliate feed.
Deterministic flags, structured JSON, verifiable totals: the CLI and MCP server give your agent everything it needs to book with confidence.
Booking runs only with the exact expected total. One cent of drift and it fails closed: no checkout, no charge.
book d860398a --expect-total 3931.21
PRICE_CHANGED → no checkout createdPreview blockers, readiness, and the exact total before anything touches a card. One status call tells the agent what's next.
book d860398a --dry-run --json
0 blockers · total 3931.21Hotel names, reviews, and fare rules arrive as supplier text. The pipeline marks every byte of it as data, never as instructions to your agent.
"hotel_name": <supplier text>
→ data, never instructionsOut of scope by design: the CLI never stores card numbers, never skips the approval step, and never books without the exact expected total.
voyagier plan-tripOne trip, one ID. Every later call hangs off it.
voyagier search flightsAsync by design. The CLI polls so your agent doesn't have to.
voyagier selectOptions are IDs with structured fares. No DOM, nothing to re-parse.
voyagier book --expect-totalFails closed on price drift. A human approves the checkout.
Advisors and their clients have been booking on these rails for years. We're opening them to agents in cohorts, deliberately, because bookings move money.
Install the CLI, or point any MCP client at it. Your agent takes it from there.
You'll need an invited account to authenticate: request access above.
npm i -g @voyagier/cli
voyagier auth login{
"mcpServers": {
"voyagier": {
"command": "npx",
"args": ["-y", "@voyagier/cli", "mcp"],
"env": { "VOYAGIER_TOKEN": "<your-token>" }
}
}
}openclaw skills install voyagier-cliGet a token at travel.voyagier.com → Settings → Personal Access Tokens.
Install once. Your agent searches, prices, and holds the trip; the traveler taps approve.