---
name: heytripp
description: Travel through Tripp (heytripp.com) over MCP. Search flights and hotels, compare dates and nearby airports, check whether a fare is normal, get bag fees, weather, directions, things to do and places to eat. With a full-access company key, also book flights and stays, watch prices, and read a traveler's trips and receipts. Use when a user asks about flights, hotels, fares, or a trip they are planning or have booked.
license: Proprietary. Use requires a Tripp partner key.
metadata:
  author: Tripp
  version: "2026-10-19"
  mcp: https://mcp.heytripp.com/partner/mcp
---

# Tripp for agents

Tripp is a remote MCP server. Your agent connects to it over HTTP and calls its tools.
Every answer is plain JSON. There are no cards and nothing is tied to a Tripp account.

## Connect

Address: `https://mcp.heytripp.com/partner/mcp`

Send two headers on every request:

```
Authorization: Bearer <your Tripp MCP key>
X-Tripp-Traveler: <your own id for the person you are helping>
```

The key comes from the Keys page of the Tripp partner dashboard at
`https://partners.heytripp.com/dashboard/keys`. A key is sandbox or live, and
search-only or full-access. The secret is shown once; keep it out of chat and
out of prompts.

A common shape for an MCP client config (check your framework's own format):

```json
{
  "mcpServers": {
    "heytripp": {
      "url": "https://mcp.heytripp.com/partner/mcp",
      "headers": {
        "Authorization": "Bearer <your Tripp MCP key>",
        "X-Tripp-Traveler": "<traveler id>"
      }
    }
  }
}
```

Without a valid key the address answers `401`. A bad traveler id answers `400`.

## One traveler per request

`X-Tripp-Traveler` (or `?traveler=` on the address) is your own stable id for
the person: 1 to 64 letters, digits, `_`, `.` or `-`. Use the same id for the
same person every time. Watches, trips, receipts and preferences belong to that
traveler under your company and never cross. Without the header the key acts as
the company itself.

## What every key can do

Search and facts, no account needed:

- Flights: `search_flights`, `find_cheapest_flight_dates`, `find_cheapest_week`,
  `compare_date_prices`, `compare_nearby_airports`, `is_this_a_normal_price`,
  `get_bag_fees`, `get_status_perks`
- Hotels: `search_hotels`, `get_hotel_facts`, `get_hotel_reviews`,
  `get_room_details`, `get_stay_details`
- Getting around: `drive_vs_fly`, `ground_transport_advice`, `get_directions`,
  `get_forecast`
- Things to do: `find_activities`, `find_restaurants`

## What a full-access key adds

- Booking: `book_flight`, `book_stay`, `cancel_booking`
- Price watches: `watch_flight_price`, `watch_stay_price`, `watch_trip_price`,
  `list_price_watches`, `update_price_watch`, `mute_price_watch`, `stop_price_watch`
- Trips and receipts: `list_trips`, `get_booking_status`, `get_receipt`,
  `get_trip_details`, `why_we_booked`
- Plans and preferences: `save_trip_plan`, `show_trip_plan`,
  `get_my_preferences`, `set_my_preferences`
- Support: `talk_to_a_person`, `ask_heytripp_support`, `what_did_you_send_me`

## Booking today: sandbox only

Booking runs on the test system of OEX, Tripp's payment partner. No real seat,
no real room, no charge. Every booking answer carries `"environment": "sandbox"`,
and a completed booking also says `"sandbox": true` and `"charged": false`.

A booking is paid from the company card saved in Billing at
`https://partners.heytripp.com/dashboard/billing`: one card per company, used by
every full-access key (OEX's own card form; the number never reaches Tripp). Until a card is saved, `book_flight` and `book_stay` answer
`"status": "payment_not_set_up"` with `"booked": false` and `"charged": false`.
Tell the user that plainly. Never say a booking was made unless the answer
says `"booked": true`, and never say money moved unless it says `"charged": true`.

If the card's bank asks for a security check, an agent cannot answer it:
`book_flight` and `book_stay` answer `"status": "card_needs_authentication"`,
nothing booked or charged. Tell the user their company needs to use another card.

Each key has a daily spend cap set on its Settings page. A booking that would
pass it answers `"status": "over_spend_cap"` before anything is held.

## Money: repeat the fields, add nothing

A cancel answer quotes OEX's `refund_amount`, `cancellation_fee`,
`refund_status`, `refund_to` and `refunded_by` exactly as sent. Say what those
fields say. `refund_to` names the payments the refund returns to;
`refunded_by` names who pays it back (`OEX` or `SUPPLIER`), not where it lands.
Do not say where a refund went unless `refund_to` says so, and never say
"back to the card".

## Alerts go to the company, not the traveler

A price watch or a booking change is posted to the company's webhook address,
set on the key, signed with the key's secret. Tripp never texts or emails a
company's traveler. When a watch is set, tell the user their company will let
them know.

## Limits

30 requests a minute per key. Over that you get `429`.

## Help

Email hello@heytripp.com and a person on the Tripp team answers.
Full docs: https://partners.heytripp.com/docs/mcp
