-
-
Notifications
You must be signed in to change notification settings - Fork 565
MCP Tools and Resources
TREK exposes tools (read and write actions) and resources (read-only trek:// URIs). Tools are registered per-session based on OAuth scopes and enabled addons.
For addon-gated tools (Packing, To-Dos, Atlas, Collab, Vacay, Journey) and their resources, see MCP-Addon-Tools.
| Tool | Description |
|---|---|
get_trip_summary |
Full denormalized snapshot of a trip — metadata, members, days with assignments and notes, accommodations, budget, packing, reservations, collab notes, and to-dos in one call. Use this as your context loader before making changes. |
Compound tools collapse multi-step workflows into a single atomic transaction. If the second step fails, the first is rolled back.
Use compound tools only when the place or item does not yet exist. For existing records, call the individual tools directly.
| Tool | Wraps | Description |
|---|---|---|
create_and_assign_place |
create_place + assign_place_to_day
|
Create a place and assign it to a day. Returns { place, assignment }. Requires places:write. |
create_place_accommodation |
create_place + create_accommodation
|
Create a place and book it as an accommodation. Returns { place, accommodation }. Requires trips:write. |
create_budget_item_with_members |
create_budget_item + set_budget_item_members
|
Create a budget item and set splitting members. If userIds is omitted, behaves like create_budget_item. Returns { item }. Requires budget:write. |
Requires trips:read or trips:write scope.
| Tool | Description |
|---|---|
list_trips |
List all trips you own or are a member of. Supports include_archived flag. |
create_trip |
Create a trip with title, dates, and currency. Days are auto-generated from the date range. |
update_trip |
Update a trip's title, description, dates, or currency. |
delete_trip |
Delete a trip. Owner only. Requires trips:delete. |
list_trip_members |
List the owner and all collaborators of a trip. |
add_trip_member |
Add a user to a trip by username or email. Owner only. |
remove_trip_member |
Remove a collaborator from a trip. Owner only. |
copy_trip |
Duplicate a trip (days, places, itinerary, packing, budget, reservations). Packing items reset to unchecked. |
export_trip_ics |
Export the trip itinerary and reservations as iCalendar (.ics) text. |
get_share_link |
Get the current public share link for a trip and its permission flags. Requires trips:share. |
create_share_link |
Create or update the public share link with configurable visibility flags. Requires trips:share. |
delete_share_link |
Revoke the public share link for a trip. Requires trips:share. |
Requires places:read or places:write scope.
| Tool | Description |
|---|---|
list_places |
List places in a trip, optionally filtered by assignment status, category, tag, or search query. |
create_place |
Add a place with name, coordinates, address, category, notes, website, phone, and optional google_place_id / osm_id. |
update_place |
Update any field of an existing place including transport mode, timing, and price. |
delete_place |
Remove a place from a trip. Also removes all day assignments. |
bulk_delete_places |
Delete multiple places by ID. Removes all day assignments. Cannot be undone. |
import_places_from_url |
Import all places from a publicly shared Google Maps or Naver Maps list URL. |
list_categories |
List all available place categories with id, name, icon, and color. |
search_place |
Search for a place by name or address. Returns osm_id and google_place_id for use in create_place. |
Requires trips:read or trips:write scope.
| Tool | Description |
|---|---|
update_day |
Set or clear a day's title. |
create_day |
Add a new day to a trip with optional date and notes. |
delete_day |
Delete a day from a trip. |
assign_place_to_day |
Pin a place to a specific day in the itinerary. Requires places:write. |
unassign_place |
Remove a place assignment from a day. Requires places:write. |
reorder_day_assignments |
Reorder places within a day by providing assignment IDs in order. Requires places:write. |
update_assignment_time |
Set start/end times for a place assignment (e.g. "09:00" – "11:30"). Pass null to clear. Requires places:write. |
move_assignment |
Move a place assignment to a different day. Requires places:write. |
get_assignment_participants |
Get users participating in a specific place assignment. |
set_assignment_participants |
Set participants for a place assignment (replaces current list). |
Requires trips:read or trips:write scope.
| Tool | Description |
|---|---|
create_day_note |
Add a note to a specific day with optional time label and emoji icon. |
update_day_note |
Edit a day note's text, time, or icon. |
delete_day_note |
Remove a note from a day. |
Requires trips:read or trips:write scope.
| Tool | Description |
|---|---|
create_accommodation |
Add an accommodation (hotel, Airbnb, etc.) linked to a place and a check-in/check-out date range. |
update_accommodation |
Update fields on an existing accommodation including dates, times, confirmation, and notes. |
delete_accommodation |
Delete an accommodation record from a trip. |
Requires reservations:write scope.
| Tool | Description |
|---|---|
create_transport |
Create a transport booking (flight, train, car, cruise) with optional multi-stop endpoints, departure/arrival times, and confirmation details. |
update_transport |
Update an existing transport booking. Pass endpoints[] to replace all stops. |
delete_transport |
Delete a transport booking from a trip. |
Requires reservations:read or reservations:write scope.
| Tool | Description |
|---|---|
create_reservation |
Create a pending reservation — hotels, restaurants, events, tours, activities, and other types. |
update_reservation |
Update any field including status (pending / confirmed / cancelled). |
delete_reservation |
Delete a reservation and its linked accommodation record if applicable. |
reorder_reservations |
Reorder reservations within a day. |
link_hotel_accommodation |
Set or update a hotel reservation's check-in/out day links and place. |
Requires budget:read or budget:write scope. Budget addon must be enabled.
| Tool | Description |
|---|---|
create_budget_item |
Add an expense with name, category, and price. |
update_budget_item |
Update an expense's details, split (persons/days), or notes. |
delete_budget_item |
Remove a budget item. |
set_budget_item_members |
Set which members are splitting a budget item (replaces current list). |
toggle_budget_member_paid |
Mark or unmark a member as having paid their share. |
Requires places:read or places:write scope.
| Tool | Description |
|---|---|
list_tags |
List all tags belonging to the current user. |
create_tag |
Create a new tag (user-scoped label for places) with optional hex color. |
update_tag |
Update the name or color of an existing tag. |
delete_tag |
Delete a tag (removes it from all attached places). |
| Tool | Scope required | Description |
|---|---|---|
get_place_details |
geo:read |
Fetch detailed information (hours, photos, ratings) about a place by its Google Place ID. |
reverse_geocode |
geo:read |
Get a human-readable address for given coordinates. |
resolve_maps_url |
geo:read |
Resolve a Google Maps share URL to coordinates and place name. |
search_airports |
geo:read |
Search for airports by name, city, or IATA code. Returns IATA code, name, city, country, timezone. |
get_airport |
geo:read |
Look up an airport by IATA code (e.g. "ZRH", "CDG"). |
get_weather |
weather:read |
Get a weather forecast for a location and date. |
get_detailed_weather |
weather:read |
Get an hourly/detailed weather forecast for a location and date. |
Requires notifications:read or notifications:write scope.
| Tool | Description |
|---|---|
list_notifications |
List in-app notifications with pagination and optional unread filter. |
get_unread_notification_count |
Get the unread notification count. |
mark_notification_read |
Mark a notification as read. |
mark_notification_unread |
Mark a notification as unread. |
mark_all_notifications_read |
Mark all notifications as read. |
Resources provide read-only access via trek:// URIs. Read them to understand current state before making changes.
| URI | Scope required | Description |
|---|---|---|
trek://trips |
trips:* |
All trips you own or are a member of |
trek://trips/{tripId} |
trips:* |
Single trip with metadata and member count |
trek://trips/{tripId}/days |
trips:* |
Days of a trip with their assigned places |
trek://trips/{tripId}/places |
places:read |
All places in a trip. Supports ?assignment=all|unassigned|assigned
|
trek://trips/{tripId}/reservations |
reservations:read |
Flights, hotels, restaurants, and other reservations |
trek://trips/{tripId}/days/{dayId}/notes |
trips:* |
Notes for a specific day |
trek://trips/{tripId}/accommodations |
trips:* |
Hotels and rentals with check-in/out details |
trek://trips/{tripId}/members |
trips:* |
Owner and collaborators |
trek://categories |
(any) | Available place categories (id, name, icon, color) |
trek://notifications/in-app |
notifications:read |
Your in-app notifications (most recent 50, unread first) |
For addon-gated resources (Budget, Packing, To-Dos, Collab, Atlas, Vacay, Journey), see MCP-Addon-Tools.
- Home
- Quick Start
- Install: Docker
- Install: Docker Compose
- Install: Helm
- Install: Proxmox VE (LXC)
- Install: Unraid
- Install: Portainer
- Reverse Proxy
- Environment Variables
- Updating
- Login and Registration
- OIDC SSO
- Two-Factor Authentication
- Password Reset
- User Settings
- Display Settings
- Map Settings
- Notifications
- Offline Mode and PWA
- Languages
- My Trips Dashboard
- Creating a Trip
- Trip Members and Sharing
- Trip Planner Overview
- Places and Search
- Day Plans and Notes
- Map Features
- Route Optimization
- Weather Forecasts
- Reservations and Bookings
- Transport: Flights, Trains, Cars
- Accommodations
- Budget Tracking
- Packing Lists
- Packing Templates
- Todos and Tasks
- Documents and Files
- Tags and Categories
- Real-Time Collaboration
- Collab Chat
- Collab Notes
- Collab Polls
- What's Next Widget
- Public Share Links
- Invite Links