gradeNot graded
search_experiencesAnswer
Search the bookable experience catalogue. Filter by location, date range, or party size — all parameters are optional, so omit them all to return everything. Returns id, name, location, and price for each match; use the id with other tools.
View tool JSON
{
"name": "search_experiences",
"kind": "answer",
"impl": "imperative",
"description": "Search the bookable experience catalogue. Filter by location, date range, or party size — all parameters are optional, so omit them all to return everything. Returns id, name, location, and price for each match; use the id with other tools.",
"inputSchema": {
"type": "object",
"properties": {
"location": {
"type": "string",
"description": "City name to filter by, e.g. 'Melbourne'. Omit to include all cities."
},
"partySize": {
"type": "number",
"description": "Number of people the experience must accommodate."
},
"startDate": {
"type": "string",
"format": "date",
"description": "Earliest acceptable date (YYYY-MM-DD)."
},
"endDate": {
"type": "string",
"format": "date",
"description": "Latest acceptable date (YYYY-MM-DD)."
},
"onlyWishlist": {
"type": "boolean",
"description": "If true, search only within the user's saved wishlist."
}
}
},
"page": "/webmcp-experiences-platform/"
}get_wishlistAnswer
List the experiences the user has saved to their wishlist (id and name for each). Takes no parameters. Call this before toggle_wishlist if you need to know what is already saved.
View tool JSON
{
"name": "get_wishlist",
"kind": "answer",
"impl": "imperative",
"description": "List the experiences the user has saved to their wishlist (id and name for each). Takes no parameters. Call this before toggle_wishlist if you need to know what is already saved.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/webmcp-experiences-platform/"
}toggle_wishlistAction
Add or remove ONE experience from the wishlist. This FLIPS the current state: if the experience is already saved it is removed, otherwise it is added. If the user only wants to add (not remove), call get_wishlist first to check whether it is already there.
View tool JSON
{
"name": "toggle_wishlist",
"kind": "act",
"impl": "imperative",
"description": "Add or remove ONE experience from the wishlist. This FLIPS the current state: if the experience is already saved it is removed, otherwise it is added. If the user only wants to add (not remove), call get_wishlist first to check whether it is already there.",
"inputSchema": {
"type": "object",
"properties": {
"experienceId": {
"type": "string",
"description": "ID of the experience to toggle, taken from search_experiences results."
}
},
"required": [
"experienceId"
]
},
"page": "/webmcp-experiences-platform/"
}get_availabilityAnswer
Get the list of available booking dates (each YYYY-MM-DD) for one experience. Use these dates when calling initiate_booking.
View tool JSON
{
"name": "get_availability",
"kind": "answer",
"impl": "imperative",
"description": "Get the list of available booking dates (each YYYY-MM-DD) for one experience. Use these dates when calling initiate_booking.",
"inputSchema": {
"type": "object",
"properties": {
"experienceId": {
"type": "string",
"description": "ID of the experience, taken from search_experiences results."
}
},
"required": [
"experienceId"
]
},
"page": "/webmcp-experiences-platform/"
}get_experience_detailsAnswer
Get full details for one experience — long description, inclusions, star rating, location, price, and session times. Use this before booking to answer questions about what an experience involves.
View tool JSON
{
"name": "get_experience_details",
"kind": "answer",
"impl": "imperative",
"description": "Get full details for one experience — long description, inclusions, star rating, location, price, and session times. Use this before booking to answer questions about what an experience involves.",
"inputSchema": {
"type": "object",
"properties": {
"experienceId": {
"type": "string",
"description": "ID of the experience, taken from search_experiences results."
}
},
"required": [
"experienceId"
]
},
"page": "/webmcp-experiences-platform/"
}initiate_bookingSensitive Action
Start the checkout flow for an experience on a chosen date and open the checkout page. This begins a booking but does NOT complete payment — confirmation is a separate step the user takes. Mutating action.
View tool JSON
{
"name": "initiate_booking",
"kind": "transact",
"impl": "imperative",
"description": "Start the checkout flow for an experience on a chosen date and open the checkout page. This begins a booking but does NOT complete payment — confirmation is a separate step the user takes. Mutating action.",
"inputSchema": {
"type": "object",
"properties": {
"experienceId": {
"type": "string",
"description": "ID of the experience to book, from search_experiences results."
},
"date": {
"type": "string",
"format": "date",
"description": "Booking date (YYYY-MM-DD); should be one returned by get_availability."
},
"partySize": {
"type": "number",
"description": "Number of people. Optional; defaults to 2."
}
},
"required": [
"experienceId",
"date"
]
},
"page": "/webmcp-experiences-platform/"
}generate_calendar_urlAction
Create an 'add to calendar' link (Google, Outlook, or Apple) for a booked experience. If experienceId and date are omitted, it uses the user's most recent booking — so after initiate_booking you can call this with just the provider.
View tool JSON
{
"name": "generate_calendar_url",
"kind": "act",
"impl": "imperative",
"description": "Create an 'add to calendar' link (Google, Outlook, or Apple) for a booked experience. If experienceId and date are omitted, it uses the user's most recent booking — so after initiate_booking you can call this with just the provider.",
"inputSchema": {
"type": "object",
"properties": {
"provider": {
"type": "string",
"enum": [
"google",
"outlook",
"apple"
],
"description": "Which calendar to generate the link for."
},
"experienceId": {
"type": "string",
"description": "Experience ID. Optional; defaults to the most recent booking."
},
"date": {
"type": "string",
"format": "date",
"description": "Event date (YYYY-MM-DD). Optional; defaults to the most recent booking."
}
},
"required": [
"provider"
]
},
"page": "/webmcp-experiences-platform/"
}audit_capabilitiesAnswer
Return the current page state — the active route, the experience currently in focus (if any), and the wishlist count. Call this to re-orient if a previous result looks stale or after the page navigates. Read-only; takes no parameters.
View tool JSON
{
"name": "audit_capabilities",
"kind": "answer",
"impl": "imperative",
"description": "Return the current page state — the active route, the experience currently in focus (if any), and the wishlist count. Call this to re-orient if a previous result looks stale or after the page navigates. Read-only; takes no parameters.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/webmcp-experiences-platform/"
}track_discoveryAnswer
Telemetry. Call this once, immediately after you discover this site's WebMCP tools, to log that an agent connected. Report your own name and how many tools you found.
View tool JSON
{
"name": "track_discovery",
"kind": "answer",
"impl": "imperative",
"description": "Telemetry. Call this once, immediately after you discover this site's WebMCP tools, to log that an agent connected. Report your own name and how many tools you found.",
"inputSchema": {
"type": "object",
"properties": {
"agentName": {
"type": "string",
"description": "Your agent or client name, e.g. 'Gemini in Chrome' or 'Claude'."
},
"capabilitiesCount": {
"type": "number",
"description": "Number of tools you discovered via getTools()."
}
},
"required": [
"agentName",
"capabilitiesCount"
]
},
"page": "/webmcp-experiences-platform/"
}filter_by_locationAction
Filters the catalog to a specific city or region.
View tool JSON
{
"name": "filter_by_location",
"kind": "act",
"impl": "declarative",
"description": "Filters the catalog to a specific city or region.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/webmcp-experiences-platform/"
}filter_by_party_sizeAction
Sets the number of guests for the adventure.
View tool JSON
{
"name": "filter_by_party_size",
"kind": "act",
"impl": "declarative",
"description": "Sets the number of guests for the adventure.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/webmcp-experiences-platform/"
}filter_start_dateAction
The earliest date the user is available.
View tool JSON
{
"name": "filter_start_date",
"kind": "act",
"impl": "declarative",
"description": "The earliest date the user is available.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/webmcp-experiences-platform/"
}filter_end_dateAction
The latest date the user is available.
View tool JSON
{
"name": "filter_end_date",
"kind": "act",
"impl": "declarative",
"description": "The latest date the user is available.",
"inputSchema": {
"type": "object",
"properties": {}
},
"page": "/webmcp-experiences-platform/"
}