Google Maps Business Intelligence MCP avatar

Google Maps Business Intelligence MCP

Pricing

Pay per usage

Go to Apify Store
Google Maps Business Intelligence MCP

Google Maps Business Intelligence MCP

Find and score local business leads with AI. Every result includes a Lead Quality Score showing which businesses need your services most — no website, low ratings, new listings. Built for sales agents and lead gen workflows.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Sam Rothschild

Sam Rothschild

Maintained by Community

Actor stats

0

Bookmarked

1

Total users

0

Monthly active users

4 days ago

Last modified

Share

The only Google Maps tool that scores lead quality.

Every business listing comes with a Lead Quality Score (0–100) and an outreach hint — so sales agents and AI workflows instantly know which businesses need your services and exactly what to pitch.

This is the third in a portfolio of intelligence-first Apify MCP tools, alongside Amazon Intel MCP and Shopify Intel MCP.


⚠️ Requirements: Google Places API Key

This actor uses the Google Places API for reliable, structured data — no scraping, no bot detection issues.

You need a free Google API key to use this actor.

Setup (2 minutes):

  1. Go to console.cloud.google.com
  2. Create a project → search "Places API" → Enable it
  3. Go to APIs & ServicesCredentialsCreate API Key
  4. Pass the key in the Actor input as googleApiKey

Cost: Google gives you $200/month free credit (~28,000 Text Search calls). For most workflows this is effectively free.

Pass your key in the Actor input:

{
"tool": "find_leads",
"params": { "industry": "plumber", "location": "Austin TX" },
"googleApiKey": "AIzaSy..."
}

Or set it as an environment variable GOOGLE_PLACES_API_KEY in the Actor's secret env vars.


Example output

{
"name": "Metro Plumbing Co.",
"address": "412 Oak St, Austin TX",
"phone": null,
"website": null,
"rating": 3.2,
"review_count": 7,
"category": "Plumber",
"hours_status": "Open now",
"lead_quality_score": {
"total": 79,
"label": "hot",
"breakdown": {
"digital_presence_gap": 55,
"review_health": 90,
"business_maturity": 65,
"category_premium": 85,
"contact_accessibility": 80
}
},
"outreach_hint": "No website — offer web design and Google Business Profile setup"
}

The Lead Quality Score

A composite 0–100 metric across five signals — each weighted by how much it predicts agency revenue opportunity:

ComponentWeightWhat it measures
Digital Presence Gap30%No website, no phone, missing hours, unclaimed listing
Review Health25%Few reviews + low rating = hungry for customers
Business Maturity20%New/early-stage businesses need everything
Category Premium15%HVAC/plumbing/medical pay more than retail/restaurants
Contact Accessibility10%Hard-to-reach = high need but lower conversion

Score bands:

  • 🔥 60–100 hot — prioritise immediately
  • 🟡 40–59 warm — good prospect
  • 🟠 20–39 lukewarm — worth a look
  • 🔵 0–19 cold — skip

Tools

search_businesses — $0.05/call

Broad search with lead scoring. Best for initial prospecting.

{
"query": "HVAC",
"location": "Austin TX",
"max_results": 20
}

Returns every listing with lead_quality_score, sorted hottest first. Includes search_summary with counts of hot/warm/lukewarm/cold leads and average score.


get_business_details — $0.08/call

Deep-scrape a single business. Returns everything: phone, website, hours, photos count, recent reviews (up to 5), booking URL, attributes, and a score calculated from the full signal set.

{
"business_url": "https://www.google.com/maps/place/...",
"name_and_address": "Metro Plumbing Co, 412 Oak St Austin TX"
}

find_leads — $0.10/call ⭐ The killer tool

Purpose-built for sales agents. Searches, filters, groups, and adds outreach hints.

{
"industry": "plumber",
"location": "Chicago IL",
"lead_quality_min": 65,
"max_results": 30
}

Returns:

{
"hot_leads": [
{
"name": "...",
"lead_quality_score": { "total": 78, "label": "hot", ... },
"outreach_hint": "No website — offer web design and Google Business Profile setup"
}
],
"warm_leads": [...],
"total_searched": 40,
"total_qualified": 12
}

Outreach hints are automatically generated from the signals that drove the score:

  • "No website — offer web design and Google Business Profile setup"
  • "Low rating (3.1/5) — offer reputation management and review strategy"
  • "New business with no reviews — offer full digital launch package"
  • "No contact info listed — offer business presence setup"
  • "Early-stage business with few reviews — offer local SEO and growth package"

analyze_area — $0.08/call

Market intelligence overview for an area or industry.

{
"location": "Brooklyn NY",
"industry": "restaurant"
}

Returns:

  • total_businesses_found, avg_lead_quality_score
  • opportunity_index — composite area score (higher = more underserved market)
  • category_breakdown — top categories by count and average score
  • digital_gap_analysis — % with no website, % with no phone, % low rating, % few reviews
  • top_10_leads — the hottest prospects in the area

Pricing

ToolPriceBest for
search_businesses$0.05/callInitial prospecting, list building
get_business_details$0.08/callDeep research on a single business
find_leads$0.10/callSales outreach, CRM enrichment
analyze_area$0.08/callMarket reports, territory planning

Use cases

Sales agents & SDRs — Run find_leads for a territory + industry. Get a sorted, hinted list ready to dial. No manual research needed.

Marketing agencies — Use analyze_area to generate market reports showing clients how underserved their area is. Close more deals with data.

Local SEO tools — Enrich your database with Lead Quality Scores. Surface which clients are falling behind competitors.

CRM enrichment — Pipe results into Salesforce, HubSpot, or Clay. Score existing leads against the 0–100 scale.

AI lead gen workflows — Connect via MCP to Claude, Cursor, or any MCP client. Ask "find me hot HVAC leads in Denver" and get a scored list in seconds.


Connecting as an MCP server

This actor runs in Apify Standby mode as a persistent MCP server.

Endpoint: POST {actor_standby_url}/mcp

Claude Desktop config (~/.claude/claude_desktop_config.json):

{
"mcpServers": {
"gmaps-intel": {
"url": "https://{your-actor-standby-url}/mcp"
}
}
}

Cursor / Windsurf config:

{
"mcp": {
"servers": {
"gmaps-intel": {
"url": "https://{your-actor-standby-url}/mcp",
"transport": "http"
}
}
}
}

Proxy

Residential proxies are strongly recommended for Google Maps — datacenter IPs are frequently blocked. The actor is pre-configured to use Apify Residential proxies when available.

Configure in the Actor input:

{
"proxyConfiguration": {
"useApifyProxy": true,
"apifyProxyGroups": ["RESIDENTIAL"]
}
}

Single-run mode

Run one tool via the Apify UI or API without an MCP client:

Input:

{
"tool": "find_leads",
"params": {
"industry": "dentist",
"location": "Miami FL",
"lead_quality_min": 60
}
}

Results are pushed to the Actor dataset.


Tech stack

  • TypeScript, Node.js 22
  • Apify SDK v3 (pay-per-event billing, proxy management)
  • Playwright (Chromium) for Google Maps scraping
  • MCP Streamable HTTP transport (@modelcontextprotocol/sdk)
  • Express HTTP server