search_venues — Keyword search for venues
Keyword search over venue names, taglines and descriptions (stemmed; 'brewery' matches 'breweries'; no typo tolerance). Scope it with within_place_id (from resolve_place) — never put the city name in the text. Short, concrete keywords work best: 'ramen', 'rooftop bar', 'flea market'. Combine with filters and/or `near`.
Required arguments: text. Tool annotations: readOnlyHint: true, openWorldHint: true.
Input parameters
| Field | Type | Required | Description and allowed values |
|---|---|---|---|
text |
string |
Yes | 1-3 keywords describing what to find. |
within_place_id |
string |
No | Restrict to this place's subtree (city, neighbourhood, region, country). |
venue_type |
string |
No | Restaurants (incl. cafes, diners), Bars (pubs, nightclubs), Shopping (markets, shops), Attractions (museums, parks, galleries, zoos), Landmarks (monuments, historic sites). Unsure between Attractions and Landmarks? Try both. Omit for vague asks ('spots', 'places'). Allowed: Restaurants, Bars, Shopping, Attractions, Landmarks |
country_code |
string |
No | ISO alpha-2; broad scoping when no place ID is known. Length: 2–2 |
category |
string |
No | Exact, case-sensitive category. Restaurants: "Italian", "Japanese", "Mexican", "Indian", "Chinese", "Thai", "French", "Mediterranean", "Seafood", "Steakhouse", "Pizza", "Sushi", "Vegan", "Vegetarian", "Fast Food", "Fine Dining". Bars: "Cocktail Bar", "Wine Bar", "Sports Bar", "Beer Garden". Shopping: "Market", "Boutique", "Mall". Attractions: "Museum", "Park", "Gallery", "Zoo", "Theme Park", "Garden". If unsure of the exact value, use search_venues text instead. |
location_type |
string |
No | Finer type than venue_type, exact match, e.g. "Pub", "Cafe", "Restaurant", "Attraction", "Gastropub", "Museum". Pub = Bars + "Pub"; cafe / coffee shop = Restaurants + "Cafe". |
price_level |
string |
No | "cheap"/"budget" = inexpensive; "upscale"/"fancy" = expensive or very_expensive. There is no "free" level; for free places use search_venues with text "free". Allowed: inexpensive, moderate, expensive, very_expensive |
min_rating |
number |
No | Minimum average rating, 0-5. "good" = 4.0, "top rated"/"best" = 4.5 (pair with min_reviews). Range: 0 to 5 |
min_reviews |
integer |
No | Minimum number of reviews; use ~50+ to avoid thinly-rated places. "good" = 10+, "top rated" = 20+. Range: 0 to – |
environment |
string |
No | "outdoor"/"terrace"/"al fresco" = Outdoor. For "outdoor seating" make two calls, Outdoor and "Indoor and Outdoor", and merge. Allowed: Indoor, Outdoor, Indoor and Outdoor |
ambience |
array<string> |
No | Atmosphere tags. Every listed value must be present (AND), so pass only what the user actually requires. Values: Romantic, Cozy, Lively, Relaxing, Trendy, Scenic, Tranquil, Unique, Sophisticated |
audience |
array<string> |
No | Who the place suits / accessibility. Every listed value must be present (AND), so pass only what the user actually requires. Values: Family Friendly, Child Friendly, Senior Friendly, Teen Friendly, Wheelchair Accessible, Pet Friendly, Business Meetings |
amenities |
array<string> |
No | Required amenities. Every listed value must be present (AND), so pass only what the user actually requires. Values: Restrooms, Parking, Wifi, Seating Areas, Drink Options, Food Options, Trash Bins, Information Boards |
experience |
array<string> |
No | Experience tags. Every listed value must be present (AND), so pass only what the user actually requires. Values: Cultural Heritage, Photowalk, Nature Escape, Day Trip, Weekend Getaway, Food & Drink Tour |
sustainability |
array<string> |
No | Sustainability tags. Every listed value must be present (AND), so pass only what the user actually requires. Values: Eco-Friendly, Public-Transport Accessible, Leave-No-Trace Critical |
weather_suitability |
array<string> |
No | Weather suitability. Every listed value must be present (AND), so pass only what the user actually requires. Values: Any Weather, Rain / Wet Weather, Clear Skies, Windy Conditions, Mild Temperatures |
access |
array<string> |
No | Physical access difficulty. Every listed value must be present (AND), so pass only what the user actually requires. Values: Easy Access, Moderate Access, Difficult Access |
style_visual |
array<string> |
No | Views. Every listed value must be present (AND), so pass only what the user actually requires. Values: Iconic Views, Panoramas, Sunrise Spots, Sunset Spots |
style_social_media |
array<string> |
No | Photo / social-media appeal. Every listed value must be present (AND), so pass only what the user actually requires. Values: Instagrammable, Photo Spots, Selfie Spots, Aesthetic Corners |
style_architecture |
array<string> |
No | Architecture. Every listed value must be present (AND), so pass only what the user actually requires. Values: Landmarks, Heritage Neighborhoods, Modern Architecture |
style_aesthetic |
array<string> |
No | Interior / design aesthetic. Every listed value must be present (AND), so pass only what the user actually requires. Values: Industrial Designs, Modern Designs, Vintage, Minimalist |
min_place_score |
number |
No | Minimum Evendo place score (0-100 overall quality; most venues are 20-50, 70+ is excellent, 90+ is a city's very best). Range: 0 to 100 |
near |
object |
No | Restrict to this radius around a point; results then sort nearest-first unless sort_by says otherwise. For 'near <landmark>', first find the landmark with search_venues (venue_type Landmarks, then Attractions) and use its location. Object: lat: number (-90–90), lon: number (-180–180), radius_km: number (0.1–50) (default 5); required: lat, lon |
sort_by |
string |
No | best (default): Evendo ranking, or nearest-first when `near` is given. place_score: highest Evendo place score (0-100 overall quality) first. rating: highest average rating first (pair with min_reviews so 1-review places don't win). reviews: most reviewed first ('most popular'). nearest / farthest: by distance, require `near`. Places missing the value sort last. Changing sort_by restarts pagination: don't reuse a cursor from another sort. Allowed: best, place_score, rating, reviews, nearest, farthest |
limit |
integer |
No | Results per page. Range: 1 to 50; Default: 10 |
cursor |
string |
No | next_cursor from a previous call with otherwise identical arguments. Never invent one. |
Example arguments
{
"text": "rooftop bar",
"within_place_id": "27799",
"venue_type": "Bars",
"limit": 10
}Exact JSON Schema
The full input schema is in schemas/mcp-tools-snapshot.json (the live tools/list response, captured 10 November 2026), and this page is generated from it. Additional properties are rejected (additionalProperties: false).
Place Score
Use min_place_score (0–100) to set a minimum score and sort_by: "place_score" to rank the highest scores first. Most venues score 20–50; 70+ is excellent and 90+ is a city's very best. See Place Score.