Get up to €50 off your stay

trip1 for AI agents

Book hotels from your agent

trip1 exposes hotel search, rates, and booking as MCP tools. Roughly 3 million properties in 200+ countries, paid in USDC on Base through x402. Settlement happens inside the same HTTP request the agent already made.

Install through the Claude Desktop UI:

  1. Open Settings → Customize → Plugins.
  2. Click Add marketplace and enter trivial-corp/agents.
  3. Find trip1 in the marketplace list and click Install.

Exact steps differ between Pro, Max, Team, and Enterprise. Anthropic's connector setup guide covers each plan.

Paste into any Claude Code session. Installs the MCP server and the hotel-booking skill together.

/plugin marketplace add trivial-corp/agents
/plugin install trip1@trivial-corp/agents

Requires Pro, Team, Enterprise, or Edu (Developer Mode).

  1. Open Settings → Apps & Connectors → Advanced settings and enable Developer Mode.
  2. Back under Apps & Connectors, click Add new connector.
  3. Name trip1, paste the URL below, set Auth to None.
https://trip1.com/api/mcp

OpenAI MCP docs.

Any client that speaks remote MCP (Cursor, Codex CLI, Gemini CLI, Cowork, and so on) accepts this config:

mcp.json
{
  "mcpServers": {
    "trip1": {
      "type": "http",
      "url": "https://trip1.com/api/mcp"
    }
  }
}
The flow

From search to a confirmed booking

The agent runs every step itself, from the first search to the supplier's reservation reference.

Hotels
3M+ properties
Coverage
200+ countries
Settlement
USDC on Base, ~2s
trip1 MCP demo
  1. Search

    Agent queries hotels by destination and dates (occupancy is fixed at 2 adults).

  2. Compare

    Pulls rooms, rates, and live availability for a chosen hotel.

  3. Book

    Creates the reservation with guest details and a rate ID.

  4. Pay

    Signs a USDC transfer on Base via x402. The facilitator submits it and confirms settlement, usually in about two seconds.

  5. Confirm

    Polls the order until the supplier returns a reservation reference.

Tools

Four tools, called in order

Every tool ships with a full JSON schema, read/write annotations, and a description the agent reads before calling it. No guesswork.

search_hotels

Look up hotels for a destination and date range. Sort by price, rating, or distance to the search center.

get_hotel_details

Fetch room types, nightly rates, cancellation terms, and live availability for one hotel.

purchase_hotel

Create a reservation with guest details and a rate ID from get_hotel_details. Returns the x402 challenge, or a CoinGate URL as a fallback.

get_order_details

Fetch an order by ID. Poll after paying; the supplier reference appears once the booking clears.

Prompts the skill handles end to end

Paste any of these into a session that has trip1 installed. The agent searches, compares rates, collects guest details, confirms with you, and settles the payment on its own.

  • Find me a hotel in Barcelona for May 30 to 31.

  • What's the cheapest hotel near Bairro Alto in Lisbon this weekend?

  • Three nights in Shibuya starting Friday. Pick something well-reviewed and book it.

  • Check the Barcelona booking. Poll until the supplier reference comes through.

Payment

Agents pay over x402

x402 is the open protocol for agentic payments. It revives HTTP 402 for programmatic use: when the agent calls purchase_hotel, trip1 responds with a payment challenge; the agent signs a USDC authorization on Base and retries. A facilitator submits the transfer, and the booking continues as soon as it clears. The agent handles everything on its own, with no wallet UI to click through.

The agent needs an x402-capable wallet to pay on its own. The simplest option is Coinbase Payments MCP, loaded alongside trip1:

npx @coinbase/payments-mcp

Without a payments MCP attached, purchase_hotel returns a CoinGate URL instead. You can finish the payment yourself in a browser, with any of 120+ cryptocurrencies, including USDC.

Skill

A skill ships with the plugin

The MCP server ships tools. The skill ships judgment: when to fire, which tool to call next, how to confirm booking details with the user, how to recover when a rate drops between search and checkout. The Claude Desktop and Claude Code installs above bundle the skill automatically.

For clients that read the universal SKILL.md format (Cursor, Codex CLI, Gemini CLI), add it on its own:

npx skills add trivial-corp/agents

ChatGPT and other remote-MCP-only surfaces don't load SKILL.md. The tool descriptions on the server carry enough intent on their own.

In your browser

WebMCP: tools on trip1.com itself

WebMCP lets a web page hand an agent in the browser a set of described tools. trip1.com registers them through document.modelContext, so the agent searches, reads rates, guides and help, saves hotels and opens checkout as the person using the page, instead of guessing at buttons. The tools change with the page, like the page itself.

It sits alongside the MCP server above rather than replacing it. The MCP server is for agents that work outside a browser and pay over x402. WebMCP runs inside the user's own session, and paying is always the user's step on the checkout page.

Experimental

Chrome is testing WebMCP in an origin trial (Chrome 149 to 156) that trip1.com is enrolled in, and the standard may still change.

Try it

  1. Install a WebMCP agent extension such as the Model Context Tool Inspector.
  2. The Inspector reads Chrome's own WebMCP, which it needs switched on: in Chrome 150 or later, open chrome://flags, set WebMCP for testing to Enabled and relaunch. Extensions that bring their own WebMCP skip this.
  3. Open trip1.com and ask the agent to plan a stay.

The tools, page by page

read-only

Reads the page and changes nothing.

changes the page

Navigates or edits the search, as a click would.

consequential

Acts for the user: holds rooms or edits their saved list. Paying stays the user's step.

get_page_contextread-only

Where the user is, sign-in state, currency, and the tools this page offers.

navigate_tochanges the page

Open a trip1 section.

search_hotelschanges the page

Search by destination, dates, rooms and guests, and open the results.

find_articlesread-only

Travel guides and blog posts, newest first, by destination or topic.

open_articlechanges the page

Open a guide or blog post.

search_help_articlesread-only

Search the help centre: booking, crypto payments, cancellations.

get_help_articleread-only

A help article as plain text.

get_account_statusread-only

Whether the user is signed in, and nothing about who they are.

open_sign_inchanges the page

Open the sign-in dialog. The user signs in themselves; the agent never handles credentials.

get_search_resultsread-only

The hotels on the page with live prices for the whole stay and coordinates, paged with offset.

get_available_filtersread-only

The filters this search can be refined by, including its price range.

refine_searchchanges the page

Change stars, amenities, price, sort, radius, dates or guests.

open_hotelchanges the page

Open a hotel from the results, or any trip1 hotel by its slug.

get_hotel_detailsread-only

Description, location, amenities and policies.

get_hotel_reviewsread-only

Guest reviews, newest first, with the average score.

check_hotel_availabilitychanges the page

Run a live availability search for other dates or guests.

save_hotelconsequential

Add the hotel to the user's saved list, or remove it. Needs the user signed in.

get_room_ratesread-only

Every bookable room with board, cancellation terms and the stay price.

select_ratesconsequential

Hold the chosen rooms and open checkout. Nothing is charged.

get_checkout_summaryread-only

Hotel, dates, rooms, cancellation terms, total, and what is left. The user accepts the terms and pays.

get_bookingsread-only

The user's bookings: reference, hotel, dates, status and total. No guest details.

open_bookingchanges the page

Open a booking by its reference.

get_booking_detailsread-only

Rooms, status, cancellation terms and the refund estimate. Cancelling stays with the user.

get_articleread-only

The article as plain text: dates, sections, the hotels it links to, and its FAQ.

open_hotelchanges the page

Open a hotel the article links to.

save_travel_guideconsequential

Travel guides only: add the guide to the user's saved list, or remove it. Needs the user signed in.

find_tsa_airportsread-only

Find airports by code, city or alias and get canonical airport links.

get_tsa_wait_timesread-only

Cached waits with live/estimated labels, source timestamps, checkpoint guidance and FAQs.

How WebMCP works on trip1, with a real trip planned by Gemini through the Inspector.

Questions that come up

trip1 is crypto-native, so there is always a wallet somewhere in the flow. As a human, CoinGate gives you a hosted checkout URL where you pay with any of 120+ cryptocurrencies, including USDC. Agents pay on their own over x402 when an x402-capable wallet MCP (like Coinbase Payments MCP) is loaded alongside trip1.

trip1 returns an explicit "rate no longer available" error. The skill instructs the agent to rerun search_hotels and get_hotel_details with fresh rate IDs. It never auto-substitutes silently.

No. trip1 is a non-custodial merchant endpoint. x402 transfers settle on-chain through a facilitator the agent picks. CoinGate handles the browser-based flow and trip1 never sees card or wallet details.

Streamable HTTP, spec version 2025-06-18, stateless mode. Works with every modern MCP client (Claude Desktop, Claude Code, ChatGPT, Cursor, Codex CLI, Gemini CLI).

Cancellation depends on the rate. get_hotel_details returns each rate's cancellation terms before you book, and the skill flags non-refundable rates explicitly. For post-booking changes, contact trip1 support with the booking reference.

trip1 rate-limits by IP and by signed session. For agents running at scale, contact us before launching so we can bump the quota.

Crypto checkout, now for agents

trip1 has taken crypto payments from humans since 2025. The MCP server just lets an agent do the same thing.