MCP server for Google Maps Places API providing tools for place search, autocomplete, and photo retrieval
Four tools with complete schemas and descriptions, but significant quality gaps. Tool names lack clear action verbs (post_v1_* prefix obscures intent). Descriptions are present but generic (10-50 chars for most). Parameter descriptions are verbose API documentation rather than LLM-optimized guidance. No output schemas documented. Error handling absent. Naming convention 'post_v1_places_autocomplete' violates verb_noun pattern, should be 'search_places_autocomplete' or 'autocomplete_places'. Tool #4 'get_v1_name' is cryptic; should be 'get_place_photo_media'. Parameters like 'locationBias' and 'locationRestriction' are API-centric, not agent-friendly.
Get a photo media with a photo reference string.
Returns predictions for the given input.
Search for places near locations.
Text query based place search.
Tool names do not follow verb_noun convention. 'post_v1_places_autocomplete' obscures intent; should be 'autocomplete_places' or 'search_places_autocomplete'. LLMs cannot infer action from REST method prefix.
No output schemas documented. LLMs cannot plan downstream calls or extract required fields (e.g., place_id for photo retrieval). Responses are opaque.
Descriptions are too short (10-50 chars) and lack LLM guidance. 'Returns predictions for the given input' does not explain when to use this vs searchText or searchNearby. Missing WHAT, WHEN, and PREREQUISITES.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | F | 41 | 2026-07-28+ | v2 |
Parameter descriptions are verbose API docs, not agent-optimized. 'Input parameter: Optional. A string which identifies an Autocomplete session...' (200+ chars) buries actionable constraints. No enums for constrained fields (rankPreference, priceLevels).
No error handling guidance. Tool definitions lack recovery hints (e.g., 'If no results, try expanding locationBias'). Agents cannot self-correct on failures.