
Read-only city guides and public itineraries for family and group trips.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Use this when someone wants to save, share, or keep working on a plan from a public guide or itinerary. Returns the WonderKit web links for that city guide, itinerary, and the guest planner. This server cannot save or share anything itself.
City name or WonderKit city key, such as "Paris" or "paris-france".
Optional itinerary slug to link a specific public plan.
Use this when someone wants to save, share, or keep working on a plan from a public guide or itinerary. Returns the WonderKit web links for that city guide, itinerary, and the guest planner. This server cannot save or share anything itself.
| Argument | Type | Description |
|---|---|---|
| city | string | City name or WonderKit city key, such as "Paris" or "paris-france". |
| slug | string | Optional itinerary slug to link a specific public plan. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "City name or WonderKit city key, such as \"Paris\" or \"paris-france\"."
},
"slug": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "Optional itinerary slug to link a specific public plan."
}
}
}Use this when someone asks what to do in one city: weekend ideas, events, food, or kid-friendly, date-night, or group activities. Returns published picks from the WonderKit city guide and the page URL. Returns single activities, not multi-day plans, and cannot see anyone's own trips.
| Argument | Type | Description |
|---|---|---|
| city* | string | City name or WonderKit city key, such as "Paris" or "paris-france". |
| query | string | Optional words to match against activity titles and descriptions, such as "museums" or "dinner". Plurals match singulars. |
| audience | string | Who the plan is for: families, friends, or couples. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"city"
],
"properties": {
"city": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "City name or WonderKit city key, such as \"Paris\" or \"paris-france\"."
},
"query": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "Optional words to match against activity titles and descriptions, such as \"museums\" or \"dinner\". Plurals match singulars."
},
"audience": {
"enum": [
"families",
"friends",
"couples"
],
"type": "string",
"description": "Who the plan is for: families, friends, or couples."
}
}
}Use this when someone wants the full plan for one public itinerary, by its slug: day-by-day or themed stops with real venues and map links, rainy-day and where-to-eat sections, and the best season. Returns dayCount and stopCount (anchors plus backups; before 2026-09-28 stopCount held the day count), the page URL, and planUrl, which opens the WonderKit planner prefilled from this plan. Read-only; it cannot change a plan.
| Argument | Type | Description |
|---|---|---|
| city* | string | City name or WonderKit city key, such as "Paris" or "paris-france". |
| slug* | string | Itinerary slug from list_itineraries or search_itineraries, such as "3-day-weekend-for-couples". |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"city",
"slug"
],
"properties": {
"city": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "City name or WonderKit city key, such as \"Paris\" or \"paris-france\"."
},
"slug": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "Itinerary slug from list_itineraries or search_itineraries, such as \"3-day-weekend-for-couples\"."
}
}
}Use this when someone asks which cities WonderKit covers or needs a valid city key. Lists cities that have a published city guide of real things to do, with their keys. Reads public guides only; it cannot plan, save, or look up a private trip.
No arguments.
{
"type": "object",
"properties": {}
}Use this when someone wants to browse WonderKit's public multi-day itineraries and place guides, for all cities or one city and audience. Plans that are in season this month come first. Each summary has dayCount (days or themed sections) and stopCount (anchors plus backups; before 2026-09-28 stopCount held the day count). Browses by city and audience only; it does not rank by a free-text description. Does not book or edit a trip.
| Argument | Type | Description |
|---|---|---|
| city | string | City name or WonderKit city key, such as "Paris" or "paris-france". |
| audience | string | Who the plan is for: families, friends, or couples. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "City name or WonderKit city key, such as \"Paris\" or \"paris-france\"."
},
"audience": {
"enum": [
"families",
"friends",
"couples"
],
"type": "string",
"description": "Who the plan is for: families, friends, or couples."
}
}
}Use this when someone wants to start planning their own trip to a destination in WonderKit. Returns one guest-planner link with the city (and vibe) filled in, plus a one-line description. It creates nothing and cannot book; the person adds dates and travelers in the planner. The link is a planner, not a citable guide page.
| Argument | Type | Description |
|---|---|---|
| city* | string | Destination as the person said it, such as "Lisbon" or "Asheville, NC". Any city works. |
| vibe | string | The feel they want, if they said. |
| endDate | string | Last day, YYYY-MM-DD, if they gave one. |
| kidsAges | array | Ages of children travelling, if any. |
| startDate | string | First day, YYYY-MM-DD, if they gave one. |
| travelers | integer | How many people are going. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"required": [
"city"
],
"properties": {
"city": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "Destination as the person said it, such as \"Lisbon\" or \"Asheville, NC\". Any city works."
},
"vibe": {
"enum": [
"outdoors",
"hiking",
"culture",
"food",
"romantic",
"beach",
"relaxed",
"mix",
"family"
],
"type": "string",
"description": "The feel they want, if they said."
},
"endDate": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
"description": "Last day, YYYY-MM-DD, if they gave one."
},
"kidsAges": {
"type": "array",
"items": {
"type": "integer",
"maximum": 17,
"minimum": 0
},
"maxItems": 12,
"description": "Ages of children travelling, if any."
},
"startDate": {
"type": "string",
"format": "date",
"pattern": "^(?:(?:\\d\\d[2468][048]|\\d\\d[13579][26]|\\d\\d0[48]|[02468][048]00|[13579][26]00)-02-29|\\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\\d|30)|(?:02)-(?:0[1-9]|1\\d|2[0-8])))$",
"description": "First day, YYYY-MM-DD, if they gave one."
},
"travelers": {
"type": "integer",
"maximum": 50,
"minimum": 1,
"description": "How many people are going."
}
}
}Use this when someone describes the trip they want, such as "romantic weekend in October", "museums with kids", or "Christmas markets", and needs matching public itineraries across cities. Ranks by the words they used, who it is for, and season fit. Pass a city to stay in one city. Do not use it to create or save a trip; it only reads published guides.
| Argument | Type | Description |
|---|---|---|
| city | string | City name or WonderKit city key, such as "Paris" or "paris-france". |
| limit | integer | How many results to return, up to 8. |
| month | integer | Travel month, 1-12. Boosts plans whose peak months include it. Wins over season. |
| query | string | What they want, in their words, such as "romantic weekend", "museums with kids", or "fall foliage". Plurals match singulars. |
| shape | string | day-plan for a day-by-day plan, places-guide for a themed list of places. |
| season | string | Season they are travelling in. "now" means the current month. Northern-hemisphere seasons. |
| audience | string | Who the plan is for: families, friends, or couples. |
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"city": {
"type": "string",
"maxLength": 80,
"minLength": 1,
"description": "City name or WonderKit city key, such as \"Paris\" or \"paris-france\"."
},
"limit": {
"type": "integer",
"maximum": 8,
"minimum": 1,
"description": "How many results to return, up to 8."
},
"month": {
"type": "integer",
"maximum": 12,
"minimum": 1,
"description": "Travel month, 1-12. Boosts plans whose peak months include it. Wins over season."
},
"query": {
"type": "string",
"maxLength": 120,
"minLength": 1,
"description": "What they want, in their words, such as \"romantic weekend\", \"museums with kids\", or \"fall foliage\". Plurals match singulars."
},
"shape": {
"enum": [
"day-plan",
"places-guide"
],
"type": "string",
"description": "day-plan for a day-by-day plan, places-guide for a themed list of places."
},
"season": {
"enum": [
"winter",
"spring",
"summer",
"fall",
"now"
],
"type": "string",
"description": "Season they are travelling in. \"now\" means the current month. Northern-hemisphere seasons."
},
"audience": {
"enum": [
"families",
"friends",
"couples"
],
"type": "string",
"description": "Who the plan is for: families, friends, or couples."
}
}
}