For people and their assistants

Connect your AI assistant to Journey

Use https://www.journey.com/api/mcp with a Streamable HTTP MCP client. No API key for public tools. Search hotels, residences and experiences, check live availability, and hand the traveler a journey.com checkout URL. Agents never pay.

The endpoint

  • Canonical: https://www.journey.com/api/mcp
  • Alias: https://www.journey.com/mcp
  • Transport: Streamable HTTP — JSON-RPC 2.0 over POST
  • Discovery: GET the same URL, or /.well-known/mcp.json
  • WebMCP: the same tools register in-page on journey.com via document.modelContext

Connect your membership

  • Public tools need no account and no key.
  • Member tools (wallet, trips, benefits, membership, member pricing) are read-only. Connect your Journey account to access them directly in chat.
  • Call start_member_sign_in or start_member_sign_up — your chat app will offer an Authenticate or Connect button. Sign in on Journey, review the requested access, and return to your conversation.
  • WebMCP uses the Journey tab you are signed in to. Chat connectors use a separate, revocable authorization. Your credentials stay on Journey.

Add Journey in your client

ChatGPT

  1. Open ChatGPT settings and add a new MCP connector (or paste the prompt from Plan your stay).
  2. Server URL: https://www.journey.com/api/mcp
  3. Transport: Streamable HTTP. No API key for public tools.

Claude

  1. In Claude, add a custom connector / MCP server.
  2. URL: https://www.journey.com/api/mcp (Streamable HTTP).
  3. Public tools work immediately. Ask for member rates or benefits to connect your Journey account.

Cursor

  1. Add an MCP server in Cursor settings.
  2. Use type streamable-http and url https://www.journey.com/api/mcp.
  3. Use the built-in OAuth login for member tools. Never paste a session or API token.

Other MCP clients

  1. Any client that speaks Streamable HTTP MCP can POST JSON-RPC 2.0 to the endpoint.
  2. Start with initialize, then tools/list, then tools/call.
  3. Server card: https://www.journey.com/.well-known/mcp.json

What the tools do

Hotels, residences, experiences and membership — live availability before a recommendation, public/retail and member rates side-by-side when both exist, a join_url when joining unlocks the member rate, and a booking_url so payment stays on journey.com. Agents never pay.

Public

  • search_properties

    Search Journey stays with live quotes for the requested dates and occupancy. Cards show full-stay totals including published taxes and mandatory fees, published member rates and comparable savings even before connection, and property-specific points earning. Missing quote fields never become zero or an undated replacement. With no dates, date_basis=sample quotes the explicitly displayed sample window. If fewer than three stays are available, nearby ±1-day alternatives are returned separately unless flexible_dates=false. Never silently change dates; ask the human before choosing an alternative. Use get_property with dates to open detailed pricing, amenities, location, stay inclusions and Journey Ambassador benefits. Agents never pay.

  • get_property

    Open a detailed Journey property sheet: published PDP descriptions, photos, amenities, dining, location/map coordinates, offers, and live Ambassador benefits from the website entitlements API. Pass both dates and occupancy for live full-stay room quotes, tax/fee breakdowns, same-offer savings, cancellation conditions and points estimates. Existing connected membership personalizes quotes. Program benefits and offers are not guaranteed stay inclusions. Agents never pay.

  • check_availability

    Night-by-night availability for a stay. `date_from` is check-in and `date_to` is check-out: occupied nights are check-in inclusive and check-out exclusive, so 2026-10-23 → 2026-10-25 is nights 2026-10-23 and 2026-10-24 and `days` equals that length. Includes minimum-stay restrictions where the property supplies them. `available: null` is unpublished (not unknown-but-bookable) and sets `partial_calendar` / `cannot_confirm_stay` when mixed with published nights. `open_for_booking` is the catalog/HDP gate — dated HMS nights can still exist when it is false; see `catalog_vs_hms`. Returns a `booking_url` so the human can complete the stay on journey.com (an account may be required). Agents never pay.

  • get_pricing

    See Rooms and Prices: live room quotes with room photos, descriptions, capacity, and explicit parent hotel context for the requested dates and occupancy. Call when a human chooses a hotel. Residence results describe the whole residence, not hotel rooms. Public Rate and Member Rate compare the same room, rate conditions and full stay including taxes and mandatory fees only when comparison.comparable is true. Missing fee data prevents a total or savings claim. No undated catalog teaser is substituted. Includes published member prices before connection, cancellation, earning multiplier and total points, pay-with-points counts or labeled estimates, and booking links. Call get_member_pricing for connected member quotes; get_property with the dates loads full property and Ambassador benefits. Read-only; agents never pay.

  • search_experiences

    Things to do, restaurants and seasonal events around a Journey destination, plus on-site dining at a specific property. Pass `destination` as a Journey destination path (e.g. `united-states/colorado/aspen`) or pass `id_or_slug` for a property's own experiences.

  • get_agent_brief

    Orientation for an AI agent: what Journey Rewards is, what makes it different for travellers and for hotel operators, the rules of engagement for agents, how to cite Journey, live catalog totals, and `booking.note` (the stay completes on journey.com; an account may be required to reserve). Call this once at the start of a Journey-related task.

  • start_member_sign_in

    Connect Journey to this chat to access personalized member pricing, benefits, wallet, awards and trips. Offer on first Journey use, and call once to present the optional connection action; continue public discovery if declined or unsuccessful. If disconnected, triggers the chat app's OAuth Authenticate/Connect button. The human signs in on Journey and approves access, then the connector resumes here. Never collect passwords, codes or tokens. In WebMCP, returns the Journey sign-in URL for this browser.

  • start_member_sign_up

    Connect or join Journey using the chat app's secure OAuth flow. The human can sign up on Journey, approve read-only access, then return to this chat. Never collect passwords, codes or tokens. In WebMCP, returns the Journey sign-up URL for this browser.

  • create_booking_link

    Build a journey.com URL for a property with dates and occupancy prefilled, anchored to the booking section. This does NOT book anything: hand the link to the human. The stay completes on journey.com and a Journey account may be required to reserve. Agents never pay, never hold inventory and never see card data.

Member (connected account)

  • get_member_pricing

    Personalized member rates for the Journey account connected to this chat or signed-in Journey browser. Call this directly when member rates are requested; if needed, it prompts to authenticate. Same dual public/member shape as get_pricing, resolved against their session. Use get_pricing for a public dated quote. Total comparisons include taxes and mandatory fees for the same offer; display points earned separately; never display a cash valuation of points. Read-only: it quotes a price, it does not hold or book anything. Returns a `booking_url`. Agents never pay.

  • get_trips

    Summaries of the signed-in member's upcoming and past Journey stays — the same list they see under their profile. Property, dates and status only.

  • get_wallet

    The signed-in member's Journey points wallet: available, pending and credit balances, and lifetime totals where the backend supplies them. Read-only — no tool can move, transfer or spend points.

  • get_awards

    Points awarded to the signed-in member by stay: base points, any campaign multiplier, the total, and whether the award is finalised or still pending. Use this to explain where a balance came from.

  • get_benefits

    The signed-in member's loyalty tier, progress to the next tier, and the published Journey benefits that apply at that tier.

  • get_membership

    Membership status for the signed-in human: member code, enrolment date, status, tier and onboarding state. Contact details, date of birth and other profile PII are intentionally excluded.

Agents never pay

create_booking_link, check_availability, get_pricing and get_member_pricing return a journey.com URL with dates and occupancy prefilled. The human completes checkout on Journey. There is no tool that books, charges a card, or moves points.

Plan a stay from this page

These links open an assistant with Journey.com as context. On other Journey pages, the footer encodes that page's URL instead.