# Prospect Locally > Prospect Locally finds every Google Maps business for a niche in one or many places and returns each one with an owner name, emails, labelled phone numbers, social profiles, and website data, as a list you export as CSV or read through a REST API and an MCP server. ## Summary Prospect Locally searches Google Maps for a niche, such as plumber, in a city, a state, or a whole country. Each business that comes back is enriched with an owner name, public website emails, phone numbers labelled mobile, landline, or VoIP with their carrier, social profiles, Better Business Bureau data, website status, the technology the site runs on, and text from the site. You export the leads as CSV for an outreach tool, or let ChatGPT, Claude, or GoHighLevel run the searches through the MCP server. You can also check whether a phone number is live and which carrier holds it. ## Best use - Marketing agencies, cold callers, cold emailers, and website resellers who need local business leads with a named owner. - Lead lists for one niche across many cities, kept as a saved campaign that you can pause and resume. - An AI assistant that finds, enriches, and exports leads on a user's behalf. - Not for guessing email addresses: Prospect Locally reports only addresses published on a business's own pages. ## Product links - [Home](https://prospectlocally.com/) - [Pricing](https://prospectlocally.com/#pricing) - [Sign up](https://app.prospectlocally.com/signup) - [Sign in](https://app.prospectlocally.com/login) ## Pricing - Free: $0, with 100 credits once for the life of the account. - Starter: $39 a month, or $29 a month billed yearly ($348 a year), with 10,000 credits each month. - Agency: $97 a month, or $79 a month billed yearly ($948 a year), with 50,000 credits each month. - Scale: $297 a month, or $229 a month billed yearly ($2,748 a year), with 200,000 credits each month. - Add-on pack: 10,000 permanent credits that never expire, for paid plans only. Credits are shared by the app, the REST API, and the MCP server. The REST API is on every plan, including Free. ## Developer docs - [API documentation](https://prospectlocally.com/docs) - [MCP server documentation](https://prospectlocally.com/docs#mcp) - [Agent skill file](https://prospectlocally.com/local-prospects-skill.md): Markdown of about 10 KB to save as CLAUDE.md - MCP server URL: https://app.prospectlocally.com/api/mcp - REST base URL: https://app.prospectlocally.com/api/v1 - Demo endpoints with no key and no credits: https://app.prospectlocally.com/api/v1/demo/* ## Content links - [Docs](https://prospectlocally.com/docs) - [Updates](https://prospectlocally.com/updates) - [Blog](https://prospectlocally.com/blog) - [Compare](https://prospectlocally.com/compare) - [Affiliate program](https://prospectlocally.com/affiliate) - [Agent skill file](https://prospectlocally.com/local-prospects-skill.md) ## API summary - Authentication: send the header `x-api-key: lp_example_key` with your own key. MCP clients that cannot sign in send `Authorization: Bearer `; ChatGPT, claude.ai, and GoHighLevel connect by OAuth with no key. - `GET https://app.prospectlocally.com/api/v1/locations?q=` finds a `location_code` from a place name. - `GET https://app.prospectlocally.com/api/search/categories?q=` finds a Google Maps category and needs no key. - `POST https://app.prospectlocally.com/api/v1/search` searches one place and returns the businesses at once. - `GET https://app.prospectlocally.com/api/v1/job/:jobId` reports the progress of the background enrichment. - `GET https://app.prospectlocally.com/api/v1/job/:jobId/results` returns the leads as `json`, `simple`, `advanced`, `ghl`, `instantly`, or `oneclick`. - `POST https://app.prospectlocally.com/api/v1/enrich` enriches 1 to 10 domains in one call. - `POST https://app.prospectlocally.com/api/v1/verify` looks up the line type and carrier of 1 to 100 phone numbers. - `https://app.prospectlocally.com/api/v1/campaigns` creates, previews, starts, pauses, resumes, stops, reads, edits, and exports campaigns. - Errors: 400 for a bad request (the body lists the valid options), 401 for a missing or invalid key, 429 for too few credits or too many requests, and 500 for a server error. ## Quick start 1. Create an account at https://app.prospectlocally.com/signup and make an API key on the API keys screen. 2. Find a location code: ``` curl "https://app.prospectlocally.com/api/v1/locations?q=austin%20texas" -H "x-api-key: lp_example_key" ``` 3. Search one place: ``` curl -X POST https://app.prospectlocally.com/api/v1/search \ -H "x-api-key: lp_example_key" \ -H "content-type: application/json" \ -d '{ "keyword": "plumber", "location_code": 1015116, "depth": 100 }' ``` 4. Poll `GET https://app.prospectlocally.com/api/v1/job/` every 5 seconds until `status` is `completed`, then read `GET https://app.prospectlocally.com/api/v1/job//results?format=json`. ## Search input and output - Input: `keyword` (the niche), `location_code` (one place), `depth` (100, 300, 500, or 700; default 300), and optionally `exact_category_key`. - A keyword that equals a Google Maps category name keeps only businesses whose primary category matches. - Output: the Google Maps businesses at once, with `name`, `phone`, `website`, `address`, `rating`, `reviews`, `category`, and `place_id`. Enrichment then adds the owner, emails, labelled phones, socials, Better Business Bureau data, and website data. - Filters on the results: `has_website`, `has_email`, `has_phone`, and `has_mobile_phone`. They combine with AND. - Fields with no data are `null`. ## Credit behaviour - A search costs 1 credit for each business it returns, and `POST /enrich` costs 1 credit for each domain. Verifying a phone number costs 5 credits, and a number verified in the last 30 days is free. - A search reserves its `depth` before any provider work, charges only the businesses it keeps, and refunds the rest in the same response, which reports `credits_reserved`, `leads_charged`, `credits_refunded`, and `leads_remaining`. A failed search refunds everything. - A search needs 100 available credits to start. A single-location search at depth 100 can run on a balance of 1 to 99. - Polling, reading results, and exporting cost nothing. - A search the balance cannot cover returns HTTP 429 with `code: "insufficient_credits"`, `required_credits`, and `available_credits`, before any provider call. ## Agent guidance - Use a campaign when the user wants leads from many areas, such as a state, a country, or a list of cities. A campaign is saved, resumable, and removes duplicates across its locations. - Use POST /search for a one-off search, or a search of a few leads in one place, where the user wants the answer in the same conversation. - Enrich at most 10 leads in one call to POST /enrich or the enrich_domains tool. Split a longer list into batches of 10. - Before you search, enrich, start a campaign, or verify phone numbers, tell the user the credit cost and ask for a yes. Never spend credits on a guess, and never repeat a paid call the user did not ask for. - The full instructions are in https://prospectlocally.com/local-prospects-skill.md.