Metadata-Version: 2.4
Name: leadgen-maps
Version: 1.1.5
Summary: Apollo-class local lead generation from Google Maps — no API. Streams leads to Notion, Google Sheets, or CSV with live progress and zero duplicates.
Author: Auradevs
License: Proprietary
Project-URL: Homepage, https://github.com/subhadeeproy3902/lead-gen
Project-URL: Repository, https://github.com/subhadeeproy3902/lead-gen
Keywords: lead-generation,google-maps,scraper,notion,apollo,outreach,automation
Requires-Python: >=3.9
Description-Content-Type: text/markdown
Requires-Dist: playwright>=1.49
Requires-Dist: openpyxl>=3.1
Requires-Dist: fpdf2>=2.7
Provides-Extra: sheets
Requires-Dist: gspread>=6.0; extra == "sheets"
Requires-Dist: google-auth>=2.0; extra == "sheets"
Provides-Extra: mcp
Requires-Dist: mcp>=1.0; extra == "mcp"
Provides-Extra: all
Requires-Dist: gspread>=6.0; extra == "all"
Requires-Dist: google-auth>=2.0; extra == "all"
Requires-Dist: mcp>=1.0; extra == "all"

# leadgen 🗺️ → 📇

**Apollo-class local lead generation from Google Maps. No API. Streams leads
straight into Notion or CSV — with live progress and zero duplicates.**

Ships in **two interchangeable editions** with the *same* CLI and the *same*
41-field Apollo-grade output:

| Edition | Best for | Install |
|---|---|---|
| 🐍 **Python** (`src/leadgen`) | you have Python; + **Google Sheets** & scripting | `pipx install leadgen-maps` |
| 🐹 **Go** (`go/`) | **no Python** — one self-contained binary | download the binary, run it |

Pick whichever fits the machine — **same `leadgen` commands, same keyless connect.**
Python adds the Google Sheets connector; the Go binary needs nothing installed but Chrome.

> Better than Apollo for local SMBs: phone, website, socials, **geo-coordinates,
> Google Place ID, rating, reviews, hours, photos, Lead Score** — and a
> no-website filter to find your prime prospects. Apollo has none of that for a
> neighbourhood business.

---

## 🔌 Connect Notion in one click — no keys, ever
You **never paste keys into `.env`**. The first time you send leads to Notion,
your browser opens, you authorize once, and the token is cached **only on your
computer** (`~/.leadgen/credentials.json`). Every run after that is silent.
```bash
leadgen connect notion          # opens the browser, authorize once → done
# or just run — it auto-connects the first time:
leadgen run --niche "cafe" --location "Kolkata" --limit 30 --to notion
```
Google Sheets is the same — `leadgen connect google` opens the browser, you click
**Allow**, and we **auto-create a Sheet** in your Drive:
```bash
leadgen connect google
leadgen run --niche "cafe" --location "Kolkata" --limit 30 --to gsheets
```
Switch accounts or log out any time:
```bash
leadgen disconnect notion | google | all     # removes the local token
```
Buyer setup (dead simple, both editions): **[lemonsqueezy/SETUP.md](lemonsqueezy/SETUP.md)**.
How the keyless connect stays secure (auth broker): **[broker/README.md](broker/README.md)**.

## 🐍 Python edition — use **pipx** (not pip)
> **Why not `pip install`?** On modern Linux/macOS it's blocked
> (`externally-managed-environment`), and on Windows it installs `leadgen` to a
> folder that's **not on your PATH** (so `leadgen` "is not recognized"). **pipx**
> fixes both — it's the right tool for installing CLI apps.

**1. Install pipx once** (per OS):
```bash
# Windows  (then CLOSE and reopen the terminal)
py -m pip install --user pipx
py -m pipx ensurepath
# macOS
brew install pipx && pipx ensurepath
# Linux (Debian/Ubuntu/Mint)
sudo apt install -y pipx && pipx ensurepath
```
**2. Install and run** — the browser **downloads itself on first run**, no extra step:
```bash
pipx install leadgen-maps
leadgen connect notion             # browser opens → authorize once → done
leadgen run --niche "cafe" --location "Kolkata" --limit 30 --to notion
```
> • `leadgen` not found? Reopen the terminal, or run **everything** as
>   `python -m leadgen_maps …` (e.g. `python -m leadgen_maps run …`) — needs no PATH, always works.
> • Got an **old version**? `pipx upgrade leadgen-maps` (latest is 1.1.4).
> • Already used `pip`? `pip uninstall leadgen-maps`, then use pipx.

Connectors: **Notion, Google Sheets, CSV, XLSX, PDF**.

## 🐹 Go edition — single binary, **zero Python, zero pip**
The no-hassle path. In your download, open `bin/` and pick your OS:
```bash
# macOS / Linux
chmod +x leadgen && sudo mv leadgen /usr/local/bin/
# Windows: run leadgen.exe (optionally move it to a folder on your PATH)

leadgen connect notion             # one-time browser authorize (no .env)
leadgen run --niche "cafe" --location "Kolkata" --limit 30 --to notion
```
Needs only **Google Chrome** — nothing else to install. Same `leadgen` commands as
the Python edition. (Developers with Go: `go install github.com/subhadeeproy3902/lead-gen/go/cmd/leadgen@latest`.)

---

## Same CLI, both editions
```bash
leadgen run --niche "<type>" --location "<city>" --limit <N> --to notion --website without
leadgen doctor        # internet, connectors, browser
leadgen fields        # the 41-field Apollo-grade schema
```
```
  [██████████░░░░░░] 21/30 leads (70%) │ #54 of 110 scanned │ ETA 1m20s │ Blue Tokai
```

## Let AI run it (Claude Code AND claude.ai)
Ships an **async MCP server** so any MCP-capable AI can call leadgen as a tool. A
scrape takes minutes, so `leadgen_run` **starts a background job** and returns an
ETA instantly; `leadgen_status` fetches the leads when ready. One job per user.
- **Claude Code / Cursor (local)** — add [`lemonsqueezy/mcp/leadgen.mcp.json`](lemonsqueezy/mcp/leadgen.mcp.json); just ask "pull 15 gyms in Mumbai".
- **claude.ai (website)** — host it on a VPS and add the HTTPS URL + `/mcp` as a custom connector.

## Docs
- **[lemonsqueezy/SETUP.md](lemonsqueezy/SETUP.md)** — buyer setup, both editions, dead simple.
- **[lemonsqueezy/mcp/MCP-SETUP.md](lemonsqueezy/mcp/MCP-SETUP.md)** — use it from an AI assistant.
- **[deploy/MCP-VPS-SETUP.md](deploy/MCP-VPS-SETUP.md)** — host the async MCP server on a VPS, 24/7.
- **[broker/README.md](broker/README.md)** — the auth broker that keeps the OAuth secret off the package.
- **[skills/leadgen/SKILL.md](skills/leadgen/SKILL.md)** — the agent operating manual.
- **[TESTS.md](TESTS.md)** — real runs with captured output.

Built by Auradevs.
