Skip to main content
Glama

Server Details

The Google Maps MCP server is a fully-managed server provided by the Maps Grounding Lite API that connects AI applications to Google Maps Platform services. It provides three main tools for building LLM applications: searching for places, looking up weather information, and computing routes with details like distance and travel time. The server acts as a proxy that translates Google Maps data into a format that AI applications can understand, enabling agents to accurately answer real-world location and travel queries.

Status
Healthy
Last Tested
Transport
Streamable HTTP
URL

Glama MCP Gateway

Connect through Glama MCP Gateway for full control over tool access and complete visibility into every call.

MCP client
Glama
MCP server

Full call logging

Every tool call is logged with complete inputs and outputs, so you can debug issues and audit what your agents are doing.

Tool access control

Enable or disable individual tools per connector, so you decide what your agents can and cannot do.

Managed credentials

Glama handles OAuth flows, token storage, and automatic rotation, so credentials never expire on your clients.

Usage analytics

See which tools your agents call, how often, and when, so you can understand usage patterns and catch anomalies.

100% free. Your data is private.

Tool Definition Quality

Score is being calculated. Check back soon.

Available Tools

3 tools
compute_routesA
Read-only
Inspect

Computes a travel route between a specified origin and destination. Supported Travel Modes: DRIVE (default), WALK.

Input Requirements (CRITICAL): Requires both origin and destination. Each must be provided using one of the following methods, nested within its respective field:

  • address: (string, e.g., 'Eiffel Tower, Paris'). Note: The more granular or specific the input address is, the better the results will be.

  • lat_lng: (object, {"latitude": number, "longitude": number})

  • place_id: (string, e.g., 'ChIJOwE_Id1w5EAR4Q27FkL6T_0') Note: This id can be obtained from the search_places tool. Any combination of input types is allowed (e.g., origin by address, destination by lat_lng). If either the origin or destination is missing, you MUST ask the user for clarification before attempting to call the tool.

Example Tool Call: {"origin":{"address":"Eiffel Tower"},"destination":{"place_id":"ChIJt_5xIthw5EARoJ71mGq7t74"},"travel_mode":"DRIVE"}

ParametersJSON Schema
NameRequiredDescriptionDefault
originYesRequired. Origin waypoint.
travelModeNoOptional. Specifies the mode of transportation.
destinationYesRequired. Destination waypoint.

Output Schema

ParametersJSON Schema
NameRequiredDescription
routesNoContains routes between the requested origin and destination. Currently only one route is returned.
Behavior4/5

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

Supplements readOnlyHint=true by disclosing default values (DRIVE), result quality factors (granular addresses yield better results), and validation requirements (mandatory user clarification). Does not repeat the WALK beta warning visible in schema enums but adds integration context with sibling tools.

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?

Structured with bold headers and bullet points for scannability. Front-loaded purpose followed by critical constraints. Length is justified by the complexity of polymorphic inputs, though some redundancy exists with schema definitions.

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

Completeness5/5

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

Given the complex nested input schema and presence of an output schema (not shown), the description is complete. It covers travel modes, input validation, prerequisite tools, and result quality expectations without needing to describe return values.

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

Parameters5/5

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

Despite 100% schema coverage, adds crucial semantic context: explains the polymorphic 'one of' input pattern for waypoints (address vs lat_lng vs place_id), provides concrete examples for each type, and includes a full JSON example demonstrating nested structure. Clarifies that parameters are mutually exclusive within each waypoint object.

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

Purpose5/5

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

The description opens with a specific action (Computes) and resource (travel route) bounded by origin/destination. It clearly distinguishes scope from siblings by referencing search_places as the source for place_id inputs, implying this tool consumes location data while search_plplaces produces it.

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?

Provides explicit when-not guidance ('If either...missing, you MUST ask the user for clarification') and identifies a prerequisite workflow (obtain place_id from search_places). Lacks explicit contrast with lookup_weather, though the distinction is intuitive.

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

lookup_weatherA
Read-only
Inspect

Retrieves comprehensive weather data including current conditions, hourly, and daily forecasts. Specific Data Available: Temperature (Current, Feels Like, Max/Min, Heat Index), Wind (Speed, Gusts, Direction), Celestial Events (Sunrise/Sunset, Moon Phase), Precipitation (Type, Probability, Quantity/QPF), Atmospheric Conditions (UV Index, Humidity, Cloud Cover, Thunderstorm Probability), and Geocoded Location Address. Location & Location Rules (CRITICAL): The location for which weather data is requested is specified using the 'location' field. This field is a 'oneof' structure, meaning you MUST provide a value for ONLY ONE of the three location sub-fields below to ensure an accurate weather data lookup.

  1. Geographic Coordinates (lat_lng)

  • Use it when you are provided with exact lat/lng coordinates.

  • Example: "lat_lng": { "latitude": 34.0522, "longitude": -118.2437 } // Los Angeles

  1. Place ID (place_id)

  • An unambiguous string identifier (Google Maps Place ID).

  • The place_id can be fetched from the search_places tool.

  • Example: "place_id": "ChIJLU7jZClu5kcR4PcOOO6p3I0" // Eiffel Tower

  1. Address String (address)

  • A free-form string that requires specificity for geocoding.

  • City & Region: Always include region/country (e.g., "London, UK", not "London").

  • Street Address: Provide the full address (e.g., "1600 Pennsylvania Ave NW, Washington, DC").

  • Postal/Zip Codes: MUST be accompanied by a country name (e.g., "90210, USA", NOT "90210"). Usage Modes:

  1. Current Weather: Provide address only. Do not specify date and hour.

  2. Hourly Forecast: Provide address, date, and hour (0-23). Use for specific times (e.g., "at 5 PM") or terms like 'next few hours' or 'later today.'. If the user specifies minute, round down to the nearest hour. Hourly forecast beyond 120 hours from now is not supported. Historical hourly weather is supported up to 24 hours in the past.

  3. Daily Forecast: Provide address and date. Do not specify hour. Use for general day requests (e.g., "weather for tomorrow", "weather on Friday", "weather on 12/25"). If today's date is not in the context, you should clarify it with the user. Daily forecast beyond 10 days including today is not supported. Historical weather is not supported. Parameter Constraints:

  • Timezones: All date and hour inputs must be relative to the location's local time zone, not the user's time zone.

  • Date Format: Inputs must be separated into {year, month, day} integers.

  • Units: Defaults to METRIC. Set units_system to IMPERIAL for Fahrenheit/Miles if the user implies US standards or explicitly requests it.

ParametersJSON Schema
NameRequiredDescriptionDefault
dateNoOptional. The date of the required weather information. Note: This date is relative to the local timezone of the location specified in the location field. The date must be within the next 7 days.
hourNoOptional. The hour of the requested weather information, in 24-hour format (0-23). This value is relative to the local timezone of the location specified in the location field. Hourly forecast is only supported for the next 48 hours from the current time.
locationYesRequired. The location to get the weather conditions for.
unitsSystemNoOptional. The units system to use for the returned weather conditions. If not provided, the returned weather conditions will be in the metric system (default = METRIC).

Output Schema

ParametersJSON Schema
NameRequiredDescription
windNoThe wind conditions
uvIndexNoThe maximum ultraviolet (UV) index. define optional because it is not always available
heatIndexNoThe hourly heat index temperature.
sunEventsNoThe events related to the sun (e.g. sunrise, sunset).
cloudCoverNoThe percentage of the sky covered by clouds (values from 0 to 100). define optional because it is not always available
moonEventsNoThe events related to the moon (e.g. moonrise, moonset).
airPressureNoThe hourly air pressure conditions.
temperatureNoThe hourly temperature
maxHeatIndexNoThe maximum heat index temperature throughout the day.
precipitationNoThe precipitation probability and amount of precipitation accumulated
maxTemperatureNoThe maximum (high) temperature throughout the day.
minTemperatureNoThe minimum (low) temperature throughout the day.
relativeHumidityNoThe percent of relative humidity (values from 0 to 100). define optional because it is not always available
returnedLocationNoRequired. The location where the weather information is returned. This location is identical to the location in the request, but can be different from it if the requested location is a free text address that looks up to a coarse location (e.g. "Mountain View, CA").
weatherConditionNoThe weather condition
feelsLikeTemperatureNoThe hourly measure of how the temperature feels like.
feelsLikeMaxTemperatureNoThe maximum (high) feels-like temperature throughout the day.
feelsLikeMinTemperatureNoThe minimum (low) feels-like temperature throughout the day.
thunderstormProbabilityNoThe thunderstorm probability (values from 0 to 100). define optional because it is not always available
Behavior4/5

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

While annotations declare readOnlyHint=true, the description adds valuable behavioral context: comprehensive list of returnable data fields (celestial events, QPF, UV index), timezone handling rules (location's local time), and temporal limits (48-hour hourly, 7-day daily) that help the agent constrain inputs appropriately.

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?

Appropriately structured with clear headers (Specific Data Available, Usage Modes, Parameter Constraints) that front-load critical information. Length is justified by the complexity of the location oneof constraint and three distinct usage modes, though slightly verbose.

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

Completeness5/5

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

Given the presence of an output schema and 100% input schema coverage, the description provides complete contextual coverage including sibling tool dependencies (search_places), all critical constraints (timezones, date ranges), and data availability details without needing to describe return values.

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

Parameters4/5

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

With 100% schema coverage (baseline 3), the description adds substantial operational semantics: location selection rules with examples for the oneof structure, date format clarifications ('separated into {year, month, day} integers'), hour rounding instructions, and units system defaults/override conditions.

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

Purpose5/5

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

The description opens with a specific verb and resource ('Retrieves comprehensive weather data'), explicitly scopes the functionality (current, hourly, daily forecasts), and distinguishes from sibling tool search_places by noting it as the source for place_id values.

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

Usage Guidelines5/5

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

Contains explicit 'Usage Modes' section detailing exact parameter combinations for current weather vs hourly vs daily forecasts, including constraints like 'Hourly forecast beyond 48 hours... is not supported' and 'Historical weather is not supported,' providing clear when-to-use/when-not guidance.

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

search_placesA
Read-only
Inspect

Call this tool when the user's request is to find places, businesses, addresses, locations, points of interest, or any other Google Maps related search.

Input Requirements (CRITICAL):

  1. text_query (string - MANDATORY): The primary search query. This must clearly define what the user is looking for.

    • Examples: 'restaurants in New York', 'coffee shops near Golden Gate Park', 'SF MoMA', '1600 Amphitheatre Pkwy, Mountain View, CA, USA', 'pets friendly parks in Manhattan, New York', 'date night restaurants in Chicago', 'accessible public libraries in Los Angeles'.

    • For specific place details: Include the requested attribute (e.g., 'Google Store Mountain View opening hours', 'SF MoMa phone number', 'Shoreline Park Mountain View address').

  2. location_bias (object - OPTIONAL): Use this to prioritize results near a specific geographic area.

    • Format: {"location_bias": {"circle": {"center": {"latitude": [value], "longitude": [value]}, "radius_meters": [value (optional)]}}}

    • Usage:

      • To bias to a 5km radius: {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}, "radius_meters": 5000}}}

      • To bias strongly to the center point: {"location_bias": {"circle": {"center": {"latitude": 34.052235, "longitude": -118.243683}}}} (omitting radius_meters).

  3. language_code (string - OPTIONAL): The language to show the search results summary in.

    • Format: A two-letter language code (ISO 639-1), optionally followed by an underscore and a two-letter country code (ISO 3166-1 alpha-2), e.g., en, ja, en_US, zh_CN, es_MX. If the language code is not provided, the results will be in English.

  4. region_code (string - OPTIONAL): The Unicode CLDR region code of the user. This parameter is used to display the place details, like region-specific place name, if available. The parameter canaffect results based on applicable law.

    • Format: A two-letter country code (ISO 3166-1 alpha-2), e.g., US, CA.

Instructions for Tool Call:

  • Location Information (CRITICAL): The search must contain sufficient location information. If the location is ambiguous (e.g., just "pizza places"), you must specify it in the text_query (e.g., "pizza places in New York") or use the location_bias parameter. Include city, state/province, and region/country name if needed for disambiguation.

  • Always provide the most specific and contextually rich text_query possible.

  • Only use location_bias if coordinates are explicitly provided or if inferring a location from a user's known context is appropriate and necessary for better results.

ParametersJSON Schema
NameRequiredDescriptionDefault
textQueryYesRequired. The text query.
regionCodeNoOptional. The Unicode country/region code (CLDR) of the location where the request is coming from. This parameter is used to display the place details, like region-specific place name, if available. The parameter can affect results based on applicable law. For example, "US" for United States. For more information, see https://www.unicode.org/cldr/charts/latest/supplemental/territory_language_information.html. Note that 3-digit region codes are not currently supported.
languageCodeNoOptional. The language to request that the summary is returned in. If the language code is unspecified or unrecognized, the summary with a preference for English will be returned. For example, "en" for English. Current list of supported languages: https://developers.google.com/maps/faq#languagesupport.
locationBiasNoAn optional region to bias the search results to. If an explicit location is in `text_query`, it will be used to bias the search results instead of this field.

Output Schema

ParametersJSON Schema
NameRequiredDescription
placesNoOutput only. The list of places that are mentioned in the summary.
summaryNoOutput only. A natural language summary of the search results. The summary may contain zero-based citations like "[0]", "[1]", "[2]" etc. These citations map to the corresponding places in the `places` field.
Behavior3/5

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

With annotations declaring readOnlyHint=true, the description adds valuable behavioral context: specifying that results outside the bias region may still be returned, explaining that omitting radius_meters strongly biases toward the center point, and noting that language codes affect display formatting. However, it omits rate limits, pagination behavior, or error conditions that would further aid agent decision-making.

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?

The description is well-structured with clear hierarchies (Input Requirements vs. Instructions) and front-loaded purpose. While lengthy, every sentence earns its place by providing specific examples or critical constraints. Minor verbosity exists in the repeated 'CRITICAL' labels and heavy formatting, but this is appropriate for the parameter complexity.

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

Completeness5/5

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

Given the presence of an output schema (relieving the description of return value documentation), the description thoroughly covers all complex input requirements, parameter interactions (noting that explicit locations in text_query override location_bias), and disambiguation rules necessary for successful invocation.

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

Parameters5/5

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

Despite 100% schema coverage (baseline 3), the description adds substantial semantic value through seven diverse text_query examples (including attribute-specific queries like 'opening hours'), explicit JSON syntax for nested location_bias objects, and format clarifications for language/region codes. This goes far beyond the schema's basic 'The text query' descriptions.

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

Purpose5/5

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

The description explicitly states the tool 'find[s] places, businesses, addresses, locations, points of interest' and identifies it as 'Google Maps related search,' clearly distinguishing it from sibling tools compute_routes (routing) and lookup_weather (weather data). The specific verb+resource combination provides unambiguous scope.

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 description provides explicit invocation criteria ('Call this tool when...') and detailed guidance on parameter selection (text_query vs. location_bias). However, it lacks explicit named alternatives or 'when not to use' exclusions referencing the sibling tools, though the functional scope is distinct enough to imply boundaries.

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

Discussions

No comments yet. Be the first to start the discussion!

Try in Browser

Your Connectors

Sign in to create a connector for this server.

Resources