DocumentationMCPCLI

Get started

  • Introduction
  • Quickstart
  • Installation

Reference

  • Response schemas
  • Errors & limits

Reference

Errors & limits

The CLI and MCP tools share the same errors and limits.

Error format

Every error has error, a sentence you can show the user. Failures you can act on also carry a reason. The CLI prints errors to stderr:

{
  "error": "Too many rate requests",
  "exitCode": 4,
  "status": 429,
  "retryAfterSeconds": 42
}

MCP tools return isError: true with { status, error, reason, ... } as JSON text.

Error reasons

ReasonMeaning
already_booked409. The stay already has a paid or finished order. Includes agentOrderId, orderUrl and, when there is a payment session, statusUrl.
price_or_terms_changed409. The price went up or the terms changed when the booking was checked again. Includes changes. Get rates again.
rate_unavailable422. The rate expired, sold out or could not be verified, or roomId or ratePlanCode is wrong. Get rates again and pick from the result.
supplier_unavailable503 or 504. The hotel supplier could not be reached or timed out. Includes retryable: true; retry shortly.
refused422. Any other refusal, e.g. invalid guests, too many attempts, or a search that matched more than 30,000 hotels (with matched and maxMatches).

Status codes

StatusMeaning
400Invalid input, an unknown argument, or something that looks like a payment card number. Includes issues: [{ path, message }]; stays over 15 nights are rejected here.
401Not signed in, or the token was revoked or expired. CLI tokens expire after 90 days without use.
404Hotel not found.
409 / 422See the reason.
429Rate limited. Wait retryAfterSeconds and retry.
502The hotel supplier returned an unexpected error.
503 / 504The supplier is unavailable (reason: supplier_unavailable), sign-in could not be checked right now, or a booking hit a brief failure. Includes retryable: true; retry in a few seconds.
500Unexpected error.

CLI exit codes

CodeMeaning
0Success.
1Other error, including 404, 409, 422 and 5xx.
2Invalid arguments, locally or HTTP 400.
3Not signed in or token revoked (HTTP 401). stderr includes loginUrl.
4Rate limited (HTTP 429). stderr includes retryAfterSeconds.

Rate limits

Per account, shared by the CLI, MCP tools and fortrip.ai.

CallLimit
Search10 per minute
Hotel details30 per minute
Rates20 per minute
Booking20 per minute

Booking limits

LimitValue
Stay length1 to 15 nights. Check-in can't be in the past.
RoomsUp to 8 per booking.
AdultsUp to 8 per room.
ChildrenUp to 8 per room, ages 0–17.
Hotels per rates callUp to 15.
Search resultsUp to 50 per page, 100 pages.
Display currencyCNY or USD. Bookings charge their own currency, usually USD.
Guest namesLatin letters as on the passport, e.g. Müller → Mueller.
Card numbersRefused in contact details, guest names and special requests. The user pays only on the payment page.
Payment linkValid for about 3 hours 45 minutes. Call booking again for a new one.
Not supportedFlights, activities, and changing or cancelling a booking. Email info@fortrip.ai with the order link.
PreviousResponse schemas

On this page

  • Error format
  • Error reasons
  • Status codes
  • CLI exit codes
  • Rate limits
  • Booking limits
Fortrip

Opinionated trip planning, built for real itineraries.

Plan

  • AI Trip Planner
  • Validator
  • Transport
  • Stays

Company

  • Pricing
  • About
  • Team
  • Blog
  • Decision Optimization
  • Itinerary Selection
  • News

Resources

  • Explore Destinations
  • Brand Assets
  • Responsible Travel
  • vs ChatGPT
  • Best AI travel planner
  • FAQ

© 2026 FortripAI, Inc.

PrivacyTerms
info@fortrip.ai+1-650-272-16121111b South Governors Ave, Dover, DE 19904
Skip to main content
Fortrip Logo
HomeExplorePlanningPricing
CLIMCPDocs
Saved0