Google Maps MCP avatar

Google Maps MCP

Pricing

from $3.00 / 1,000 results

Go to Apify Store
Google Maps MCP

Google Maps MCP

Unified Apify MCP server for Google Maps. Search for businesses and extract comprehensive data including ratings, reviews, contact info, and more. Scrape detailed reviews from any Google Maps place.

Pricing

from $3.00 / 1,000 results

Rating

5.0

(2)

Developer

Crawler Bros

Crawler Bros

Maintained by Community

Actor stats

1

Bookmarked

38

Total users

1

Monthly active users

a day ago

Last modified

Share

Google Maps MCP Server

A unified Apify MCP (Model Context Protocol) server for comprehensive Google Maps scraping. This actor provides a single interface to search for businesses and scrape reviews from public Google Maps pages — no login, no API key, and no cookies required.

What this actor does

Multi-Mode Scraping

This MCP server supports two scraping modes:

  1. Search Mode - Search and scrape business listings from Google Maps
  2. Reviews Mode - Scrape reviews from a specific Google Maps business

Key Capabilities

✅ Unified Interface - Single actor for all Google Maps scraping needs ✅ Cookieless Access - Read public Google Maps pages without signing in ✅ No API Key Required - Scrape public content without authentication ✅ Comprehensive Data - Extract all relevant business details and reviews ✅ Automatic Pagination - Load multiple results and reviews automatically ✅ Structured Output - Clean JSON data ready for AI consumption

Input

Common Parameters

ParameterTypeRequiredDescription
modestringYesScraping mode: search or reviews

Search Mode Parameters

ParameterTypeDefaultDescription
searchQuerystring-What to search for (e.g., "restaurant")
locationstring""Where to search (e.g., "New York, NY")
maxResultsinteger20Maximum number of businesses to scrape (1-500)
languageenumenGoogle Maps interface/result language (en, es, fr, de, it, pt, ja, ko, zh, ar, ru)

Reviews Mode Parameters

ParameterTypeDefaultDescription
placeUrlstringone of URL/IDGoogle Maps place URL; copied punctuation and tracking parameters are normalized
placeIdstringone of URL/IDCanonical Google Place ID beginning with ChIJ; use instead of placeUrl
maxReviewsinteger50Maximum number of reviews to scrape (1-200000; bounded by the public review surface)

Common optional settings

proxyConfiguration accepts Apify proxy settings. The actor always attempts public access without login cookies first and has a bounded hardcoded Apify US RESIDENTIAL fallback for rate limits or limited views when no explicit proxy is supplied. Set {"useApifyProxy": false} for direct-only diagnostics.

Examples

Example: search for businesses

{
"mode": "search",
"searchQuery": "pizza restaurant",
"location": "New York, NY",
"maxResults": 20
}

Example: scrape reviews

{
"mode": "reviews",
"placeUrl": "https://www.google.com/maps/place/Joe's+Pizza/@40.7308314,-73.9973325,17z",
"maxReviews": 100
}
{
"mode": "search",
"searchQuery": "寿司",
"location": "東京 日本",
"maxResults": 20,
"language": "ja"
}

Output per record

Search Mode Output

Each business uses the same canonical camelCase field names as the other Google Maps actors. Optional values are omitted when Google does not expose them.

{
"recordType": "business",
"index": 1,
"name": "Joe's Pizza",
"category": "Pizza restaurant",
"rating": 4.5,
"reviewsCount": 1234,
"priceLevel": "$$",
"address": "7 Carmine St, New York, NY 10014",
"phone": "+1 212-366-1182",
"website": "https://www.joespizzanyc.com",
"googleMapsUrl": "https://www.google.com/maps/place/Joe's+Pizza/@40.7308314,-73.9973325,17z",
"placeId": "ChIJxxx...",
"featureId": "0x...:0x...",
"location": {"lat": 40.7308314, "lng": -73.9973325},
"scrapedAt": "2025-11-02T20:30:00+00:00",
"sourceUrl": "https://www.google.com/maps/place/Joe's+Pizza/@40.7308314,-73.9973325,17z"
}

Every output row uses the same consistent field names shown above.

Reviews Mode Output (Flattened Format)

One review per row for easy analysis - each dataset item represents a single review with place metadata:

{
"recordType": "review",
"placeId": "ChIJxxx...",
"featureId": "0x...:0x...",
"scrapedAt": "2025-11-02T20:30:00+00:00",
"placeMetadata": {
"placeUrl": "https://www.google.com/maps/place/...",
"placeId": "ChIJxxx...",
"featureId": "0x...:0x...",
"businessName": "Joe's Pizza",
"businessRating": 4.5,
"businessReviewCount": 1234,
"businessCategory": "Pizza restaurant",
"businessAddress": "7 Carmine St, New York, NY 10014"
},
"reviewId": "ChZDSUhNMG9nS0VJQ0FnSUQ...",
"reviewerName": "John Smith",
"reviewerAvatarUrl": "https://lh3.googleusercontent.com/...",
"rating": 5.0,
"reviewText": "Best pizza in NYC! The crust is perfect and the sauce is amazing...",
"reviewDateOriginal": "2 months ago",
"sourceUrl": "https://www.google.com/maps/place/..."
}

reviewDateOriginal preserves the date text exposed by Google (for example, a relative date). likesCount and other optional review fields appear only when directly observed. Every row includes recordType, sourceUrl, and scrapedAt.

Benefits of Flattened Format:

  • ✅ Each row is one review (perfect for CSV export and data analysis)
  • ✅ Easy to query, filter, and aggregate in databases
  • ✅ Compatible with pandas DataFrames and SQL tables
  • ✅ Place metadata included in every row (no joins needed)
  • ✅ Simplified data pipeline integration

Use cases

Business Intelligence

  • Market Research - Analyze competitor locations and ratings
  • Location Planning - Find optimal areas for new business locations
  • Competitive Analysis - Track competitor reviews and ratings
  • Customer Insights - Understand what customers value in your industry

Data Analysis & Research

  • Sentiment Analysis - Analyze customer sentiment from reviews
  • Trend Detection - Identify popular locations and emerging trends
  • Service Quality - Compare service quality across locations
  • Price Analysis - Study pricing patterns across regions

AI & ML Applications

  • Training Data - Build datasets for recommendation systems
  • RAG Systems - Feed business and review data to AI models
  • Chatbot Training - Use reviews for customer service bots
  • Content Generation - Analyze successful business descriptions

⚠️ Limitations

  • Public Content Only - Cannot access restricted or private data
  • No Authentication - Requires public access to content
  • Rate Limits - Google may throttle excessive requests
  • Page-Based - Slower than direct API but more reliable
  • Dynamic Content - Some features may change if Google updates layout

FAQ

Does the MCP server need Google login cookies? No. Search and review modes use public Google Maps pages with bounded direct, fresh-context, and hardcoded residential recovery paths.

Why is a field missing from a result? The server omits values that Google did not expose instead of fabricating or padding them.

Can I use it for large exports? Results are emitted progressively, but Google’s own search/review limits and upstream availability still determine the practical maximum.

Which mode should I use for a single place? Use reviews with placeUrl or a canonical placeId; use search for free-text business discovery.

Why might a search or review run return fewer records? Google may expose a limited anonymous view or no matching public content; the actor reports what it observed and omits unavailable fields.

🗺️ Complete Google Maps Scraper Suite

This actor is part of a comprehensive Google Maps data extraction toolkit by crawlerbros. All actors run cookielessly on the free Apify plan with bounded direct, retry, and residential recovery paths, and return clean, structured data.

ActorWhat it does
🏢 Google Maps Business ScraperExtract business data — name, address, phone, website, rating, reviews, hours, amenities
⭐ Google Maps Reviews ScraperScrape reviews with reviewer Local Guide level, photos, mentioned items, owner replies
📸 Google Maps Photos ScraperExtract all photos from any place — max-resolution URLs, contributor info, categories
🕐 Google Maps Business Hours ScraperFull 7-day hours, timezone, current local time, next open/close, holiday hours
📊 Google Maps Popular Times ScraperBusy hours histogram for all 7 days + current busyness + typical visit time
📧 Google Maps Email ExtractorFind business emails + social media links by crawling websites
🗺️ Google Maps Area ScannerGeographic grid scanning — bypass the 120-place limit with bounding box / circle / polygon
💼 Google Maps Leads ScraperB2B lead generation with email + phone enrichment, US states + global countries
🧭 Google Maps Directions ScraperA→B routing — distance, duration, traffic, route alternatives for driving/walking/transit
📍 Google Maps Geocoding ScraperBidirectional geocoding — address ↔ coordinates, with address components
🔗 Google Maps Similar Places Scraper"People also search for" / related place discovery — competitor & alternative finder
🍽️ Google Maps Menu ScraperRestaurant menu items, prices, descriptions, photos
📌 Google Maps Nearby ScraperFind places near a coordinate point — lightweight POI search by category
📋 Google Maps Place List ScraperExtract Google's curated "Top X in Y" lists — best hotels/restaurants/things to do
🌍 Google Maps Timezone ScraperIANA timezone + current local time from coordinates

📄 License

This actor is provided as-is for scraping public Google Maps data in accordance with Google's terms of service.

💡 Notes

  • This MCP server reads Google Maps' public interface — no login, cookies, or API key required
  • Always respect Google's robots.txt and terms of service
  • Use responsibly and avoid overwhelming Google's servers
  • Consider implementing additional rate limiting for large-scale scraping
  • The actor works best with the Apify platform's infrastructure

🆘 Support

For issues, questions, or feature requests, please open an issue in the repository or contact support.


Made with ❤️ for the AI community | Powered by Apify