Integrates with Google Places API to allow searching for places by text query, with support for filtering by type, price level, rating, and other parameters. Future capabilities will include nearby search, place details, and photo retrieval.
Google Places MCP Server
This MCP server integrates with Google Places API to allow searching, retrieving details, and finding nearby places.
Setup
Environment Variables
The following environment variables are required:
GOOGLE_MAPS_API_KEY: Your Google Maps API key with Places API access enabledTRANSPORT_TYPE: Transport method to use (stdioorsse)PORT: (Optional) Port number for SSE transport (default: 3000)
Create a .env file in the root directory with these variables:
Development
Install dependencies:
Start the development server:
Related MCP server: Google Drive MCP Server
Transport Options
The server supports two transport methods:
SSE (Server-Sent Events): Uses HTTP with Server-Sent Events for real-time communication
When using SSE transport, the server exposes two endpoints:
GET /sse: SSE endpoint for receiving server messagesPOST /messages: Endpoint for sending messages to the server
Tools
places-text-search
Text search for places using Google Places API
Input:
textQuery(string, required): The text query to search for placesincludedType(string, optional): Restricts results to places matching the specified typeincludePureServiceAreaBusinesses(boolean, optional): Include businesses without physical locationlanguageCode(string, optional): Language code for results (e.g., "en")locationBias(object, optional): Bias results toward this locationlocationRestriction(object, optional): Restrict results to this locationpageSize(number, optional): Number of results per page (1-20)pageToken(string, optional): Token for next page of resultspriceLevels(array, optional): Filter by price levelsrankPreference(string, optional): Rank by "RELEVANCE" or "DISTANCE"regionCode(string, optional): Two-character country/region codestrictTypeFiltering(boolean, optional): Only return exact type matchesevOptions(object, optional): EV charging station filtersminRating(number, optional): Minimum rating filter (0-5)openNow(boolean, optional): Filter for places currently openfields(array, optional): Specific fields to include in response
Returns matching places with details
places-nearby-search (Coming Soon)
Find places near a specific location
Input:
location(object, required): Latitude and longitude coordinatesradius(number, optional): Search radius in meterskeyword(string, optional): Keyword to filter resultstype(string, optional): Place type to filter resultsrankBy(string, optional): Rank by "prominence" or "distance"openNow(boolean, optional): Filter for places that are currently openfields(array, optional): Specific fields to include in the response
Returns nearby places with details
place-details (Coming Soon)
Get detailed information about a specific place
Input:
placeId(string, required): Google Place IDfields(array, optional): Specific fields to include in the responselanguageCode(string, optional): Language code for results
Returns comprehensive details about the place
place-photo (Coming Soon)
Retrieve photos for a place
Input:
photoReference(string, required): Reference from a Place Details responsemaxWidth(number, optional): Maximum width of the returned imagemaxHeight(number, optional): Maximum height of the returned image
Returns photo data or URL