Skip to main content
Glama

Server Configuration

Describes the environment variables required to run the server.

NameRequiredDescriptionDefault
LOG_LEVELNoJSON log lines on stderr; tool arguments are never logged, only short hashesINFO
MAPS_HOSTNoHTTP listen address when --host is not given (the Docker image sets it to 0.0.0.0)127.0.0.1
MAPS_LANGUAGENoLanguage of names and instructionsen
MAPS_BUDGET_TZNoThe time zone whose midnight resets the budgetsUTC
MAPS_CANARY_TONoDestination of the status check's walk; must be a place id with opening hoursAlbertina
MAPS_STATE_DIRNoDirectory for budgets, breaker and Google's consent cookies (default is a per-user state dir; the image uses /state)
MAPS_CANARY_FROMNoOrigin of the status check's walkWien Hauptbahnhof
MCP_BEARER_TOKENYesAccepted bearer token(s), comma-separated, each at least 32 characters. Required for the HTTP transport.
MAPS_MIN_INTERVAL_SNoMinimum seconds between requests (jittered ±30%)1.0
MAPS_DAILY_TILE_BUDGETNoMap tiles per day for maps_static_map3000
MAPS_REQUEST_TIMEOUT_SNoPer-request timeout in seconds15
MAPS_DAILY_REQUEST_BUDGETNoRequests to google.com per day, all tools together1000

Instructions

Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.

This server publishes no instructions, or was last inspected before Glama recorded them.

Capabilities

Features and capabilities supported by this server

Protocol revision2025-11-25

CapabilityDetails
tools
{
  "listChanged": true
}
logging
{}
prompts
{
  "listChanged": true
}
resources
{
  "subscribe": false,
  "listChanged": true
}

Tools

Functions exposed to the LLM to take actions

NameDescription
maps_search_placesB

Find places like Google Maps search (Places API searchText shape): {places: [{id, displayName, formattedAddress, location, googleMapsUri, primaryTypeDisplayName, categories, rating, userRatingCount, internationalPhoneNumber, nationalPhoneNumber, websiteUri, priceLevel, priceRangeText, timeZone, currentOpeningHours, hoursStatusText, reservationLinks [{uri, provider}], menuUri}]}. reservationLinks are the booking sites Google lists (provider: the site's domain, e.g. sevenrooms.com), empty when none. Put the city in textQuery or pass latitude/longitude.

maps_get_placeA

One place by id (Places API Place shape, same fields as maps_search_places), with currentOpeningHours for the next 7 days: dated periods, weekdayDescriptions, openNow, nextOpenTime/nextCloseTime and holidays, plus reservationLinks [{uri, provider}] and menuUri.

maps_compute_routeB

Travel time and distance through the stops in order (Routes API computeRoutes shape): {travelMode, routes: [{description, distanceMeters, duration, staticDuration, localizedValues, durationWithoutTraffic, durationRange, departureTime, arrivalTime, legs: [{distanceMeters, duration, staticDuration, startLocation, endLocation, localizedValues}]}], waypoints: [{query, displayName, formattedAddress, placeId, location}], googleMapsUri, condition, note}. duration is in traffic for DRIVE (now or at departureTime/arrivalTime), otherwise typical. includeSteps fills legs[].steps [{distanceMeters, staticDuration, startLocation, navigationInstruction {maneuver, instructions}, localizedValues, notices}] and legs[].segments [{instructions, distanceMeters, staticDuration, firstStepIndex, stepCount}]; includePolyline fills routes[].polyline {encodedPolyline}.

maps_compute_route_matrixA

Duration and distance for every origin x destination pair, at most 25 pairs; each pair is one Google request (Routes API computeRouteMatrix element shape): {travelMode, elements: [{originIndex, destinationIndex, status, condition, distanceMeters, duration, staticDuration, localizedValues}]}. Identical origin and destination cost nothing.

maps_static_mapA

A map image like the Static Maps API: an area (center + zoom), pins and/or a route line, drawn on Google Maps tiles. Without center or zoom the view fits the pins and route. Returns a JSON legend {center, zoom, size, maptype, markers [{label, query, displayName, location, …}], route {travelMode, condition, description, distanceMeters, duration, googleMapsUri}, missingTiles, attribution} and the JPEG.

maps_plan_routeC

Plan a multi-stop route: {travelMode, optimized, order (indices of stops in the chosen order), ordersCompared, savedVsGivenOrder, description, distanceMeters, duration, durationWithDwell, departureTime, arrivalTime, timeZone, stops [{label, role, inputIndex, query, displayName, formattedAddress, placeId, location, arrivalOffset, arrivalTime, dwellMinutes, departureTime, openingStatus {state, text, hours}, rating, category}], legs [{from, to, distanceMeters, duration, staticDuration}], warnings, googleMapsUri}. Without departureTime the plan starts now.

maps_show_routeA

Show a route to the person as a card: interactive map with the route and lettered pins, total time and distance, the stops with arrival times and open/closed status, turn-by-turn steps per leg, and an "Open in Google Maps" button (claude.ai and ChatGPT draw it). Same facts as maps_plan_route. Use it whenever you give directions or a route.

maps_show_placesA

Show places to the person as cards: photo, rating, category, open now, today's hours, holiday notices, address, phone, website, reserve, directions and Map links, your note, plus a map with lettered pins (claude.ai and ChatGPT draw them). Use it whenever you recommend or compare places; ids come from maps_search_places.

maps_statusA

Version, daily request and tile budgets left, breaker, last error and cache size. With check=true, also {canary: {ok, code, checked_at, cached}}: one real route, one place read and one map tile, cached 55 min (5 min after a transient failure); ok is false on any error. Never fails.

Prompts

Interactive templates invoked by user choice

NameDescription

No prompts

Resources

Contextual data attached and managed by the client

NameDescription
maps-viewRoute and place cards (interactive map, stops, steps, photos, hours) for maps_show_*.

TDQS

B3.4/5.0

Scored across 9 tools

Disambiguation3/5

Most tools map to distinct operations, but maps_compute_route and maps_plan_route both compute multi-stop travel times with substantially overlapping output fields, and maps_show_route is explicitly described as carrying the 'same facts as maps_plan_route,' so an agent can easily pick the wrong one when it only needs data or only needs a card. The descriptions do provide guidance ('Use it whenever you give directions'), which keeps this from being worse than moderate overlap.

Naming Consistency4/5

All tools share a consistent maps_ prefix and mostly follow verb_noun (get_place, search_places, compute_route, plan_route, show_places). The only deviations are the noun-only maps_static_map and maps_status, which are minor and still unsurprising.

Tool Count5/5

Nine tools is well within a comfortable range and each one earns its place: place lookup/search/rendering, route compute/plan/render, a matrix variant, a static image, and diagnostics. No obviously redundant or filler tools.

Completeness4/5

The surface covers the core Maps workflows: place discovery and detail, routing (single, multi-stop with optimization and dwell), pairwise matrices, map imagery, and a health/budget check. Minor gaps remain, such as address geocoding/autocomplete as first-class operations and route alternatives, but agents can work around these via textQuery search.

Maintenance

ActivityMaintained
ResponsivenessNo recent community issues