
tickadoo Experiences and Events
This is a read-only travel and entertainment discovery layer that exposes 13,000+ bookable experiences across 681 cities through 17 MCP tools. You get structured search with 11 filters (audience, wheelchair access, price, duration, tags), mood-based discovery, availability checking with real pricing, and city guides with transport estimates. Every search response includes agent-oriented metadata like conversation starters, filter hints, and booking urgency signals. It returns checkout deep links but doesn't handle transactions. Useful when you're building assistants that need to answer "what should I do in Berlin this weekend" or "find wheelchair-accessible shows tonight" without maintaining your own activity inventory. Runs as hosted HTTP or local stdio, no API key required.
- GitHub stars
- 2
- tools
- 27
- transport
- HTTP
- last updated
- Oct 24, 2026
Install
From registry metadata$ npx add-mcp https://mcp.tickadoo.com/mcp --name tickadoo-mcpRun in your terminal. add-mcp asks which agents to add it to (Claude Code, Codex, Cursor and more). Add -g to install it for every project.
Review the command, arguments and environment values before installing. MCP servers run with your local permissions.
Other ways
Claude Code
$ claude mcp add --transport http tickadoo-mcp https://mcp.tickadoo.com/mcpRun in your terminal. Add --scope user to make it available in every project.
Tools
Verified live · 27 toolsVerified live against the running server on Nov 6, 2026.
search_experiencesUse this when the user names a city plus a category, query, or filter set and wants a ranked list of bookable experiences. `query` matches on experience NAME (and venue), so it suits a title or keyword ("Lion King", "river cruise"); for mood or theme use search_by_mood, and fo...13 params
Use this when the user names a city plus a category, query, or filter set and wants a ranked list of bookable experiences. `query` matches on experience NAME (and venue), so it suits a title or keyword ("Lion King", "river cruise"); for mood or theme use search_by_mood, and fo...
categorystringcitystringformatstringjson · textdefault: jsonindoor_outdoorstringindoor · outdoor · eitherlanguagestringlimitintegermax_pricenumbermin_ratingnumbermin_review_countintegerpopular_onlybooleanquerystringrestrict_to_top_ratedbooleantagsarraysearch_local_experiencesUse this when the user mentions a place, neighbourhood, landmark, or area but does not give exact coordinates. Examples: 'near the Louvre', 'in Trastevere', 'around Times Square', "walking distance from St Paul's Cathedral". Returns experiences matched first by exact venue/nei...10 params
Use this when the user mentions a place, neighbourhood, landmark, or area but does not give exact coordinates. Examples: 'near the Louvre', 'in Trastevere', 'around Times Square', "walking distance from St Paul's Cathedral". Returns experiences matched first by exact venue/nei...
citystringdate_fromstringdate_tostringformatstringjson · textdefault: jsonlanguagestringlimitintegerneighbourhoodstringplace_hint*stringradius_hintstringwalking · short_drive · city_widetagsarrayfind_nearby_experiencesUse this when the client already holds exact latitude and longitude coordinates and wants experiences near that point. When only a place name, landmark, or neighbourhood is known, use search_local_experiences, which accepts coarse place hints and needs no coordinates.7 params
Use this when the client already holds exact latitude and longitude coordinates and wants experiences near that point. When only a place name, landmark, or neighbourhood is known, use search_local_experiences, which accepts coarse place hints and needs no coordinates.
categorystringformatstringjson · textdefault: jsonlanguagestringlatitude*numberlimitintegerlongitude*numberradius_kmnumberwhats_on_tonightUse this when the user asks what is on in a city tonight. Returns evening-appropriate experiences currently on sale, with out-of-season products filtered out, evening-led options ranked first, and multi-day passes, travel cards and transport products ranked last. Top results c...5 params
Use this when the user asks what is on in a city tonight. Returns evening-appropriate experiences currently on sale, with out-of-season products filtered out, evening-led options ranked first, and multi-day passes, travel cards and transport products ranked last. Top results c...
categorystringcity*stringformatstringjson · textdefault: jsonlanguagestringmax_resultsintegerget_last_minuteUse this when the user wants something to do within the next few hours. Returns currently-on-sale experiences with seasonal products filtered out, ranked by popularity. Rows may include start_time, countdown_text, and seats_remaining hints when known, but none are guaranteed:...6 params
Use this when the user wants something to do within the next few hours. Returns currently-on-sale experiences with seasonal products filtered out, ranked by popularity. Rows may include start_time, countdown_text, and seats_remaining hints when known, but none are guaranteed:...
city*stringformatstringjson · textdefault: jsonhoursintegerlanguagestringlatitudenumberlongitudenumberget_whats_on_this_weekUse this when the user wants ideas for the coming week in a city. Returns a ranked list of currently on-sale experiences (search rows) with out-of-season products dropped, not a day-by-day calendar. Assemble any weekly structure yourself and verify specific dates with get_avai...3 params
Use this when the user wants ideas for the coming week in a city. Returns a ranked list of currently on-sale experiences (search rows) with out-of-season products dropped, not a day-by-day calendar. Assemble any weekly structure yourself and verify specific dates with get_avai...
city*stringformatstringjson · textdefault: jsonlanguagestringrecommend_experiencesUse this when the user describes what they want in natural language rather than naming a category. Parses the query for audience, mood, constraints, occasion, and time of day, then returns scored recommendations with a reason field explaining the match.7 params
Use this when the user describes what they want in natural language rather than naming a category. Parses the query for audience, mood, constraints, occasion, and time of day, then returns scored recommendations with a reason field explaining the match.
citystringdatestringformatstringjson · textdefault: jsonlanguagestringlimitintegerpaxintegerquery*stringget_city_highlightsUse this when the user wants an orientation overview of a city for trip planning. Returns a ranked list of the city's most popular bookable experiences (search rows); derive the dominant categories and price levels from those rows rather than expecting a structured guide payload.3 params
Use this when the user wants an orientation overview of a city for trip planning. Returns a ranked list of the city's most popular bookable experiences (search rows); derive the dominant categories and price levels from those rows rather than expecting a structured guide payload.
city*stringformatstringjson · textdefault: jsonlanguagestringsearch_experiences_by_topicUse this when the user asks for bookable experiences by keyword or topic in a city. Returns a ranked search of bookable experience rows. The topic argument is accepted but does no filtering, so every topic returns the same city ranking. The payload contains no tips text or log...4 params
Use this when the user asks for bookable experiences by keyword or topic in a city. Returns a ranked search of bookable experience rows. The topic argument is accepted but does no filtering, so every topic returns the same city ranking. The payload contains no tips text or log...
city*stringformatstringjson · textdefault: jsonlanguagestringtopicstringtransport · money · safety · culture · food · weathercompare_experiencesUse this when the user wants a side-by-side comparison of 2-5 specific products. Pass the slug for each. Returns a comparison table plus per-axis winners (value, rating, popularity, family-fit).3 params
Use this when the user wants a side-by-side comparison of 2-5 specific products. Pass the slug for each. Returns a comparison table plus per-axis winners (value, rating, popularity, family-fit).
formatstringjson · textdefault: jsonlanguagestringslugs*arrayget_hidden_gemsUse this when the user wants lower-profile options rather than headline bestsellers. Excludes Bestseller, hop-on-hop-off, and CityPass tagged products and prefers highly rated rows with fewer reviews; falls back to the standard ranked list when a city has too few qualifying ro...4 params
Use this when the user wants lower-profile options rather than headline bestsellers. Excludes Bestseller, hop-on-hop-off, and CityPass tagged products and prefers highly rated rows with fewer reviews; falls back to the standard ranked list when a city has too few qualifying ro...
city*stringformatstringjson · textdefault: jsonlanguagestringmax_resultsintegerget_family_dayUse this when the user wants family-suitable options for a day in one city. Returns a flat ranked list of experiences (search rows) with family-tagged rows promoted and out-of-season products dropped, not a structured morning/lunch/afternoon/evening plan. `date` selects which...6 params
Use this when the user wants family-suitable options for a day in one city. Returns a flat ranked list of experiences (search rows) with family-tagged rows promoted and out-of-season products dropped, not a structured morning/lunch/afternoon/evening plan. `date` selects which...
budgetnumbercity*stringdatestringformatstringjson · textdefault: jsonkids_agesarraylanguagestringget_date_nightUse this when the user wants an evening for two. Returns a flat ranked list of experiences (search rows) with romantic-tagged rows promoted and out-of-season products dropped, not a structured pre-dinner/dinner/show arc. Promotion is a re-rank, not a filter, so rows are not gu...5 params
Use this when the user wants an evening for two. Returns a flat ranked list of experiences (search rows) with romantic-tagged rows promoted and out-of-season products dropped, not a structured pre-dinner/dinner/show arc. Promotion is a re-rank, not a filter, so rows are not gu...
budgetstringlow · medium · highcity*stringdatestringformatstringjson · textdefault: jsonlanguagestringget_itinerary_candidatesUse this when the user wants a multi-day plan for a single city. Returns a flat ranked candidate list of experiences (search rows), not structured day slots or a running cost. Arrange the candidates into days yourself and compute totals only from returned price fields.8 params
Use this when the user wants a multi-day plan for a single city. Returns a flat ranked candidate list of experiences (search rows), not structured day slots or a running cost. Arrange the candidates into days yourself and compute totals only from returned price fields.
audiencestringfamily · couple · solo · group · businessbudgetstringlow · medium · highcity*stringdays*integerformatstringjson · textdefault: jsoninterestsstringlanguagestringpacestringrelaxed · moderate · packedlist_citiesUse this when the user wants to browse supported cities before searching. Returns city names, slugs, country codes, and product counts.4 params
Use this when the user wants to browse supported cities before searching. Returns city names, slugs, country codes, and product counts.
countrystringformatstringjson · textdefault: jsonlanguagestringlimitintegerget_experience_detailsUse this when the user selects a specific experience from search results and needs richer product, location, supplier, and booking fields. Accepts either product_id or slug.4 params
Use this when the user selects a specific experience from search results and needs richer product, location, supplier, and booking fields. Accepts either product_id or slug.
formatstringjson · textdefault: jsonlanguagestringproduct_idstringslugstringget_show_guideUse this when the user asks about a specific show: how long it is, age guidance, venue and address, typical curtain times and dark days, who it is good for, and this week's performances. One rich guide record fusing live catalogue data with theatre expertise. Accepts slug or p...3 params
Use this when the user asks about a specific show: how long it is, age guidance, venue and address, typical curtain times and dark days, who it is good for, and this week's performances. One rich guide record fusing live catalogue data with theatre expertise. Accepts slug or p...
city_slugstringproduct_idstringslugstringget_theatre_weekendUse this when the user asks what theatre is on this weekend or next. Server-side date math resolves the Friday/Saturday/Sunday dates; returns theatre shows in the city with scheduled performances on those days, grouped by day. Schedule data, not live seat inventory.6 params
Use this when the user asks what theatre is on this weekend or next. Server-side date math resolves the Friday/Saturday/Sunday dates; returns theatre shows in the city with scheduled performances on those days, grouped by day. Schedule data, not live seat inventory.
citystringcity_slugstringformatstringjson · textdefault: jsonlanguagestringlimitintegerweekendstringthis · nextask_theatre_conciergeUse this when the user asks a free-text theatre question (best musical for kids, romantic show tonight, cheap comedy). Returns a concise grounded answer plus cited theatre products with booking URLs. Intent-aware (budget, audience, timeframe) via the concierge seam.6 params
Use this when the user asks a free-text theatre question (best musical for kids, romantic show tonight, cheap comedy). Returns a concise grounded answer plus cited theatre products with booking URLs. Intent-aware (budget, audience, timeframe) via the concierge seam.
citystringcity_slugstringformatstringjson · textdefault: jsonlanguagestringlimitintegerquestionstringfind_theatre_for_occasionUse this when the user has an occasion: family outing, date night, group celebration, solo culture trip, business entertainment. Returns ranked theatre shows with fit scores and reasons, honouring party ages and an optional date.8 params
Use this when the user has an occasion: family outing, date night, group celebration, solo culture trip, business entertainment. Returns ranked theatre shows with fit scores and reasons, honouring party ages and an optional date.
citystringcity_slugstringdatestringformatstringjson · textdefault: jsonlanguagestringlimitintegeroccasionstringfamily_outing · date_night · group_celebration · solo_culture · business_entertainmentpartyobjectget_related_experiencesUse this when a widget or client holds a selected product_id and needs related products to pair with it, do after it, find nearby, or find similar alternatives. Returns cached graph and semantic related products for trio-style widgets.5 params
Use this when a widget or client holds a selected product_id and needs related products to pair with it, do after it, find nearby, or find similar alternatives. Returns cached graph and semantic related products for trio-style widgets.
contextstringpair · after · nearby · similardefault: pairformatstringjson · textdefault: jsonlanguagestringmax_resultsintegerproduct_id*stringget_availabilityUse this when the user is ready to check live bookable dates, times, prices, or remaining spaces for one selected product. This is the live supplier-check tool; pass product_id from search or slug plus city_slug. Slot price.amount is in MINOR currency units (pence/cents): amou...10 params
Use this when the user is ready to check live bookable dates, times, prices, or remaining spaces for one selected product. This is the live supplier-check tool; pass product_id from search or slug plus city_slug. Slot price.amount is in MINOR currency units (pence/cents): amou...
as_ofstringcity_slugstringdate_fromstringdate_tostringfreshbooleanidempotency_keystringparty_sizeintegerpreferred_timestringproduct_idstringslugstringcheck_availabilityUse this when the user has picked a specific experience and asks about exactly one date: whether it is available that day, what it costs for a party, or a booking link for that date. For browsing a date range or listing upcoming times and live slot prices, use get_availability.5 params
Use this when the user has picked a specific experience and asks about exactly one date: whether it is available that day, what it costs for a party, or a booking link for that date. For browsing a date range or listing upcoming times and live slot prices, use get_availability.
date*stringformatstringjson · textdefault: jsonlanguagestringparty_sizeintegerslug*stringsearch_by_moodUse this when the user describes the feeling or vibe they want rather than a category, such as romantic, relaxing, adventurous, family fun, foodie, luxury, or rainy day. Maps the mood to preset search filters and returns matching experiences.5 params
Use this when the user describes the feeling or vibe they want rather than a category, such as romantic, relaxing, adventurous, family fun, foodie, luxury, or rainy day. Maps the mood to preset search filters and returns matching experiences.
city*stringformatstringjson · textdefault: jsonlanguagestringlimitintegermood*stringadventurous · romantic · relaxing · family_fun · cultural · thrill_seekingget_transfer_infoUse this when the user is arriving in a supported city and needs transfer guidance from an airport, station, or port to a hotel coordinate. Returns taxi, metro, bus, and train estimates with durations, costs, and directions.6 params
Use this when the user is arriving in a supported city and needs transfer guidance from an airport, station, or port to a hotel coordinate. Returns taxi, metro, bus, and train estimates with durations, costs, and directions.
city*stringformatstringjson · textdefault: jsonfrom_type*stringairport · station · portlanguagestringto_latitude*numberto_longitude*numberrender_experience_cardsUse when visual cards would help present a discovery result from a supported search tool. Pass the product_id values from that result as experience_ids, never full product rows, and choose a render_type. Optionally pass render_context.intent_summary (a short phrase describing...4 params
Use when visual cards would help present a discovery result from a supported search tool. Pass the product_id values from that result as experience_ids, never full product rows, and choose a render_type. Optionally pass render_context.intent_summary (a short phrase describing...
experience_ids*arrayidempotency_keystringrender_contextobjectrender_type*stringcarousel · grid · comparison · singlereport_quality_signalUse this to push a quality signal back to tickadoo about an experience or recommendation you previously surfaced. Examples: stale availability, a failed click-through, a supplier outage, or misleading content. Requires a real forward-event request_id returned within the last 3...3 params
Use this to push a quality signal back to tickadoo about an experience or recommendation you previously surfaced. Examples: stale availability, a failed click-through, a supplier outage, or misleading content. Requires a real forward-event request_id returned within the last 3...
notesstringrequest_id*stringsignal_type*stringstale_availability · post_click_failure · supplier_outage · content_quality_issue · duplicate_listing · price_mismatchSponsors
Readme
tickadoo MCP: live experiences for AI assistants
tickadoo's MCP server lets AI assistants discover and compare theatre, tours, attractions, hidden gems, and other live experiences worldwide. The full MCP surface can return live availability and tickadoo booking links. No account or API key is required.
Try it
- "What's on in London tonight?"
- "Plan a 3-day food itinerary in Paris."
- "Compare walking tours in Rome."
Connect
Remote (Streamable HTTP), no install:
{ "mcpServers": { "tickadoo": { "url": "https://mcp.tickadoo.com/mcp" } } }
Or the npm bridge for stdio clients:
npx -y @tickadoo/mcp-server
tickadoo MCP Server
@tickadoo/mcp-server is the local stdio entrypoint for tickadoo MCP. Since v2.0.0 it is a thin bridge to the canonical remote server at:
https://mcp.tickadoo.com/mcp
Meta Muse connector
Directory submission pack and the brief Muse should fetch live in connectors/muse/. Stable brief:
Details
- Repository
- github.com/tickadoo/tickadoo-mcp
- Website
- mcp.tickadoo.com
- Transport
- HTTP
- Registry
- MCP registry, active
- Resources
- 4
- Tools verified
- Nov 6, 2026