TrekkSoft MCP by usefulapi
Read activities, bookings, guests and open departures in TrekkSoft.
Should I use this
Quality & Safety
Findings (1)
- LOWin trekksoft_list_activity_availabilities
Based on automated analysis of tool definitions and protocol compliance.
Context Cost
This is the approximate number of tokens consumed each time the server's tools are loaded into a model's context. Higher counts reduce the attention available for other tasks.
Install
One-Click Install
Add this to your `claude_desktop_config.json` file:
{
"mcpServers": {
"trekksoft": {
"url": "https://trekksoft.usefulapi.io/mcp"
}
}
}Remote endpoints
https://trekksoft.usefulapi.io/mcpstreamable-httpWhat it can do
Tool inventory
Tools (10)
🟢trekksoft_list_activities(id, merchant, category, title_like, is_active, ...)
List the tours and activities of your TrekkSoft account, with filters for merchant, category, title, active and bookable state. TrekkSoft API: GET /activities.
Input Schema
{
"type": "object",
"properties": {
"id": {
"description": "Only these activity ids.",
"type": "array",
"items": {
"type": "string"
}
},
"merchant": {
"description": "Only activities of these merchant codes.",
"type": "array",
"items": {
"type": "string"
}
},
"category": {
"description": "Category filter.",
"type": "string"
},
"title_like": {
"description": "Part of the activity title.",
"type": "string"
},
"is_active": {
"description": "Only active (true) or inactive (false) activities.",
"type": "boolean"
},
"only_bookable": {
"description": "Only bookable activities.",
"type": "boolean"
},
"language": {
"description": "Language code such as en, de, fr (default en).",
"type": "string"
},
"limit": {
"description": "Results per page (default 30, maximum 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Number of results to skip (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢trekksoft_get_activity(activity_id, language)
Get one activity by id: description, schedule, price categories and settings. TrekkSoft API: GET /activities/{activityId}.
Input Schema
{
"type": "object",
"properties": {
"activity_id": {
"type": "string",
"description": "The activity id (from trekksoft_list_activities)."
},
"language": {
"description": "Language code such as en, de, fr (default en).",
"type": "string"
}
},
"required": [
"activity_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢trekksoft_list_bookings(merchant, user, q, booking_date, activity_date, ...)
List recent bookings. Filter by merchant, user email, free text, booking date, activity date, or changes since a time. TrekkSoft API: GET /bookings.
Input Schema
{
"type": "object",
"properties": {
"merchant": {
"description": "Only bookings sold by these merchant codes.",
"type": "array",
"items": {
"type": "string"
}
},
"user": {
"description": "Only bookings of these user emails.",
"type": "array",
"items": {
"type": "string"
}
},
"q": {
"description": "Free text: booking id, guest name or email, activity name, booking number.",
"type": "string"
},
"booking_date": {
"description": "Booking date yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"activity_date": {
"description": "Activity start date yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"changed_after": {
"description": "ISO 8601 time: only bookings changed after it.",
"type": "string"
},
"booked_after": {
"description": "ISO 8601 time: only bookings made after it.",
"type": "string"
},
"cancelled_after": {
"description": "ISO 8601 time: only bookings cancelled after it.",
"type": "string"
},
"limit": {
"description": "Results per page (default 30, maximum 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Number of results to skip (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢trekksoft_get_booking(booking_id)
Get one booking by id: activity, guests, prices, payments and status. TrekkSoft API: GET /bookings/{id}.
Input Schema
{
"type": "object",
"properties": {
"booking_id": {
"type": "string",
"description": "The booking id (from trekksoft_list_bookings)."
}
},
"required": [
"booking_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢trekksoft_list_guests(id, availability_item_id, booking_id, phone, name, ...)
List guests (participants) with filters for booking, trip departure, phone, name and cancellation. TrekkSoft API: GET /guests.
Input Schema
{
"type": "object",
"properties": {
"id": {
"description": "Only these guest ids.",
"type": "array",
"items": {
"type": "string"
}
},
"availability_item_id": {
"description": "Only guests of these departures (availability item ids).",
"type": "array",
"items": {
"type": "string"
}
},
"booking_id": {
"description": "Only guests of this booking.",
"type": "string"
},
"phone": {
"description": "Guest phone number.",
"type": "string"
},
"name": {
"description": "Guest name.",
"type": "string"
},
"cancellation_date": {
"description": "Cancellation date yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"cancelled_after": {
"description": "ISO 8601 time: only guests cancelled after it.",
"type": "string"
},
"limit": {
"description": "Results per page (default 30, maximum 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Number of results to skip (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢trekksoft_get_guest(guest_id)
Get one guest by id, including booking link and check-in state. TrekkSoft API: GET /guest/{id}.
Input Schema
{
"type": "object",
"properties": {
"guest_id": {
"type": "string",
"description": "The guest id (from trekksoft_list_guests)."
}
},
"required": [
"guest_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢trekksoft_list_availabilities(activity_id, title_like, merchant, type, seats, ...)
List departures with free seats across activities, for a date range. TrekkSoft API: GET /availabilities.
Input Schema
{
"type": "object",
"properties": {
"activity_id": {
"description": "Only these activity ids.",
"type": "array",
"items": {
"type": "string"
}
},
"title_like": {
"description": "Part of the activity title.",
"type": "string"
},
"merchant": {
"description": "Merchant code.",
"type": "string"
},
"type": {
"description": "Availability types.",
"type": "array",
"items": {
"type": "string",
"enum": [
"trip",
"day_trip",
"rental",
"voucher"
]
}
},
"seats": {
"description": "Minimum free seats.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"starts_from": {
"description": "First start date yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"starts_to": {
"description": "Last start date yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"departure_time": {
"description": "Departure time hh:mm:ss.",
"type": "string"
},
"only_not_booked": {
"description": "Only departures without bookings.",
"type": "boolean"
},
"only_booked": {
"description": "Only departures with bookings.",
"type": "boolean"
},
"language": {
"description": "Language code such as en, de, fr (default en).",
"type": "string"
},
"limit": {
"description": "Results per page (default 30, maximum 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Number of results to skip (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢trekksoft_list_activity_availabilities(activity_id, type, seats, starts_from, starts_to, ...)
List departures with free seats for one activity. TrekkSoft API: GET /activities/{activityId}/availabilities.
Input Schema
{
"type": "object",
"properties": {
"activity_id": {
"type": "string",
"description": "The activity id."
},
"type": {
"description": "Availability types.",
"type": "array",
"items": {
"type": "string",
"enum": [
"trip",
"day_trip",
"rental",
"voucher"
]
}
},
"seats": {
"description": "Minimum free seats.",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 9007199254740991
},
"starts_from": {
"description": "First start date yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"starts_to": {
"description": "Last start date yyyy-mm-dd.",
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$"
},
"departure_time": {
"description": "Departure time hh:mm:ss.",
"type": "string"
},
"only_not_booked": {
"description": "Only departures without bookings.",
"type": "boolean"
},
"only_booked": {
"description": "Only departures with bookings.",
"type": "boolean"
},
"language": {
"description": "Language code such as en, de, fr (default en).",
"type": "string"
},
"limit": {
"description": "Results per page (default 30, maximum 100).",
"type": "integer",
"exclusiveMinimum": 0,
"maximum": 100
},
"offset": {
"description": "Number of results to skip (default 0).",
"type": "integer",
"minimum": 0,
"maximum": 9007199254740991
}
},
"required": [
"activity_id"
],
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢trekksoft_list_merchants(id, slug, language)
List the merchants your key pair can access. TrekkSoft API: GET /merchants.
Input Schema
{
"type": "object",
"properties": {
"id": {
"description": "Only these merchant ids.",
"type": "array",
"items": {
"type": "string"
}
},
"slug": {
"description": "Merchant code.",
"type": "string"
},
"language": {
"description": "Language code such as en, de, fr (default en).",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}🟢trekksoft_list_shop_items(id, merchant_id, category_id, active, language)
List shop items (extras sold with activities), filterable by merchant, category and active state. TrekkSoft API: GET /shop/items.
Input Schema
{
"type": "object",
"properties": {
"id": {
"description": "Only these item ids.",
"type": "array",
"items": {
"type": "string"
}
},
"merchant_id": {
"description": "Only items of these merchant ids.",
"type": "array",
"items": {
"type": "string"
}
},
"category_id": {
"description": "Only items of these category ids.",
"type": "array",
"items": {
"type": "string"
}
},
"active": {
"description": "Only active (true) or inactive (false) items.",
"type": "boolean"
},
"language": {
"description": "Language code such as en, de, fr (default en).",
"type": "string"
}
},
"$schema": "https://json-schema.org/draft/2020-12/schema"
}Community
Evidence