Discover 356K+ restaurants in 20 countries: search, reviews, cultural context, time-based offers.
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.
Make a reservation at a Flow-discounted time slot. Phone must be E.164 (e.g. +34911234567). To make retries safe, send the same Idempotency-Key HTTP header on retries (any UUID); replays within 24h return the original reservation. Rate limited to 5 reservations per email per day and 10 attempts per IP per minute.
Restaurant URL slug.
E.164 format, e.g. +34911234567.
Offer ID returned by get_flow_offers.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Make a reservation at a Flow-discounted time slot. Phone must be E.164 (e.g. +34911234567). To make retries safe, send the same Idempotency-Key HTTP header on retries (any UUID); replays within 24h return the original reservation. Rate limited to 5 reservations per email per day and 10 attempts per IP per minute.
| Argument | Type | Description |
|---|---|---|
| slug* | string | Restaurant URL slug. |
| notes | string | |
| guest_name* | string | |
| party_size | integer | |
| guest_email* | string | |
| guest_phone* | string | E.164 format, e.g. +34911234567. |
| yield_offer_id* | integer | Offer ID returned by get_flow_offers. |
{
"type": "object",
"required": [
"slug",
"yield_offer_id",
"guest_name",
"guest_email",
"guest_phone"
],
"properties": {
"slug": {
"type": "string",
"description": "Restaurant URL slug."
},
"notes": {
"type": "string"
},
"guest_name": {
"type": "string"
},
"party_size": {
"type": "integer",
"default": 2,
"maximum": 20,
"minimum": 1
},
"guest_email": {
"type": "string",
"format": "email"
},
"guest_phone": {
"type": "string",
"pattern": "^\\+[1-9]\\d{7,14}$",
"description": "E.164 format, e.g. +34911234567."
},
"yield_offer_id": {
"type": "integer",
"description": "Offer ID returned by get_flow_offers."
}
}
}Find restaurants near a famous landmark (monument, museum, park). Returns landmark info from Wikidata + nearby restaurants sorted by walking distance. Examples: 'Sagrada Familia', 'Colosseum', 'Central Park', 'Tour Eiffel'.
| Argument | Type | Description |
|---|---|---|
| city | string | City hint for landmark disambiguation. |
| limit | integer | |
| radius | integer | Search radius in meters. |
| landmark* | string | Landmark name. |
{
"type": "object",
"required": [
"landmark"
],
"properties": {
"city": {
"type": "string",
"description": "City hint for landmark disambiguation."
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 15,
"minimum": 1
},
"radius": {
"type": "integer",
"default": 1000,
"maximum": 5000,
"minimum": 200,
"description": "Search radius in meters."
},
"landmark": {
"type": "string",
"description": "Landmark name."
}
}
}Get cultural context around a restaurant: nearby monuments, museums, parks, historical sites with distance and heritage status. Powered by Wikidata.
| Argument | Type | Description |
|---|---|---|
| slug* | string | Restaurant URL slug. |
{
"type": "object",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"description": "Restaurant URL slug."
}
}
}POS.DO Flow time-based offers for a restaurant. Off-peak hours have bigger discounts. Returns time slots with discount percentages and remaining covers. Tagline: 'Tu hora, tu precio'.
| Argument | Type | Description |
|---|---|---|
| date | string | Date YYYY-MM-DD (default: today). |
| slug* | string | Restaurant URL slug. |
{
"type": "object",
"required": [
"slug"
],
"properties": {
"date": {
"type": "string",
"pattern": "^\\d{4}-\\d{2}-\\d{2}$",
"description": "Date YYYY-MM-DD (default: today)."
},
"slug": {
"type": "string",
"description": "Restaurant URL slug."
}
}
}Get the full profile of a restaurant by URL slug. Returns name, address, coordinates, rating, reviews count, phone, opening hours, photos, services, cuisine type, price level, current Flow offers, and cultural context.
| Argument | Type | Description |
|---|---|---|
| slug* | string | Restaurant URL slug. Example: 'anima-e-cuore-osteria-bilbao'. |
{
"type": "object",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"description": "Restaurant URL slug. Example: 'anima-e-cuore-osteria-bilbao'."
}
}
}Get paginated reviews for a restaurant. Filter by star rating, sort by date or rating. Returns review text, author, rating, date, photos, language, owner response, and rating distribution.
| Argument | Type | Description |
|---|---|---|
| slug* | string | Restaurant URL slug. |
| sort | string | |
| limit | integer | |
| offset | integer | |
| rating | integer | Filter by exact star rating. |
{
"type": "object",
"required": [
"slug"
],
"properties": {
"slug": {
"type": "string",
"description": "Restaurant URL slug."
},
"sort": {
"enum": [
"recent",
"rating_high",
"rating_low"
],
"type": "string",
"default": "recent"
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 30,
"minimum": 1
},
"offset": {
"type": "integer",
"default": 0,
"minimum": 0
},
"rating": {
"type": "integer",
"maximum": 5,
"minimum": 1,
"description": "Filter by exact star rating."
}
}
}Search restaurants in a specific city. Filter by cuisine type, price range, and features like outdoor seating, WiFi, delivery. Returns up to 20 results with name, rating, cuisine, price range, address, coordinates, photo, amenities, and current Flow offers.
| Argument | Type | Description |
|---|---|---|
| city* | string | City name. Examples: 'Madrid', 'New York', 'Milano', 'Barcelona'. |
| limit | integer | |
| query | string | Free-text search: cuisine, occasion, features (e.g. 'romantic italian terrace'). |
| cuisine | string | Cuisine filter. Examples: 'italian', 'mexican', 'sushi', 'spanish', 'indian'. |
| features | string | Comma-separated feature filters: terrace, wifi, parking, delivery, accessible. |
| price_max | integer | Max price level 1=budget, 4=fine dining. |
{
"type": "object",
"required": [
"city"
],
"properties": {
"city": {
"type": "string",
"description": "City name. Examples: 'Madrid', 'New York', 'Milano', 'Barcelona'."
},
"limit": {
"type": "integer",
"default": 10,
"maximum": 20,
"minimum": 1
},
"query": {
"type": "string",
"description": "Free-text search: cuisine, occasion, features (e.g. 'romantic italian terrace')."
},
"cuisine": {
"type": "string",
"description": "Cuisine filter. Examples: 'italian', 'mexican', 'sushi', 'spanish', 'indian'."
},
"features": {
"type": "string",
"description": "Comma-separated feature filters: terrace, wifi, parking, delivery, accessible."
},
"price_max": {
"type": "integer",
"maximum": 4,
"minimum": 1,
"description": "Max price level 1=budget, 4=fine dining."
}
}
}