Skip to main content
Glama

Search places

goplaces_search
Read-onlyIdempotent

Search Google Places by free-form text to find businesses, landmarks, restaurants, shops, or services. Filter by open now, rating, price, type, and location, then return compact place summaries.

Instructions

Search Google Places by free-form text. Use for finding businesses, landmarks, venues, restaurants, shops, attractions, or services. Supports filters for open now, rating, price, type, pagination, and optional circular location bias. Returns compact place summaries and a next_page_token when Google provides one.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
latNoLatitude for a circular location bias/restriction.
lngNoLongitude for a circular location bias/restriction.
limitNoMaximum number of results.
queryYesSearch text, e.g. 'coffee', 'sushi near Bryant Park', or 'EV charging'.
regionNoOptional CLDR region code, for example 'US' or 'DE'.
keywordNoExtra keyword appended to the text query.
languageNoOptional BCP-47 language code, for example 'en' or 'en-US'.
open_nowNoWhen true, request places currently open.
radius_mNoRadius in meters for the circular location bias/restriction.
include_evNoInclude EV charging connectors, charge rates, and availability.
min_ratingNoMinimum star rating from 0 to 5.
origin_latNoLatitude to measure travel from. With origin_lng, each result gains distance_meters and duration_seconds, avoiding a directions call per result.
origin_lngNoLongitude to measure travel from. Must be paired with origin_lat.
page_tokenNoGoogle next_page_token from a previous goplaces_search response. Every other argument, detail_level included, must match the original request or Google rejects the page.
origin_modeNoTravel mode for origin distances. Google does not support transit here.drive
detail_levelNoField tier to request. Google bills at the most expensive tier in the request, so prefer the cheapest that answers the question: 'ids' returns place IDs only, 'basic' adds name, address, location, type, and a Maps link, and 'full' adds rating, price, hours, phone, and website.full
price_levelsNoGoogle price levels: 0 free, 1 inexpensive, 2 moderate, 3 expensive, 4 very expensive.
included_typeNoOptional Google place type filter, e.g. 'restaurant', 'cafe', 'park'.
ev_connector_typesNoKeep only places supporting one of these Google connector types, e.g. ['EV_CONNECTOR_TYPE_CCS_COMBO_2', 'EV_CONNECTOR_TYPE_NACS', 'EV_CONNECTOR_TYPE_J1772', 'EV_CONNECTOR_TYPE_TESLA', 'EV_CONNECTOR_TYPE_CHADEMO', 'EV_CONNECTOR_TYPE_TYPE_2'].
include_atmosphereNoInclude the most expensive tier: editorial summary, dine-in/takeout/delivery/reservable, accessibility, and parking options.
ev_min_charge_rate_kwNoKeep only charging stations at or above this rate in kilowatts.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
errorNoPresent only on failure; the result is also flagged isError.
resultsNoMatching places, best match first.
next_page_tokenNoPass back as page_token for the next page.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv1.0.0

TDQS

A3.9/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Annotations already declare readOnlyHint/idempotentHint/openWorldHint, so the safety profile is covered. The description adds real behavioral context beyond that: it returns compact summaries and a next_page_token, and it advertises pagination and location-bias support. It does not, however, mention billing tier implications or pagination constraints (those live in the schema).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Three sentences, front-loaded with the action and scope, then filters, then return shape. The mid-sentence enumeration of place categories is somewhat listy but earns its place by clarifying the query domain.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 21-parameter tool with an output schema, the description need not explain return values, and it correctly defers detail to the schema. It covers scope, filters, and pagination. The only omission is routing versus siblings like goplaces_nearby.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema description coverage is 100%, so all 21 parameters are already documented in the schema. The description only lists filter categories (open now, rating, price, type, pagination, location bias), which echoes but does not add meaning beyond the structured field docs. Baseline 3 applies.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose4/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb and resource ('Search Google Places by free-form text') plus the scope of things it can find. However, it never names the sibling tools it overlaps with (goplaces_nearby for proximity, goplaces_autocomplete for prefix matching), so the agent must infer the boundary from other tools' descriptions.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

The 'Use for finding businesses, landmarks, venues, restaurants, shops, attractions, or services' sentence gives clear task context. It does not state when-not to use it or point to an alternative sibling, which is the main gap.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.