Tineo
Server Details
Tineo exposes an MCP server at https://api.tineo.ai/mcp for authorized tool use.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- Tineo
- Claude
- –
TDQS
Scored across 109 tools
Most tools target a distinct resource+action, but several clusters blur together: ten cruise_* tools carry near-identical copy-pasted descriptions, library_list_item_add vs library_list_items_add differ only by plural, and discover overlaps with search_hotels/search_attractions/search_tours/places_search. Flight selection is also spread across flight_quickadd, flight_quickadd_lookup, flight_route_lookup and segment_create, forcing the agent to reason about intent rather than tool name.
The dominant pattern is noun_verb snake_case (trip_create, segment_update, friend_request_accept), but it breaks in many places: bare verbs (discover, fetch, search, trips_hub, tineo_ping), get_-prefixed readers (get_routes, get_trip_weather, get_travel_stats) mixed with bare readers (trip_details, segment_details, settings_read), and inconsistent singular/plural between checklist_item_update and checklist_items_add, and library_list_item_add vs library_list_items_add.
109 tools is far beyond a reasonable surface; whole sub-domains (cruise = 10 tools, library lists = 9, checklists = 5, friends = 5) are decomposed per-operation rather than consolidated. The domain is broad but each granular tool adds selection cost, and several could be folded into single tools with an action parameter.
Coverage is unusually thorough: full CRUD plus restore for trips, segments, cities, expenses, library lists, checklists, cruises, travelers, sharing and settings, along with search/fetch, booking links, weather and flight status. Minor gaps remain, such as no delete for expenses and no create/upload path for travel documents (only audit and reassign), but agents can work around these.
Available Tools
109 toolsaffiliate_program_catalogAffiliate Program CatalogARead-onlyIdempotentInspect
Return Tineo's travel-affiliate catalog with truthful implementation status. Use only for questions about supported affiliate programs, never for a link to a specific or previously searched travel result. With generic search intent, validated generic adapters may include safe Tineo-owned CTA links. A card with bookingLink=null is metadata only, not a booking handoff or live inventory.
Inputs: limit, locale, endDate, trip_id, +7 more.
assistant_airbnb_search_tripSearch Airbnbs for a TripARead-onlyIdempotentInspect
Search Airbnb listings for an existing Tineo trip. Derives location and dates from the trip; the model may override. location must be a city or area, not a whole country (ask the user which city). Each card has distance_km from the requested place and in_requested_area; listings outside the area come last. If none are in the area, say so with their distances and do NOT re-search the same place with a reworded location string. Amenity filtering only via the amenities enum; there is NO keyword/free-text filter, so tell the user anything else can't be filtered. If structuredContent.status is 'unavailable', do NOT retry the same search: share structuredContent.fallback_search_url (a prefilled airbnb.com search), offer a hotel search, or a support ticket.
Inputs: trip_id (required), adults, infants, check_in, +12 more.
assistant_airbnb_search_userSearch AirbnbsARead-onlyIdempotentInspect
Search Airbnb listings by location and dates. Use when the user is not asking about a specific trip in Tineo. Returns a slim list of cards (title, type, rating, host, URL). location must be a city or area, not a whole country (ask the user which city). Each card has distance_km from the requested place and in_requested_area; listings outside the area come last. If none are in the area, say so with their distances and do NOT re-search the same place with a reworded location string. Amenity filtering only via the amenities enum; there is NO keyword/free-text filter, so tell the user anything else can't be filtered. If structuredContent.status is 'unavailable', do NOT retry the same search: share structuredContent.fallback_search_url (a prefilled airbnb.com search), offer a hotel search, or a support ticket.
Inputs: check_in (required), location (required), check_out (required), adults, +11 more.
audit_travel_documentsAudit Travel DocumentsARead-onlyIdempotentInspect
Audit expiration dates of the user's travel documents (passports, visas, insurance) and flag expired, expiring soon (<180 days), or expiring before trip end.
Inputs: trip_id.
batch_segment_createCreate itinerary itemsAInspect
Create multiple segments in a trip in one call. Put each item's values in fields, named as segment_get_schema returns them (Activity activityType is one of: tour, dining, show, spa, class, sports, sightseeing, other). Each item succeeds or fails on its own: valid items are created and failed items are returned by index with the reason, so resend only the failed items. Max 50 segments per call; split larger itineraries into several calls. Segment dates must fall within the parent trip dates. Dates up to 1 day outside the trip extend it, with a warning; further out, call trip_update first. For an Activity, Lodging, EventTicket or Parking at a real place, call places_search first and put the result's place ID in fields.placeId: Tineo links that place (map pin and coordinates) and fills a missing name, address, phone and website. Never invent a time: if the user has not given or chosen one, ask, or send the date only (YYYY-MM-DD) in startDateTime and Tineo stores it as time not set. Send a clock time only when the user stated it or a booking shows it. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification. Cruise/CruiseDay generic writes require the dedicated cruise tools; their schemas and full reads remain available.
Inputs: trip_id (required), segments (required).
car_rental_booking_linksCar Rental Booking LinksARead-onlyIdempotentInspect
Return DiscoverCars and Expedia affiliate car-rental search cards for a pickup city or airport and dates. These are provider search handoffs only, not live availability, prices, vehicles, or confirmed bookings.
Inputs: pickup_date (required), pickup_location (required), locale, trip_id, +2 more.
checklist_items_addAdd Checklist ItemsAInspect
Add one or more tasks to the end of an existing trip checklist. Get checklist_id from trip_checklists. Each item has text and an optional category (the section heading it appears under). A checklist holds at most 100 tasks; tasks are a flat list with no subtasks. Calling this twice adds the tasks twice. To create a new checklist use segment_create (type Note, isChecklist true). Never show IDs to users.
Inputs: items (required), checklist_id (required).
checklist_items_removeRemove Checklist ItemsADestructiveIdempotentInspect
Permanently remove one or more tasks from a trip checklist. Get checklist_id and the item IDs from trip_checklists. Confirm with the user before removing. To delete a whole checklist use segment_delete. Never show IDs to users.
Inputs: item_ids (required), checklist_id (required).
checklist_items_reorderReorder Checklist ItemsADestructiveIdempotentInspect
Put a trip checklist's tasks in a new order. Get checklist_id and the item IDs from trip_checklists, then send order listing every task ID exactly once in the new order. The app groups tasks under their section headings in first-appearance order. Never show IDs to users.
Inputs: order (required), checklist_id (required).
checklist_item_updateUpdate Checklist ItemADestructiveIdempotentInspect
Change one task on a trip checklist: its text, its category (section heading), or whether it is done. Get checklist_id and item_id from trip_checklists. Send only what changes. checked true marks the task done for the current user (on a shared trip it shows complete once every traveler ticks it); checked false unticks it. category "" removes the task from its section. Never show IDs to users.
Inputs: item_id (required), checklist_id (required), text, checked, +1 more.
cities_searchSearch City CatalogARead-onlyIdempotentInspect
Search the saved city catalog by city name or alias before adding a city to a trip. Matches whole names, name prefixes and word starts (not text inside a word), exact matches first. Pass country to limit results to one country. An empty result does not mean the place does not exist: trip_city_add can add a real town or island that is missing from the catalog when you pass city_name and country. Returns stored city IDs and location details. Search results do not add or select a city.
Inputs: query (required), limit, country.
cruise_createcruise createAIdempotentInspect
Preview and commit cruise create operations atomically. First call cruise_get for expectedVersion. Omit confirmationToken to preview, show the changes to the user, then repeat the unchanged request with its token only after the user approves. Reuse idempotencyKey for retries. Omitting a field preserves it; null clears nullable fields. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification.
Inputs: request (required), confirmationToken. Returns: result, status, success, contractVersion
cruise_day_createcruise day createAIdempotentInspect
Preview and commit cruise day create operations atomically. First call cruise_get for expectedVersion. Omit confirmationToken to preview, show the changes to the user, then repeat the unchanged request with its token only after the user approves. Reuse idempotencyKey for retries. Omitting a field preserves it; null clears nullable fields. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification.
Inputs: request (required), confirmationToken. Returns: result, status, success, contractVersion
cruise_day_deletecruise day deleteADestructiveIdempotentInspect
Preview and commit cruise day delete operations atomically. First call cruise_get for expectedVersion. Omit confirmationToken to preview, show the changes to the user, then repeat the unchanged request with its token only after the user approves. Reuse idempotencyKey for retries. Omitting a field preserves it; null clears nullable fields. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification.
Inputs: request (required), confirmationToken. Returns: result, status, success, contractVersion
cruise_day_restorecruise day restoreADestructiveIdempotentInspect
Preview and commit cruise day restore operations atomically. First call cruise_get for expectedVersion. Omit confirmationToken to preview, show the changes to the user, then repeat the unchanged request with its token only after the user approves. Reuse idempotencyKey for retries. Omitting a field preserves it; null clears nullable fields. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification.
Inputs: request (required), confirmationToken. Returns: result, status, success, contractVersion
cruise_day_updatecruise day updateADestructiveIdempotentInspect
Preview and commit cruise day update operations atomically. First call cruise_get for expectedVersion. Omit confirmationToken to preview, show the changes to the user, then repeat the unchanged request with its token only after the user approves. Reuse idempotencyKey for retries. Omitting a field preserves it; null clears nullable fields. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification.
Inputs: request (required), confirmationToken. Returns: result, status, success, contractVersion
cruise_deletecruise deleteADestructiveIdempotentInspect
Preview and commit cruise delete operations atomically. First call cruise_get for expectedVersion. Omit confirmationToken to preview, show the changes to the user, then repeat the unchanged request with its token only after the user approves. Reuse idempotencyKey for retries. Omitting a field preserves it; null clears nullable fields. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification.
Inputs: request (required), confirmationToken. Returns: result, status, success, contractVersion
cruise_getGet commercial cruiseARead-onlyIdempotentInspect
Read the complete commercial Cruise and linked CruiseDay fields, including soft-deleted items and version. Omit cruiseId to read the trip version before creation. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification.
Inputs: tripId (required), cruiseId. Returns: result, status, success, contractVersion
cruise_reordercruise reorderADestructiveIdempotentInspect
Preview and commit cruise reorder operations atomically. First call cruise_get for expectedVersion. Omit confirmationToken to preview, show the changes to the user, then repeat the unchanged request with its token only after the user approves. Reuse idempotencyKey for retries. Omitting a field preserves it; null clears nullable fields. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification.
Inputs: request (required), confirmationToken. Returns: result, status, success, contractVersion
cruise_restorecruise restoreADestructiveIdempotentInspect
Preview and commit cruise restore operations atomically. First call cruise_get for expectedVersion. Omit confirmationToken to preview, show the changes to the user, then repeat the unchanged request with its token only after the user approves. Reuse idempotencyKey for retries. Omitting a field preserves it; null clears nullable fields. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification.
Inputs: request (required), confirmationToken. Returns: result, status, success, contractVersion
cruise_updatecruise updateADestructiveIdempotentInspect
Preview and commit cruise update operations atomically. First call cruise_get for expectedVersion. Omit confirmationToken to preview, show the changes to the user, then repeat the unchanged request with its token only after the user approves. Reuse idempotencyKey for retries. Omitting a field preserves it; null clears nullable fields. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification.
Inputs: request (required), confirmationToken. Returns: result, status, success, contractVersion
diagnose_failed_importDiagnose Failed ImportARead-onlyIdempotentInspect
Triage a failed, held, or partially processed email import on the user's account. Returns the failure step, error message, likely reason, and actionable next steps.
Inputs: trip_id, import_id.
discoverDiscover travel optionsARead-onlyIdempotentInspect
Search for hotels, restaurants, attractions, or activities to recommend to the traveler, returned as rich visual cards (image, rating, price level, link). Use this when the user wants suggestions or things to do/eat/stay near a place.
Inputs: category (required), query, latitude, location, +4 more.
duplicate_checklistDuplicate ChecklistAInspect
Duplicate a checklist into one or more new checklists on the same trip. Each copy keeps item text and sections; every item starts unchecked. Provide source_note_id (a checklist segment ID from trip_details) and one title per copy (max 10).
Inputs: titles (required), source_note_id (required).
estimate_transfer_drive_timeEstimate Transfer Drive TimeAIdempotentInspect
Estimate the drive time of a Transfer or Transport segment (taxi, car service, airport transfer, ground transport) from its pickup and drop-off at its pickup time, using Apple Maps traffic prediction. apply=false (default) only reports the estimate; apply=true saves it as the estimated drop-off time so the Tineo calendar and iCal feed show the real ride length instead of a flat hour. A drop-off time already on the booking or set by the user is never changed, and a failed lookup changes nothing. Present the result as an estimate.
Inputs: segment_id (required), apply.
fetchFetch Tineo ItemARead-onlyIdempotentInspect
Use this when the user wants the full text for a specific Tineo search result. Pass an ID returned by search, such as trip:{id}, segment:{id}, travel-document:{id}, or document:{id}.
Inputs: id (required).
flight_booking_linkGet Flight Booking LinkBRead-onlyIdempotentInspect
Return a Tineo redirect card for comparable flight search for a trip flight when affiliate flight deep links are enabled.
Inputs: trip_id (required), segment_id, flight_number.
flight_quickaddAdd flight to tripAInspect
Look up a real flight by number and date, then create it as a segment in the trip. Combines flight_quickadd_lookup + segment_create in one call. May take 2-5 seconds due to external flight data lookup. Segment dates must fall within the parent trip dates; use trip_update first to extend the trip.
Inputs: trip_id (required), flight_number (required), departure_date (required), airline, +1 more.
flight_quickadd_lookupLook up a flightARead-onlyIdempotentInspect
Look up flight details by airline, flight number, and departure date before creating or editing a flight segment. Use this when the user gives a flight number and wants to add, preview, or verify a flight.
Inputs: flight_number (required), departure_date (required), airline, airline_code.
flight_route_lookupFlight Route LookupARead-onlyIdempotentInspect
Find scheduled flights by route and date when the flight number is NOT known: origin airport, destination airport, local departure date, and optionally an airline. Returns matching flights with their flight numbers so the exact flight can then be added via flight_quickadd. Use flight_quickadd_lookup instead when the user already has the full flight number.
Inputs: date (required), origin (required), destination (required), airline_code.
flight_status_for_segmentCheck saved flight statusARead-onlyIdempotentInspect
Get current flight status for an existing flight segment in a user's trip. Use this when the user asks if a flight in their itinerary is delayed, canceled, on time, boarding, or has gate/terminal updates. Status is cached for a few minutes, so call it once per flight per answer; calling again for the same flight soon after returns the same result. The text says when the provider last updated the data.
Inputs: segment_id (required), id. Returns: type, flight, matched, flightStatus
forwarding_address_createCreate Forwarding AddressAIdempotentInspect
Create the authenticated user's personal Tineo forwarding address when they explicitly ask for one. Tineo reads email sent to that address and adds the travel bookings it finds to the user's trips, so the user can forward confirmations from any inbox or give it to a travel agent or booking site. Never replaces or changes an existing address: if one already exists it is returned unchanged. Use forwarding_address_get to read addresses without creating one.
Inputs: confirmed (required).
forwarding_address_getGet Forwarding AddressARead-onlyIdempotentInspect
Read the authenticated user's Tineo email forwarding addresses without changing anything. Returns the personal forwarding address when one exists, any other active personal addresses, and the universal trips@tineo.ai address, which works for mail forwarded from the user's primary or registered email. A personal address can also receive mail sent by an assistant or travel provider. If the user has no personal address and wants one, use forwarding_address_create after they ask for it.
Inputs: no named parameters.
friend_request_acceptAccept Friend RequestADestructiveInspect
Accept an INCOMING pending friend request by request_id (from friend_requests_pending). This connects you and notifies the sender, so confirm with the user before calling.
Inputs: request_id (required).
friend_request_declineDecline Friend RequestADestructiveInspect
Decline an INCOMING pending friend request by request_id (from friend_requests_pending). Confirm with the user before calling.
Inputs: request_id (required).
friend_request_resendResend Friend RequestADestructiveInspect
Resend the notification email for one of YOUR OUTGOING pending friend requests by request_id (from friend_requests_pending). This re-emails the recipient, so confirm with the user first and pass confirmed=true. Throttled on an escalating cadence (60s after the original send, 24h after the first resend) and capped at 2 total resends per request.
Inputs: confirmed (required), request_id (required).
friend_request_sendSend Friend RequestADestructiveInspect
Send a friend request to another user by user_id, or by email. This emails a real person, so ALWAYS confirm the recipient with the user before calling, and pass confirmed=true only once they agree. Provide exactly one of user_id or email. If the email belongs to someone not on Tineo, an invitation to join is sent instead. For privacy, the email path always reports the same neutral result whether or not the address is registered.
Inputs: confirmed (required), email, message, user_id.
friend_requests_pendingPending Friend RequestsARead-onlyIdempotentInspect
List the authenticated user's pending friend requests, split into incoming (awaiting your response) and outgoing (awaiting the other person). Returns the counterpart's name only, never their email. Use the returned request_id with friend_request_accept / friend_request_decline / friend_request_resend.
Inputs: no named parameters.
friends_listList FriendsARead-onlyIdempotentInspect
List the authenticated user's accepted friends (paged). Returns each friend's name, home location, your label for them (Friend/Family) and your two-way trip-sharing state. Never returns other users' email addresses.
Inputs: page, search, page_size.
generate_packing_listGenerate Packing ListAIdempotentInspect
Create a weather- and activity-aware packing checklist for a trip, grouped into sections and saved as a pinned checklist note. Never changes an existing list: if one already exists it is returned unchanged; use packing_list_regenerate to replace it. Requires the trip to have a destination or at least one itinerary item. Provide the trip_id from trips_list. For one list per person, pass people (max 6). Tineo builds the list on its servers with its AI model provider, sending the trip's title, dates, destinations, itinerary items, weather forecast, any context_notes, and each person's age band and notes (never their name).
Inputs: trip_id (required), people, context_notes.
get_day_of_travel_briefDay Of Travel BriefBRead-onlyIdempotentInspect
Get airport day-of-travel intelligence combining cached airport conditions and ground-transportation guides (trains, shuttles, taxis) for an airport code or flight segment.
Inputs: iata_code, flight_segment_id. Returns: note, type, airports, retrievedAt
get_flight_airport_conditionsFlight Airport ConditionsARead-onlyIdempotentInspect
Get cached airport conditions, delay indices, weather, and flight rules for an IATA airport code (e.g. "ORD") or a flight segment's departure and arrival airports. Cache-only: reads existing airport intelligence and never triggers an external fetch.
Inputs: route_to, iata_code, flight_segment_id.
get_flight_change_historyFlight Change HistoryARead-onlyIdempotentInspect
Get recorded historical timeline of flight schedule changes, gate changes, and delays for flights monitored on the user's trips.
Inputs: trip_id, since_days, flight_date, airline_code, +2 more.
get_routesGet RoutesARead-onlyIdempotentInspect
Compare available driving, transit, walking, and bicycling route summaries between two places using Google Maps. Returns duration and distance estimates for supported modes, plus Uber, Lyft, Waymo, and Google Maps handoff buttons for the destination. Set origin to 'home' for the user's saved home address. Ground time excludes airport check-in and security. Fares, detailed legs, flights, and ferries are unavailable.
Inputs: origin (required), destination (required), time, modes, +1 more.
get_travel_statsGet Travel StatsARead-onlyIdempotentInspect
Get lifetime travel summary statistics across all owned and shared trips: total trips, completed trips, total segments, and segment counts by type.
Inputs: no named parameters.
get_trip_expense_summaryTrip Expense SummaryARead-onlyIdempotentInspect
Get trip spend totals, per-currency breakdowns, traveler balances, and calculated who-pays-whom settlement suggestions for a trip.
Inputs: trip_id (required), include_settlements.
get_trip_weatherTrip WeatherARead-onlyIdempotentInspect
Get trip weather. Daily detail returns a city-grouped forecast bounded to trip dates with confidence tiers; current or hourly detail returns observed or near-term conditions for one trip city. Provide trip_id from trips_list. The Tineo itinerary already shows each day's weather and refreshes it automatically as the trip gets closer.
Inputs: trip_id (required), hours, detail, city_id, +1 more. Returns: type, cities, detail, tripId, +3 more
ground_transfer_booking_linksGround Transfer Booking LinksARead-onlyIdempotentInspect
Return Welcome Pickups and GetTransfer affiliate cards for a dated pickup and drop-off route. These are provider search or quote handoffs only, not live availability, prices, or confirmed bookings.
Inputs: pickup_date (required), pickup_location (required), dropoff_location (required), locale, +3 more.
import_parse_text_previewPreview Travel Text ImportARead-onlyIdempotentInspect
Parse pasted travel confirmation text into proposed itinerary segments without saving anything. Use this before creating segments from copied email, PDF, or booking text.
Inputs: text (required), trip_id, user_hint, max_segments.
known_participantsKnown Trip ParticipantsARead-onlyIdempotentInspect
Search people the authenticated user previously added to trips. Use before traveler_add, then obtain explicit invitation consent and confirm the email address.
Inputs: names (required).
library_list_clear_completedClear Completed Library List ItemsADestructiveIdempotentInspect
Permanently delete every completed item from an owned Library List. Tell the user how many items will be removed; call with confirmed=true only after they confirm. Use the listId and expectedVersion from the latest library_list_get. On library_version_mismatch, read the list again and reconsider the change; never retry blindly. Library Lists only, not trip checklists.
Inputs: listId (required), confirmed (required), expectedVersion (required).
library_list_deleteDelete Library ListADestructiveIdempotentInspect
Delete an entire owned Library List and all of its items. Name the list to the user first; call with confirmed=true only after they confirm. Use the listId and expectedVersion from the latest library_list_get. On library_version_mismatch, read the list again and reconsider the change; never retry blindly. Library Lists only, not trip checklists.
Inputs: listId (required), confirmed (required), expectedVersion (required).
library_list_getRead Library ListARead-onlyIdempotentInspect
Read one owned Tineo Library List, including every stable item UUID and its version. Read before editing; preserve fields the user did not ask to change. Never use trip segment IDs or guess list/item IDs.
Inputs: listId (required), itemType.
library_list_item_addAdd Library List ItemAIdempotentInspect
Add one item to an owned Library List. Generate one new itemId UUID for the item and reuse it on retries, so a retried call never adds a duplicate. Use the listId and expectedVersion from the latest library_list_get. On library_version_mismatch, read the list again and reconsider the change; never retry blindly. Library Lists only, not trip checklists.
Inputs: text (required), itemId (required), listId (required), expectedVersion (required).
library_list_item_deleteDelete Library List ItemADestructiveIdempotentInspect
Permanently delete one item from an owned Library List. Show the user the exact item first; call with confirmed=true only after they confirm. Use the listId and expectedVersion from the latest library_list_get. On library_version_mismatch, read the list again and reconsider the change; never retry blindly. Library Lists only, not trip checklists.
Inputs: itemId (required), listId (required), confirmed (required), expectedVersion (required).
library_list_items_addAdd Library List ItemsAIdempotentInspect
Add several items to an owned Library List in one call, in order (for example a whole packing or to-do list). Give each item its own new itemId UUID and reuse the same values on retries, so a retried call never adds duplicates. Up to 100 items per call; split longer lists. Use the listId and expectedVersion from the latest library_list_get. On library_version_mismatch, read the list again and reconsider the change; never retry blindly. Library Lists only, not trip checklists.
Inputs: items (required), listId (required), expectedVersion (required).
library_list_items_reorderReorder Library List ItemsADestructiveIdempotentInspect
Reorder the items of an owned Library List. orderedItemIds must contain every current item ID exactly once, in the new order. Show the user the proposed order first; call with confirmed=true only after they confirm. Use the listId and expectedVersion from the latest library_list_get. On library_version_mismatch, read the list again and reconsider the change; never retry blindly. Library Lists only, not trip checklists.
Inputs: listId (required), confirmed (required), orderedItemIds (required), expectedVersion (required).
library_list_item_updateUpdate Library List ItemADestructiveIdempotentInspect
Change one existing item in an owned Library List (text, completed, color, notes, priority, dueDate), for example to check it off. Changes only the fields named in updateFields. Use the listId and expectedVersion from the latest library_list_get. On library_version_mismatch, read the list again and reconsider the change; never retry blindly. Library Lists only, not trip checklists.
Inputs: itemId (required), listId (required), updates (required), updateFields (required), +1 more.
library_lists_searchFind Library ListsARead-onlyIdempotentInspect
Find the signed-in user's Tineo Library Lists by title or description. Return candidate IDs; when several titles match, ask the user to select one. These are freestanding Library Lists, separate from trip packing/checklists. Only lists are supported; do not invent journal, place or file edits.
Inputs: limit, query, offset, itemType.
library_list_updateUpdate Library ListADestructiveIdempotentInspect
Change one owned Library List's own details (title, emoji, color, description). Changes only the fields named in updateFields; never touches the list's items. Use the listId and expectedVersion from the latest library_list_get. On library_version_mismatch, read the list again and reconsider the change; never retry blindly. Library Lists only, not trip checklists.
Inputs: listId (required), updates (required), updateFields (required), expectedVersion (required).
mentions_searchFind Trips to MentionARead-onlyIdempotentInspect
Typeahead search over the user's Tineo trips for composer @-mentions. Returns resource links to trips.
Inputs: query (required). Returns: items
packing_list_regenerateRegenerate Packing ListADestructiveInspect
Regenerate a trip's existing packing checklist: replaces the generated items the user has not touched, and keeps every item the user checked, added or edited. Use only after the user asks to redo or refresh the list. With people, only those people's lists are regenerated (a person without a list gets a new one); a trip with no list yet gets a new one. Provide the trip_id from trips_list. Tineo builds the list on its servers with its AI model provider, sending the trip's title, dates, destinations, itinerary items, weather forecast, any context_notes, and each person's age band and notes (never their name).
Inputs: trip_id (required), people, context_notes.
place_detailsView place detailsARead-onlyIdempotentInspect
Look up a selected place ID for its name, address, map URL, coordinates, photos, and timezone when missing from places_search. Google rich business details are disabled: do not use this tool to answer opening-hours, open-now, price, website, phone, or rating questions. Missing fields mean unavailable, not closed or absent. Previously cached optional details may be stale.
Inputs: place_id (required), language.
places_searchSearch placesARead-onlyIdempotentInspect
Search for real-world places by text. Use this when the user needs to find a hotel, restaurant, venue, airport, station, port, parking location, or other place before adding or editing a trip segment.
Inputs: query (required), language, max_results, included_type, +2 more.
searchSearch TineoARead-onlyIdempotentInspect
Use this when the user wants to search their trips, itinerary segments, or travel documents by keyword. Returns citation-ready IDs, titles, and canonical URLs.
Inputs: query (required).
search_airport_loungesSearch Airport LoungesARead-onlyIdempotentInspect
Requires Tineo Ultra access. Search Tineo's populated first-party airport-lounge catalog by IATA and optional terminal/gate. Returns terminal, concourse, stored gate reference, location, access, amenity, rating, and day-pass fields with categorical gate relevance (not walking distance).
Inputs: iata_code (required), gate, terminal, max_results. Returns: gate, note, type, lounges, +7 more
search_attractionsSearch Attractions & SightsARead-onlyIdempotentInspect
Search for popular tourist attractions, sights, landmarks, and things to do in a destination using TripAdvisor and Google Places. Returns attraction cards with ratings, descriptions, addresses, and ticket/experience links. Use when the user asks about top sights, landmarks, or attractions in a city.
Inputs: query (required), limit, location.
search_flight_pricesSearch Flight PricesARead-onlyIdempotentInspect
Never send more than 3 search_flight_prices calls in one turn: calls beyond 3 are rejected without searching. Search for flight itineraries with prices between two airports on a date using Google Flights. Returns available itineraries with prices, durations, airlines, layovers, and ranked route-search actions. Ages 12-17 are mapped as adults where a provider requires it; ages 0-1 are infants whose lap-versus-seat placement and provider policy must be confirmed before booking. Each account runs one search at a time; the second and third wait their turn and still return results. When the user names several airports, destinations, dates or trip lengths, search the 1 to 3 most likely combinations first (or one outbound_end_date range of up to 7 days), show the results, then ask before searching more. A queued or slow search returns lookupStatus pending with retry_after_seconds; it keeps its place and finishes on its own, so repeat the identical call after that wait to get its result. When the user rules out airlines or connection airports/countries, pass include_airlines/exclude_airlines/avoid_connection_airports/avoid_connection_countries so excluded routes are removed. Fares carry no baggage allowance: never claim a fare includes bags.
Inputs: outbound_date (required), arrival_airport (required), departure_airport (required), trip_id, +11 more.
search_hotelsSearch Hotels & LodgingARead-onlyIdempotentInspect
Search for hotels and accommodations. Ordinary searches use the text query. Dated radius searches use a geographic bounding box and exact distance filter; SearchAPI does not apply the text query or style preferences within the radius. Provider coverage may be incomplete and prices may change. A hotel_place_id without radius_meters searches by the resolved hotel name; with radius_meters it searches nearby. Only a unique identity match retains its offer links.
Inputs: limit, query, trip_id, check_in, +8 more.
search_toursSearch Tours & ActivitiesARead-onlyIdempotentInspect
Search for bookable tours, activities, excursions, and experiences at a destination using GetYourGuide with Viator and Tiqets travelpayouts fallbacks. Returns tour options with titles, prices, ratings, durations, and booking links. Use when the user asks about things to do, tours, activities, excursions, or experiences in a city or destination. Search one destination per call.
Inputs: query (required), date, limit, trip_id, +2 more.
segment_associate_placeAssociate Place With SegmentADestructiveInspect
Attach a Google Place to an ALREADY-EXISTING segment retroactively — writes a place association and syncs the segment's address/city/country/coordinates from the place. Use when a segment has a venue/name but no address (e.g. imported from a ticket confirmation with venue-only data). Requires a place_id from places_search/place_details. For CarRental/Transfer segments pass role "origin" or "destination"; omit for single-location segments (Activity, Lodging, EventTicket, Parking), which default to "primary".
Inputs: place_id (required), segment_id (required), role.
segment_booking_linksGet Segment Booking LinksARead-onlyIdempotentInspect
Return useful booking, reservation, ticket, check-in, itinerary, voucher, receipt, and travel-document links for one trip segment as booking_link_cards.
Inputs: segment_id (required), classifications.
segment_createCreate itinerary itemAInspect
Create a new segment in a trip. FIRST call segment_get_schema to get the required fields for the segment type. Required in fields, besides trip_id: Flight airline (or a flightNumber starting with the airline code, e.g. UA 123), departureAirportCode, arrivalAirportCode, startDateTime; Lodging propertyName, startDateTime; Activity title, startDateTime; EventTicket eventName, startDateTime; CarRental rentalCompany, startDateTime; Train and Ferry operator, departureCity, arrivalCity, startDateTime; Transfer provider, pickupLocation, dropoffLocation, startDateTime; Parking facilityName, startDateTime; Note title; Poll title, options. Then provide the trip_id, segment_type, and fields matching the schema. Segment dates must fall within the parent trip dates. Dates up to 1 day outside the trip extend it, with a warning; further out, call trip_update first. For an Activity, Lodging, EventTicket or Parking at a real place, call places_search first and put the result's place ID in fields.placeId: Tineo links that place (map pin and coordinates) and fills a missing name, address, phone and website. Never invent a time: if the user has not given or chosen one, ask, or send the date only (YYYY-MM-DD) in startDateTime and Tineo stores it as time not set. Send a clock time only when the user stated it or a booking shows it. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification. Cruise/CruiseDay generic writes require the dedicated cruise tools; their schemas and full reads remain available.
Inputs: trip_id (required), fields, segment_type.
segment_deleteDelete itinerary itemADestructiveInspect
Delete a segment from a trip. This action cannot be undone. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification. Cruise/CruiseDay generic writes require the dedicated cruise tools; their schemas and full reads remain available.
Inputs: segment_id (required).
segment_detailsView itinerary itemARead-onlyIdempotentInspect
Get full details for a specific trip segment. Returns complete information based on segment type: flight details (airline, flight number, airports, terminals, seats, baggage), hotel details (property, address, check-in/out times, room type, amenities), activity details (venue, tickets, timing), event ticket details (event name, venue, timing, vendor, order, confirmation), car rental details (company, vehicle, pickup/dropoff locations), or transfer details (provider, transfer type, pickup/dropoff locations, addresses, and local times). bookingContext describes whether Tineo can prepare an in-app reviewed change or needs the full editor; it is not a save confirmation or additional write authority.
Inputs: segment_id (required). Returns: canEdit, segment, bookingContext, duplicateStatus
segment_get_schemaGet itinerary item fieldsARead-onlyIdempotentInspect
Get the schema for a segment type. CALL THIS FIRST before creating/updating segments. Returns required fields and their types for the specified segment type. Supported types: Flight, Lodging, CarRental, Train, Transfer, Ferry, EventTicket, Parking, Activity, Note, Poll. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification. Cruise/CruiseDay generic writes require the dedicated cruise tools; their schemas and full reads remain available. Additional supported schemas: Cruise, CruiseDay, CruiseActivity.
Inputs: segment_type (required).
segment_link_addAdd Link To SegmentAIdempotentInspect
Add a separate labeled, clickable URL (for example a restaurant Menu, online check-in, or directions link) to an ALREADY-EXISTING itinerary segment. Additive only: imported and existing links are never changed or removed, and an identical URL already on the segment is reported instead of duplicated. Find the segment first: call trips_list, then trip_details with sections ["segments"] on each candidate trip and match the segment by title or venue (keyword search can miss names), then confirm with the user. Returns the saved link and every link now on the segment.
Inputs: url (required), segment_id (required), label, link_type.
segment_updateUpdate itinerary itemADestructiveIdempotentInspect
Update an existing segment. Only provide the fields you want to change. Get field names from segment_get_schema if unsure. Segment dates must fall within the parent trip dates; use trip_update first to extend the trip. To change a checklist's tasks use checklist_items_add, checklist_item_update, checklist_items_remove or checklist_items_reorder (IDs from trip_checklists). The result lists the saved value of every field you sent, read back from Tineo, so do not call segment_details to confirm the change. On an Activity, Lodging, EventTicket or Parking, fields.placeId (a place_id from places_search) attaches that place the same way segment_associate_place does, replacing the stored address with the place's. Never invent a time: if the user has not given or chosen one, ask, or send the date only (YYYY-MM-DD) in startDateTime and Tineo stores it as time not set. Send a clock time only when the user stated it or a booking shows it. For commercial cruise reservations and sea/port days use cruise_* tools. Never substitute Activity, CruiseActivity or another segment type for a cruise day. Ordinary shore excursions remain valid Activity/CruiseActivity. If cruise tools are unavailable explain the limitation and ask for clarification. Cruise/CruiseDay generic writes require the dedicated cruise tools; their schemas and full reads remain available.
Inputs: id, fields, segment_id.
settings_readRead Tineo SettingsARead-onlyIdempotentInspect
Reads the user's Tineo display and notification settings: units, date and time formats, flight monitoring, and trip reminder emails.
Returns: layout, schema, values
settings_updateUpdate Tineo SettingsBDestructiveIdempotentInspect
Changes the user's Tineo display and notification settings. Only include settings the user asked to change.
Inputs: set (required). Returns: values
support_ticket_createCreate Support TicketADestructiveInspect
Create a Tineo support ticket after the user explicitly asks or confirms and notify Tineo support by email. Use when the assistant cannot complete a request, a tool fails, or the requested capability is unsupported. Tineo attaches the user's app version, platform, device model and OS version automatically, so do not ask for them or list them as unknown.
Inputs: summary (required), confirmed (required), description (required), source, +4 more.
tineo_pingCheck Tineo connectionARead-onlyIdempotentInspect
Check that Tineo is connected and the user is signed in. Returns the signed-in account's name and email; it does not list trips.
Inputs: no named parameters. Returns: type, user
train_booking_linkTrain Booking LinkARead-onlyIdempotentInspect
Return a train or bus search handoff between two cities, routed by region. Asian routes open 12Go with the route and date prefilled. European routes open the Omio route page (Madrid-Barcelona opens a prefilled search; Tokyo-Kyoto also gets the Omio page). Routes in other regions, such as the Americas, return no handoff. Confirm dates and passengers on the partner site; the card preserves the requested date for reference. No live fares, availability, or tickets are provided.
Inputs: origin (required), destination (required), departureDate (required), locale, +4 more.
travel_document_assign_tripAssign Travel Document To TripADestructiveIdempotentInspect
Move or assign a travel document (insurance, visa, passport scan, voucher) to another trip the user OWNS, or back to the general library. Provide document_id from a documents listing and trip_id from trips_list. Omit trip_id (or pass null) to move the document to the library. Only trips the user owns are valid targets. The document's linked files move with it; a file also attached to another document is left in place and reported. If more than one document could match the request, confirm which one before moving. Returns the document, its previous and new trip, and how many linked files were re-pointed.
Inputs: document_id (required), trip_id.
traveler_addAdd trip travelerADestructiveInspect
Add a traveler only after known_participants and the user's explicit invitation decision. With an invitation, pass email and invite_confirmed=true; this creates and sends the trip invitation. If the user explicitly declines, omit email and pass invite_confirmed=false. If the email matches someone the user already added to a trip, that existing traveler's name is reused instead of creating a second identity for the same person.
Inputs: name (required), trip_id (required), invite_confirmed (required), email.
traveler_assignAssign traveler to itinerary itemAIdempotentInspect
Assign one or more travelers to one or more segments in a single call. To put the same travelers on several segments (for example every flight of a trip), pass all of them in segment_ids and all travelers in traveler_ids in one call instead of one call per segment. Up to 50 segments and 50 travelers per call, and at most 200 segment-traveler pairs. Assigning an already-assigned traveler is a no-op, and each segment succeeds or fails on its own: the result lists what was assigned and, per segment, what failed and why.
Inputs: segment_id, segment_ids, traveler_id, traveler_ids.
traveler_update_emailCorrect pending traveler emailADestructiveIdempotentInspect
Correct one pending, unaccepted trip traveler's email after the owner supplies the exact traveler ID and new email. A changed address revokes the old link and automatically sends a renewed invitation. Report invitationSent truthfully; an unchanged address sends nothing.
Inputs: email (required), trip_id (required), traveler_id (required).
trip_booking_linksGet Trip Booking LinksARead-onlyIdempotentInspect
Return useful booking, reservation, ticket, check-in, itinerary, and affiliate flight-search links for a user's trip as booking_link_cards. Use this when the user asks for booking links, reservations, tickets, check-in, vouchers, receipts, or comparable flight-booking options.
Inputs: trip_id (required), max_results, segment_types, classifications.
trip_checklistsTrip ChecklistsARead-onlyIdempotentInspect
Read every checklist on a trip with its items. Returns each checklist's title and, for every task, a stable itemId, text, category (section heading), position (0-based stored order; the app groups tasks under their section headings in first-appearance order), isChecked (complete for everyone on a shared trip) and checkedByMe (on a shared trip a task you ticked stays unchecked until every traveler ticks it). Tasks are a flat list: there are no subtasks or nested items. Pass checklist_id (the checklist's segment ID) to read just one checklist. Call this before editing items so you have the item IDs. To create a checklist use segment_create (type Note, isChecklist true, checklistItems [{text, category?}]). To change tasks use checklist_items_add (append tasks), checklist_item_update (text, category, or checked to mark done/not done), checklist_items_remove, or checklist_items_reorder, passing checklist_id and the item IDs. Delete a whole checklist with segment_delete. Never show IDs to users.
Inputs: trip_id (required), checklist_id.
trip_cities_listList Trip CitiesARead-onlyIdempotentInspect
List the ordered city associations for a trip. Returns trip_city_id values used by update, remove, and reorder.
Inputs: trip_id (required).
trip_cities_reorderReorder Trip CitiesADestructiveIdempotentInspect
Replace the trip city order using every current trip_city_id exactly once. The first city drives the automatic cover when an image is available.
Inputs: trip_id (required), ordered_trip_city_ids (required).
trip_city_addAdd Trip CityAIdempotentInspect
Add a city to the end of a trip's ordered city list. This is idempotent when an equivalent city is already present. Pass city_name plus country: names are matched against the catalog (including aliases), a major city that shares its name with smaller places resolves to the major one, and a real town or island missing from the catalog (for example Bijagua or Santorini) is looked up in that country and added automatically.
Inputs: trip_id (required), city_id, country, city_name.
trip_city_removeRemove Trip CityADestructiveIdempotentInspect
Remove one city association from a trip by trip_city_id. Confirm this destructive action with the user first.
Inputs: trip_id (required), trip_city_id (required).
trip_city_updateUpdate Trip CityADestructiveIdempotentInspect
Replace one trip-city association with another city. This never edits the shared city catalog record.
Inputs: trip_id (required), trip_city_id (required), city_id, country, +1 more.
trip_cover_updateUpdate Trip Cover PhotoADestructiveInspect
Set a trip's cover photo from an image URL or a place_photo_reference returned by places_search/place_details. Becomes the trip's hero image immediately. Provide the trip_id from trips_list.
Inputs: trip_id (required), image_url, place_photo_reference.
trip_createCreate tripAInspect
Create a new trip with explicit start_date and end_date (YYYY-MM-DD), covering its planned segments. Returns its ID; the authenticated user becomes the owner.
Inputs: title (required), end_date (required), start_date (required), description, +1 more.
trip_deleteDelete tripADestructiveInspect
Delete a trip owned by the authenticated user and its itinerary segments. Requires confirmed=true after explicit user confirmation. Also removes connected calendar events when automatic sync is enabled.
Inputs: trip_id (required), confirmed (required).
trip_detailsView trip itineraryARead-onlyIdempotentInspect
Get detailed information about a specific trip. The text response includes the trip summary plus a chronological list of every segment (flights, hotels, activities, etc.) with each segment_id, so you can chain directly to segment_details, segment_update, segment_delete, or flight_status_for_segment without another search. Also includes traveler count. For full per-segment details, use segment_details with the returned segment_id. Use sections and segment_types to filter the response.
Inputs: trip_id (required), sections, segment_types. Returns: trip, canEdit, capabilities, contractVersion
trip_expense_createAdd trip expenseAInspect
Add expenses to a trip's shared expense ledger, with who paid and how each is split. Uses the same rules as the Expenses screen in Tineo. For one expense, send description and amount; for several (a list of receipts, a spreadsheet, a whole trip's costs), send them all in expenses in one call, up to 50 per call, instead of one call per expense. Each item in expenses is added or rejected on its own; failed items come back by index with the reason, so resend only those. Get traveler IDs from trip_expenses_list. Defaults: payer is the user, date is today in the user's profile time zone, an equal split with everyone on the trip (all on the payer on a solo trip). Confirm the amounts, payers and splits with the user before calling; for a batch, confirm the list once.
Inputs: trip_id (required), date, notes, split, +7 more.
trip_expenses_listTrip ExpensesARead-onlyIdempotentInspect
List a trip's individual expenses with who paid and how each is split, plus the trip's travelers (ID, name, and which one is the user). Use it to find an expense or traveler ID before trip_expense_update or trip_expense_create. For totals and who owes whom use get_trip_expense_summary.
Inputs: trip_id (required), query.
trip_expense_updateEdit trip expenseADestructiveIdempotentInspect
Change an existing trip expense: amount, description, date, category, who paid, or how it is split (for example, make an expense 100% one person's). Get the expense ID and traveler IDs from trip_expenses_list. Send only the fields that change; a split replaces the whole split. Changing the amount of an equal or percentage split keeps the same people and proportions. Only the trip owner or an editor can edit expenses.
Inputs: expense_id (required), date, notes, split, +6 more.
trip_renameRename tripADestructiveIdempotentInspect
Rename a trip owned by the authenticated user. Returns the old and new titles. May synchronize the title to the trip owner's connected calendars when automatic sync is enabled.
Inputs: trip_id (required), new_title (required).
trip_restoreRestore deleted tripAIdempotentInspect
Restore a deleted trip owned by the authenticated user, together with the itinerary items that were removed when it was deleted (items deleted separately before that stay deleted). Call without trip_id to list recently deleted trips. Call with trip_id to preview the restore; nothing changes until the user explicitly confirms and you call again with confirmed=true. May re-add the trip to the owner's connected calendars when automatic sync is enabled.
Inputs: trip_id, confirmed, expected_deleted_at.
trip_sharing_getGet trip sharingARead-onlyIdempotentInspect
Read who can see the user's own trips, one trip (trip_id) or every trip they own (paged). For each trip it reports the three sharing mechanisms separately: people with per-trip access (access edit/view/invited/none, where invited means an invitation awaits acceptance and can still be revoked; invitation status pending/accepted/declined/expired, level view/edit, and traveler role), whether a public view link is active, and the trip's own friend-sharing switches (hidden from friends, plans shared with friends; per trip, not account settings). Pass friend_user_id (from friends_list) to also get that friend's exact state on each trip: per-trip access, invitation, and whether they see the trip summary or full plan through friend sharing (planVisibleVia: friend_grant = the user shares plans with this friend on every trip, trip_grant = this trip shares plans with all friends, or both). Use this before trip_sharing_set and to report sharing status. Only the trip owner can read this. Revoked invitations are deleted, so they are not listed. Never show IDs to the user.
Inputs: page, trip_id, page_size, upcoming_only, +1 more.
trip_sharing_setShare trips with a friendADestructiveIdempotentInspect
Give one friend view or edit access to the user's own trips, change their level, or remove it (access=none), for specific trips (trip_ids) or every trip the user owns (all_trips=true, 25 per page). Idempotent: it checks each trip first and only changes what differs, so re-running it never sends a duplicate invitation. New access is an invitation emailed to the friend, who gets access once they accept. Without confirmed=true nothing is written or emailed: it returns the plan per trip (would_invite, would_update_access, would_revoke, already_correct, already_invited, needs_attention). Show that plan, and call again with the same arguments plus confirmed=true only once the user has explicitly asked for this change, in this conversation or in the instructions of a scheduled task they set up; after they approve the plan, apply it without previewing or asking again. Results per trip: invited, invitation_updated, access_updated, revoked, already_correct, already_invited, needs_attention (with a reason, e.g. not the owner or access via the traveler list) or failed; report them to the user, describing invited trips as pending invitations rather than access already granted. Friend summaries are separate and never changed here: they follow the user's friend settings and each trip's hide-from-friends switch. Only friends can get access; for someone who is not a friend yet, offer friend_request_send first. If their friend request is still pending, the call changes nothing and returns friendRequest and a note: tell the user they haven't accepted yet, and only if the user still wants it, call again with confirmed=true and pending_friend_confirmed=true. Get friend_user_id from friends_list; never guess it from a name. Never show IDs to the user.
Inputs: access (required), friend_user_id (required), page, message, +5 more.
trips_hubTineo: My TripsARead-onlyIdempotentInspect
Opens the Tineo trips app: browse current, upcoming, and past trips and open a trip's day-by-day itinerary. The user launches it from the ChatGPT sidebar or a conversation panel.
Inputs: no named parameters. Returns: type, sections, totalCount, activeCount, +2 more
trips_listList tripsARead-onlyIdempotentInspect
List the user's trips. Use this when the user wants to see their trips, search for a specific trip, or asks about their travel plans.
Inputs: limit, search, status. Returns: trips, filters, totalCount
trip_travelersList trip travelersBRead-onlyIdempotentInspect
Get the list of travelers/participants for a specific trip. Returns names, emails, roles, and which segments each traveler is assigned to.
Inputs: trip_id (required). Returns: tripId, canEdit, travelers
trip_updateUpdate tripBDestructiveInspect
Update trip dates, title, destination, or description for a trip the authenticated user can edit. May synchronize changes to the trip owner's connected calendars when automatic sync is enabled.
Inputs: trip_id (required), name, title, end_date, +5 more.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceRemote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.MIT
- AlicenseCqualityCmaintenanceCompetitor Monitor AI - MCP server providing AI-powered tools and automation by MEOK AI Labs112 npm46 PyPIMIT
- AlicenseAqualityDmaintenanceEnables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.169 npm1MIT

industrylens-mcpofficial
AlicenseNot gradedqualityCmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.