Google Maps
Available Tools
search_places(query, location?, radius?, type?, open_now?, language?): Search for places using text query.
-
query (string, required): Search text (e.g., "restaurants in Seoul")
-
location (string, optional): Center location as "lat,lng" (e.g., "37.5665,126.9780")
-
radius (integer, optional): Search radius in meters (max 50,000)
-
type (string, optional): Place type filter (e.g., "restaurant", "tourist_attraction", "hotel")
-
open_now (boolean, optional, default: false): Only return currently open places
-
language (string, optional, default: "en"): Language code
search_nearby_places(location, radius, keyword?, type?, rank_by?, open_now?, language?): Search near specific coordinates.
-
location (string, required): Center as "lat,lng" (e.g., "37.5665,126.9780")
-
radius (integer, required): Search radius in meters (max 50,000)
-
keyword (string, optional): Search keyword
-
type (string, optional): Place type filter
-
rank_by (string, optional, default: "prominence"): "prominence" or "distance"
-
open_now (boolean, optional, default: false): Only open places
-
language (string, optional, default: "en"): Language code
get_place_details(place_id, language?, reviews_sort?): Get detailed place info including reviews and hours.
-
place_id (string, required): Place ID from search results
-
language (string, optional, default: "en"): Language code
-
reviews_sort (string, optional, default: "most_relevant"): "most_relevant" or "newest"
get_directions(origin, destination, mode?, alternatives?, avoid?, language?): Get directions between two locations.
-
origin (string, required): Starting point (address or "lat,lng")
-
destination (string, required): Destination (address or "lat,lng")
-
mode (string, optional, default: "driving"): "driving", "walking", "bicycling", "transit"
-
alternatives (boolean, optional, default: false): Return alternative routes
-
avoid (string, optional): "tolls", "highways", or "ferries"
-
language (string, optional, default: "en"): Language code
geocode_address(address, language?, region?): Convert a text address to geographic coordinates.
-
address (string, required): Address to geocode
-
language (string, optional, default: "en"): Language code
-
region (string, optional): Country code for regional bias
reverse_geocode(latlng, language?): Convert coordinates to a human-readable address.
-
latlng (string, required): Coordinates as "lat,lng" (e.g., "37.5665,126.9780")
-
language (string, optional, default: "en"): Language code
show_on_map(map_type, markers?, directions?, center?, zoom?): Display locations or routes on an interactive map.
-
map_type (string, required): "markers" (location pins), "directions" (route), or "area"
-
markers (array, required for "markers"): List of marker objects with lat, lng
-
directions (object, required for "directions"): Route data with origin and destination
-
center (object, optional): Map center {lat, lng}
-
zoom (integer, optional): Zoom level 1-20
Usage Guidelines
-
ALWAYS call show_on_map after collecting location data — visual maps are the primary value.
-
Preserve place_id from search results for use with get_place_details .
-
Infer transportation mode from context (driving for long distances, walking for short ones).
-
Show 1-5 most relevant places per map.
Response Pattern
Follow the Text -> Map -> Text sequence. Do NOT call show_on_map in parallel with other tool calls.
-
Text: Introduce what you'll show
-
Map: Call show_on_map to display results
-
Text: Explain the results
Multiple categories: Use separate maps in sequence — never parallel.