Operated by Sourcelane✓ verified
Find local businesses by category and city with phone numbers, emails, websites, ratings, reviews and opening hours. Filter for businesses with no website or a high rating.
Builds targeted lists of local businesses by category and geographic area and extracts structured lead data from business profiles on Google Maps. The connector discovers contact details (phone numbers and emails when clearly associated with the business), website and domain information, full postal address and geocoordinates, ratings with review counts and rating distribution, opening hours, claim/ownership status, descriptive metadata, images and a Google Maps link. It performs area-based searches (city/region/postal code or coordinates with radius), applies filters for presence/absence of website, phone or email, claimed profile status, minimum rating and minimum review count, and supports sorting and result limits to produce one record per business for lead generation and analysis.
Verified Oct 25, 10:11 PM
$0.003
per business lead
Up to 100 per call. Only pay for results returned; failed calls are refunded.
Web design and SEO agencies
Find businesses without a website or with few reviews to pitch services
Local lead generation
Build call and email lists for trades in any city
Sales prospecting
Target well-reviewed, established businesses in a niche (high-review counts)
Reputation management
Identify businesses with low ratings or unclaimed profiles for outreach
Market research
Count and compare competitors by category and area based on ratings and review metrics
Types of business, one per line, e.g.
City name, spelled in full (e.g.
Optional.
Optional.
Optional, instead of or as well as a city: "latitude,longitude" (e.g.
Optional.
Optional settings
| Window | Uptime | Success rate | p50 | p95 | Calls |
|---|---|---|---|---|---|
| 24h | — | — | — | — | 0 |
| 7d | — | — | — | — | 0 |
| 30d | — | — | — | — | 0 |
Call it through Sourcelane's gateway or MCP server. We run the connector, apply your agent's spend guardrails, and bill only the results returned.
Call it via Sourcelane
curl -X POST https://api.usesourcelane.com/v1/call \
-H "Authorization: Bearer sl_live_your_agent_key" \
-H "Content-Type: application/json" \
-d '{"listing":"business-listings-lead-finder","params":{"categories":["plumber"],"maxResults":5},"maxResults":10}'Request params
| Field | Type | Required | Description |
|---|---|---|---|
categories | array | optional | Types of business, one per line (up to 10), e.g. plumber, dentist, pizza restaurant, real estate agency. Plurals and capitals are fine; each is matched to the closest business category. |
city | string | optional | City name, spelled in full (e.g. Austin, New York, London). |
region | string | optional | Optional. Full state or region name, e.g. Texas or California (not TX or CA). |
postalCode | string | optional | Optional. Only businesses with this exact ZIP or postal code. |
countryCode | string | optional | Optional. 2-letter country code, e.g. US, GB, CA, AU. Recommended with a city name that exists in several countries. |
coordinates | string | optional | Optional, instead of or as well as a city: "latitude,longitude" (e.g. 40.7128,-74.0060) to search in a radius around a point. |
radiusKm | integer | optional | Radius around the coordinates, in kilometres. Only used with coordinates. |
nameContains | string | optional | Optional. Only businesses whose name contains this text, e.g. "plumbing" or a brand. |
hasWebsite | string | optional | Any; only businesses with a website; or only businesses with NO website (great leads for web designers and agencies). |
hasPhone | string | optional | Any, only businesses with a phone number, or only those without one. |
hasEmail | string | optional | Any, only businesses with a known email address, or only those without one. |
claimed | string | optional | Whether the owner has claimed the business profile. Unclaimed businesses are often less marketing-savvy. |
minRating | number | optional | Only businesses rated at or above this (0-5). 0 includes everything. |
minReviews | integer | optional | Only businesses with at least this many reviews. |
sortBy | string | optional | Which businesses come first. |
maxResults | integer | optional | Maximum businesses to return. Up to 50,000. Capped at 100 per call. |
Each result contains
| Field | Type | Description |
|---|---|---|
name | string | Name |
category | string | Category |
categories | array | — |
phone | string | Phone |
email | null | |
emails | null | — |
website | string | Website |
domain | string | — |
address | string | Address |
street | string | — |
city | string | City |
postalCode | string | — |
region | string | — |
countryCode | string | — |
latitude | number | — |
longitude | number | — |
rating | number | Rating |
reviewCount | integer | Reviews |
ratingDistribution | object | — |
priceLevel | null | — |
isClaimed | boolean | Claimed |
openingHours | object | — |
description | string | — |
totalPhotos | integer | — |
logo | string | — |
mainImage | string | — |
googleMapsUrl | string | Google Maps |
placeId | string | — |
cid | string | — |
lastUpdated | string | — |
scrapedAt | string | — |
Pick your tool and connect in under a minute. Then just ask — for example: “Which AI companies filed a Form D in the last two weeks, and how much did they raise?”
Connect Claude
Web, desktop and mobile. One click, then confirm.
Adds the Sourcelane MCP server with your key as a header.
claude mcp add --transport http sourcelane https://api.usesourcelane.com/mcp \
--header "Authorization: Bearer sl_live_your_agent_key"Alternative to the connector URL: add to claude_desktop_config.json, then restart Claude.
{
"mcpServers": {
"sourcelane": {
"command": "npx",
"args": [
"-y",
"mcp-remote",
"https://api.usesourcelane.com/mcp",
"--header",
"Authorization:${AUTH_HEADER}"
],
"env": {
"AUTH_HEADER": "Bearer sl_live_your_agent_key"
}
}
}
}Add to ~/.cursor/mcp.json (or Windsurf's mcp_config.json).
{
"mcpServers": {
"sourcelane": {
"url": "https://api.usesourcelane.com/mcp",
"headers": {
"Authorization": "Bearer sl_live_your_agent_key"
}
}
}
}Save as .vscode/mcp.json. VS Code prompts for your key once.
{
"servers": {
"sourcelane": {
"type": "http",
"url": "https://api.usesourcelane.com/mcp",
"headers": {
"Authorization": "Bearer ${input:sourcelane-key}"
}
}
},
"inputs": [
{
"type": "promptString",
"id": "sourcelane-key",
"description": "Sourcelane agent key",
"password": true
}
]
}Create a GPT → Actions → Import from URL, then Authentication: API Key, Bearer.
https://usesourcelane.com/openapi.jsonOne POST. Pass maxResults to cap cost.
curl -X POST https://api.usesourcelane.com/v1/call \
-H "Authorization: Bearer sl_live_your_agent_key" \
-H "Content-Type: application/json" \
-d '{"listing":"business-listings-lead-finder","params":{"categories":["plumber"],"maxResults":5},"maxResults":10}'Wrap the REST call as a tool, or point an MCP client at the endpoint.
import requests
res = requests.post(
"https://api.usesourcelane.com/v1/call",
headers={"Authorization": "Bearer sl_live_your_agent_key"},
json={
"listing": "business-listings-lead-finder",
"params": {"categories":["plumber"],"maxResults":5},
"maxResults": 10,
},
timeout=300,
)
body = res.json()
print(body["receipt"]["chargedMicros"], "micro-USD for", body["receipt"]["results"], "results")
print(body["data"])—
0 reviews
Leave a review
Loading reviews…