Serveur MCP

TableJourney food travel

com.tablejourney/food-travel
Cartes et localisation Voyage et hôtellerie Public et accessible MCP 2025-11-25

Ce que fait ce MCP

Provides verified food venues, dishes, festivals, itineraries, tours, stays, car hire, and city-based food planning across covered destinations.

car_hire
Find car hire
Car hire partners that verifiably cover a city (read-only): one entry per partner with the pickup facts we checked and a tracked booking link. Empty list when no partner covers the city.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 't_carsArguments', 'required': ['country', 'city'], 'properties': {'city': {'type': 'string', 'title': 'City', 'description': "City slug or name, e.g. 'new-york-city' or 'New York City'. Unknown cities answer with did_you_mean."}, 'country': {'type': 'string', 'title': 'Country', 'description': "Country slug or name, e.g. 'italy'. Optional where city is given."}}}
Schéma de sortie
{'type': 'object', 'title': 't_carsOutput', 'required': ['result'], 'properties': {'result': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}, 'title': 'Result'}}}
cities
List covered cities
Every city the site covers (read-only), with the country and city slugs the other tools accept and the hub page URL. Call first when unsure of coverage.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 't_citiesArguments', 'properties': {'country': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Country', 'default': None, 'description': "Country slug to filter by, e.g. 'italy'."}}}
Schéma de sortie
{'type': 'object', 'title': 't_citiesOutput', 'required': ['result'], 'properties': {'result': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}, 'title': 'Result'}}}
dishes
Signature dishes of a city
Signature dishes of a city and where to eat them (read-only). Each item has a description, the venues resolved to ids and page URLs, and the page to cite; ranked by editorial score.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 't_dishesArguments', 'properties': {'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'City', 'default': None, 'description': "City slug or name, e.g. 'new-york-city' or 'New York City'. Unknown cities answer with did_you_mean."}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 20, 'description': 'Maximum results (1-100).'}, 'query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Query', 'default': None, 'description': 'Free text: a dish, ingredient, style or grape.'}, 'country': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Country', 'default': None, 'description': "Country slug or name, e.g. 'italy'. Optional where city is given."}}}
Schéma de sortie
{'type': 'object', 'title': 't_dishesOutput', 'required': ['result'], 'properties': {'result': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}, 'title': 'Result'}}}
experiences
Find tours and experiences
Bookable food tours, cooking classes, tastings and tickets for a city. Read-only. Each item has price, rating, review count, duration and a tracked `book` link. Ranked by relevance to `query` when given, otherwise by popularity.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 't_experiencesArguments', 'required': ['city'], 'properties': {'city': {'type': 'string', 'title': 'City', 'description': "City slug or name, e.g. 'new-york-city' or 'New York City'. Unknown cities answer with did_you_mean."}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 20, 'description': 'Maximum results (1-100).'}, 'query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Query', 'default': None, 'description': "Free text, e.g. 'cooking class', 'wine tasting', 'market tour'."}, 'country': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Country', 'default': None, 'description': "Country slug or name, e.g. 'italy'. Optional where city is given."}, 'food_only': {'type': 'boolean', 'title': 'Food Only', 'default': True, 'description': "Keep only products on the site's theme (food and drink, or wine). Set false for everything bookable in the city."}}}
Schéma de sortie
{'type': 'object', 'title': 't_experiencesOutput', 'required': ['result'], 'properties': {'result': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}, 'title': 'Result'}}}
festivals
Find food festivals
Food festivals with their next resolved dates (read-only). Filter by city, country, a date window and text. Each item carries starts_on/ends_on for the next edition, the organiser source URL and the page to cite.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 't_festivalsArguments', 'properties': {'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'City', 'default': None, 'description': "City slug or name, e.g. 'new-york-city' or 'New York City'. Unknown cities answer with did_you_mean."}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 20, 'description': 'Maximum results (1-100).'}, 'query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Query', 'default': None, 'description': 'Free text: festival name, food or drink.'}, 'country': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Country', 'default': None, 'description': "Country slug or name, e.g. 'italy'. Optional where city is given."}, 'date_to': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Date To', 'default': None, 'description': 'Latest start date to include, ISO.'}, 'date_from': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Date From', 'default': None, 'description': 'Earliest end date to include, ISO. Defaults to today.'}}}
Schéma de sortie
{'type': 'object', 'title': 't_festivalsOutput', 'required': ['result'], 'properties': {'result': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}, 'title': 'Result'}}}
itineraries
Editorial food itineraries
Editorial day-by-day food itineraries for a city (read-only): every venue resolved to an id, address, hours and page URL. Empty list when the city has none.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 't_itinerariesArguments', 'required': ['country', 'city'], 'properties': {'city': {'type': 'string', 'title': 'City', 'description': "City slug or name, e.g. 'new-york-city' or 'New York City'. Unknown cities answer with did_you_mean."}, 'country': {'type': 'string', 'title': 'Country', 'description': "Country slug or name, e.g. 'italy'. Optional where city is given."}}}
Schéma de sortie
{'type': 'object', 'title': 't_itinerariesOutput', 'required': ['result'], 'properties': {'result': {'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}, 'title': 'Result'}}}
place
Get one place
One venue in full by id (read-only): every field, provenance, hours, open_now_utc, the booking link and three nearby venues. Returns {error: ...} when the id is malformed or unknown.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 't_placeArguments', 'required': ['id'], 'properties': {'id': {'type': 'string', 'title': 'Id', 'description': "The id search_places returned: country/city/kind/slug, e.g. 'italy/rome/restaurants/roscioli'."}}}
plan_day
Plan a food day in a city
Compose a food day for one city (read-only): one best-scored open venue per slot from morning to evening, filtered by neighbourhood, dietary need and price tier, every stop open on the given date, plus one bookable experience. Also lists the titles of the editorial itineraries for the city, which are the better plan when one exists (fetch them with `itineraries`).
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 't_planArguments', 'required': ['country', 'city'], 'properties': {'city': {'type': 'string', 'title': 'City', 'description': "City slug or name, e.g. 'new-york-city' or 'New York City'. Unknown cities answer with did_you_mean."}, 'date': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Date', 'default': None, 'description': "ISO date, e.g. '2026-09-20'. Each stop is checked open at its slot time on that weekday."}, 'country': {'type': 'string', 'title': 'Country', 'description': "Country slug or name, e.g. 'italy'. Optional where city is given."}, 'dietary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Dietary', 'default': None, 'description': 'vegan, vegetarian, gluten-free, halal, kosher...'}, 'price_tier': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Price Tier', 'default': None, 'description': "The site's tier symbols for the country, e.g. '€€' or '$$$'."}, 'neighborhood': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Neighborhood', 'default': None, 'description': 'Neighbourhood name or slug to keep the day inside.'}}}
search_places
Search verified places
Search verified venues (read-only). Filter by text, city, kind (a topic such as restaurants, cafes, bakeries, markets, street-food, or a group: eat, drink, bake, do), cuisine, dietary, price tier, opening time, or near a coordinate. Results are ranked by relevance then editorial score and carry provenance (source URL, checked_on, open_status), hours, a page URL to cite and a tracked booking link where one exists. Returns at most `limit` items; an unknown city returns {did_you_mean: [...]} instead of a list.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 't_placesArguments', 'properties': {'city': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'City', 'default': None, 'description': "City slug or name, e.g. 'new-york-city' or 'New York City'. Unknown cities answer with did_you_mean."}, 'kind': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Kind', 'default': None, 'description': 'A topic slug (restaurants, cafes, bakeries, markets, street-food...) or a group: eat, drink, bake, do.'}, 'near': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Near', 'default': None, 'description': "'lat,lng' to search around a point; results then sort by distance."}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 20, 'description': 'Maximum results (1-100).'}, 'query': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Query', 'default': None, 'description': 'Free text: a venue name, dish, cuisine, neighbourhood or theme.'}, 'offset': {'type': 'integer', 'title': 'Offset', 'default': 0, 'description': 'Skip this many results, for paging.'}, 'country': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Country', 'default': None, 'description': "Country slug or name, e.g. 'italy'. Optional where city is given."}, 'cuisine': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Cuisine', 'default': None, 'description': "Cuisine slug or name, e.g. 'sichuan', 'neapolitan pizza'."}, 'dietary': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Dietary', 'default': None, 'description': 'vegan, vegetarian, gluten-free, halal, kosher...'}, 'open_at': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Open At', 'default': None, 'description': "'now', a weekday and time such as 'sunday 10:00', or an ISO datetime (UTC). Venues with unparseable hours are returned last, flagged."}, 'radius_km': {'type': 'number', 'title': 'Radius Km', 'default': 3.0, 'description': 'Radius for near, in km.'}, 'price_tier': {'anyOf': [{'type': 'string'}, {'type': 'null'}], 'title': 'Price Tier', 'default': None, 'description': "The site's tier symbols for the country, e.g. '€€' or '$$$'."}}}
Schéma de sortie
{'type': 'object', 'title': 't_placesOutput', 'required': ['result'], 'properties': {'result': {'anyOf': [{'type': 'array', 'items': {'type': 'object', 'additionalProperties': True}}, {'type': 'object', 'additionalProperties': True}], 'title': 'Result'}}}
stays
Find places to stay
Hotels and stay partners for a city (read-only): hotel listings with a tracked booking link each, plus the partner search links that cover the city. Prices are not returned; the partner page has them.
Lecture seule Idempotent
Schéma d’entrée
{'type': 'object', 'title': 't_staysArguments', 'required': ['country', 'city'], 'properties': {'city': {'type': 'string', 'title': 'City', 'description': "City slug or name, e.g. 'new-york-city' or 'New York City'. Unknown cities answer with did_you_mean."}, 'limit': {'type': 'integer', 'title': 'Limit', 'default': 10, 'description': 'Maximum hotel listings (1-50).'}, 'country': {'type': 'string', 'title': 'Country', 'description': "Country slug or name, e.g. 'italy'. Optional where city is given."}}}
Modifié
cities
29 September 2026 02:50
Modifié
itineraries
29 September 2026 02:50
Modifié
dishes
29 September 2026 02:50
Modifié
car_hire
29 September 2026 02:50
Modifié
stays
29 September 2026 02:50
Modifié
experiences
29 September 2026 02:50
Modifié
festivals
29 September 2026 02:50
Modifié
place
29 September 2026 02:50
Modifié
plan_day
29 September 2026 02:50
Modifié
search_places
29 September 2026 02:50
Ajouté
cities
19 September 2026 02:40
Ajouté
itineraries
19 September 2026 02:40
Ajouté
dishes
19 September 2026 02:40
Ajouté
car_hire
19 September 2026 02:40
Ajouté
stays
19 September 2026 02:40
Ajouté
experiences
19 September 2026 02:40
Ajouté
festivals
19 September 2026 02:40
Ajouté
place
19 September 2026 02:40
Ajouté
plan_day
19 September 2026 02:40
Ajouté
search_places
19 September 2026 02:40