google-maps

Installation
SKILL.md

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.

  1. Text: Introduce what you'll show
  2. Map: Call show_on_map to display results
  3. Text: Explain the results

Multiple categories: Use separate maps in sequence — never parallel.

Output Rules

The map renders visually from the tool result — never echo or paraphrase the raw map_data JSON (type, center, zoom, markers, lat/lng) in your text response. Describe places in natural language only (names, ratings, brief notes). The user already sees the map; do not repeat its contents.

UI Guidance (from tools-config)

When to Use:

  • ALWAYS call show_on_map after collecting location data - visual maps are the primary value
  • Use for: search results, directions, comparisons, or any location-based query

Response Pattern (DO NOT call show_on_map in parallel):

  1. Text: Introduce what you'll show ("Here are the top restaurants:")
  2. show_on_map: Display the map
  3. Text: Explain the results ("These restaurants are rated 4.5+ stars")

Example:

  • "Let me show you restaurants in Gangnam:" → show_on_map(restaurants) → "All 5 restaurants above have excellent reviews."
  • For multiple categories: Text → Map 1 → Text → Map 2 (sequential, not parallel)

Map Organization:

  • Separate maps for different categories (restaurants vs hotels)
  • Show 1-5 most relevant places per map

Tool Selection:

  • search_places: text queries | search_nearby_places: coordinates
  • Preserve place_id for details | Infer direction mode from context

Output Rules:

  • The map is rendered visually by the UI from the tool result. NEVER echo, paraphrase, or include the raw map_data JSON (coordinates, markers, zoom, type) in your text response.
  • Describe locations in natural language only (names, ratings, brief notes). The user already sees the map — do not repeat its contents.
Weekly Installs
72
GitHub Stars
151
First Seen
1 day ago