Google Maps Lead Scraper
gosom/google-maps-scraper
Turns a plain request such as finding dentists in a city into a local Google Maps crawl run with Docker, then monitors it and helps you work with the results.
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
$ npx skills add geezerrrr/motive --skill local-places -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install geezerrrr/motive local-places --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/geezerrrr/motive.git skills-src && mkdir -p .claude/skills && cp -r skills-src/Motive/Resources/Skills.bundle/local-places .claude/skills/local-places && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "local-places" agent skill from https://github.com/geezerrrr/motive/tree/main/Motive/Resources/Skills.bundle/local-places into .claude/skills/local-places/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "local-places", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/geezerrrr/motive/tree/main/Motive/Resources/Skills.bundle/local-placesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add geezerrrr/motive --skill local-places -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install geezerrrr/motive local-places --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/geezerrrr/motive.git skills-src && mkdir -p .agents/skills && cp -r skills-src/Motive/Resources/Skills.bundle/local-places .agents/skills/local-places && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "local-places" agent skill from https://github.com/geezerrrr/motive/tree/main/Motive/Resources/Skills.bundle/local-places into .agents/skills/local-places/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "local-places", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add geezerrrr/motive --skill local-places -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install geezerrrr/motive local-places --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/geezerrrr/motive.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/Motive/Resources/Skills.bundle/local-places .cursor/skills/local-places && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "local-places" agent skill from https://github.com/geezerrrr/motive/tree/main/Motive/Resources/Skills.bundle/local-places into .cursor/skills/local-places/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "local-places", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/geezerrrr/motive.git --path Motive/Resources/Skills.bundle/local-places--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add geezerrrr/motive --skill local-places -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install geezerrrr/motive local-places --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/geezerrrr/motive.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/Motive/Resources/Skills.bundle/local-places .gemini/skills/local-places && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "local-places" agent skill from https://github.com/geezerrrr/motive/tree/main/Motive/Resources/Skills.bundle/local-places into .gemini/skills/local-places/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "local-places", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install geezerrrr/motive local-placesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add geezerrrr/motive --skill local-places -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/geezerrrr/motive.git skills-src && mkdir -p .github/skills && cp -r skills-src/Motive/Resources/Skills.bundle/local-places .github/skills/local-places && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "local-places" agent skill from https://github.com/geezerrrr/motive/tree/main/Motive/Resources/Skills.bundle/local-places into .github/skills/local-places/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "local-places", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add geezerrrr/motive --skill local-places -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install geezerrrr/motive local-places --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/geezerrrr/motive.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/Motive/Resources/Skills.bundle/local-places .opencode/skills/local-places && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "local-places" agent skill from https://github.com/geezerrrr/motive/tree/main/Motive/Resources/Skills.bundle/local-places into .opencode/skills/local-places/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "local-places", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
local-placesSearch for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Local Places is an agent skill from geezerrrr/motive. Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost.
Its SKILL.md is about 640 tokens, which your agent loads only when the skill is triggered. The skill folder holds 8 other files (for example `SERVER_README.md`, `src/local_places/__init__.py` and `src/local_places/google_places.py`).
It works with Google Maps Platform. The repository describes itself as: The AI agent that works while you don't watch. Lives in your menu bar, finds you when needed. The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 1db5218. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships script files (Python), which the agent can run.
Shell commands in SKILL.md call:
curluvFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use curl and uv, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
GOOGLE_PLACES_API_KEYFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Local Places loads about 635 tokens when it runs. Until then it costs about 25 tokens; SKILL.md has 153 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
echo "GOOGLE_PLACES_API_KEY=your-key" > .envuv run --env-file .env uvicorn local_places.main:app --host 127.0.0.1 --port 8000Requires `GOOGLE_PLACES_API_KEY` in `.env` or environment.Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from geezerrrr/motive at commit 1db5218, republished under its MIT licence (© geezerrrr). 153 words, ~635 tokens.
.claude/skills/local-places/SKILL.md (or your agent's skills folder). This skill also uses 6 other files; get the full folder from GitHub.Find places, Go fast
Search for nearby places using a local Google Places API proxy. Two-step flow: resolve location first, then search.
cd {baseDir}
echo "GOOGLE_PLACES_API_KEY=your-key" > .env
uv venv && uv pip install -e ".[dev]"
uv run --env-file .env uvicorn local_places.main:app --host 127.0.0.1 --port 8000Requires GOOGLE_PLACES_API_KEY in .env or environment.
Check server: curl http://127.0.0.1:8000/ping
Resolve location:
curl -X POST http://127.0.0.1:8000/locations/resolve \
-H "Content-Type: application/json" \
-d '{"location_text": "Soho, London", "limit": 5}'curl -X POST http://127.0.0.1:8000/places/search \
-H "Content-Type: application/json" \
-d '{
"query": "coffee shop",
"location_bias": {"lat": 51.5137, "lng": -0.1366, "radius_m": 1000},
"filters": {"open_now": true, "min_rating": 4.0},
"limit": 10
}'curl http://127.0.0.1:8000/places/{place_id}location_bias from chosen locationfilters.types: exactly ONE type (e.g., "restaurant", "cafe", "gym")filters.price_levels: integers 0-4 (0=free, 4=very expensive)filters.min_rating: 0-5 in 0.5 incrementsfilters.open_now: booleanlimit: 1-20 for search, 1-10 for resolvelocation_bias.radius_m: must be > 0{
"results": [
{
"place_id": "ChIJ...",
"name": "Coffee Shop",
"address": "123 Main St",
"location": { "lat": 51.5, "lng": -0.1 },
"rating": 4.6,
"price_level": 2,
"types": ["cafe", "food"],
"open_now": true
}
],
"next_page_token": "..."
}Use next_page_token as page_token in next request for more results.
© geezerrrr, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 6 other files in Motive/Resources/Skills.bundle/local-places of geezerrrr/motive.
Open the folder on GitHubat commit 1db5218
We found 5 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 5 other GitHub owners. This page covers the copy in geezerrrr/motive, which our catalogue first saw on October 7, 2026.
Local Places next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Local Places this skillgeezerrrr/motive | 115 | 5 repos | ~635 | Automated safety check: Notes | MIT | |
| Google Maps Lead Scrapergosom/google-maps-scraper | 6.4k | — | ~1.8k | Automated safety check: Warn | MIT | |
| Google Maps ScraperMahanaicoach/google-maps-scraper-kit | 1.3k | — | ~2.8k | Automated safety check: Pass | MIT | |
| Google Mapscablate/mcp-google-map | 469 | — | ~909 | Automated safety check: Pass | MIT | |
| Draw Imageai-sns/ai-sns | 332 | — | ~778 | Automated safety check: Pass | MIT | |
| Android Maps Ktxgooglemaps/android-maps-ktx | 360 | — | ~897 | Automated safety check: Pass | Apache-2.0 |
gosom/google-maps-scraper
Turns a plain request such as finding dentists in a city into a local Google Maps crawl run with Docker, then monitors it and helps you work with the results.
Mahanaicoach/google-maps-scraper-kit
Scrape Google Maps business listings (name, address, phone, website, rating, reviews, lat/lng, hours, emails) via the local gosom google-maps-scraper REST API.
cablate/mcp-google-map
Search places, resolve addresses, compare routes, inspect neighborhoods, and retrieve geographic or environmental facts through the standalone @cablate/mcp-google-map CLI.
ai-sns/ai-sns
Generate an image from a text prompt using an OpenAI-compatible image generation API (gpt-image-1-mini or compatible).
googlemaps/android-maps-ktx
Provides idiomatic Kotlin extension (KTX) patterns, reactive Flow event streams, and multi-subscriber shareIn rules for Google Maps SDK for Android and its Utility Library.
cablate/mcp-google-map
Analyze Google Business Profile visibility, geographic grid rankings, local search keywords, and nearby competitors through the standalone Google Maps CLI.
geezerrrr/motive
X/Twitter CLI for reading, searching, posting, and engagement via cookies.
geezerrrr/motive
Run Codex CLI, Claude Code, OpenCode, or Pi Coding Agent via background process for programmatic control.
geezerrrr/motive
Reorder Foodora orders + track ETA/status with ordercli. An agent skill from geezerrrr/motive.
geezerrrr/motive
Manage Apple Reminders via the remindctl CLI on macOS (list, add, edit, complete, delete).
geezerrrr/motive
Control Philips Hue lights/scenes via the OpenHue CLI. An agent skill from geezerrrr/motive.
geezerrrr/motive
iMessage/SMS CLI for listing chats, history, watch, and sending.
Works with
Search for places (restaurants, cafes, etc.) via Google Places API proxy on localhost. Local Places is an agent skill from geezerrrr/motive.) via Google Places API proxy on localhost.
Run `npx skills add geezerrrr/motive --skill local-places -a claude-code`. Or copy the skill folder (Motive/Resources/Skills.bundle/local-places in geezerrrr/motive) into .claude/skills/local-places in your project. Claude Code loads it when a task matches its description.
Run `npx skills add geezerrrr/motive --skill local-places -a codex`. Or copy the skill folder (Motive/Resources/Skills.bundle/local-places in geezerrrr/motive) into .agents/skills/local-places in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add geezerrrr/motive --skill local-places -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/local-places, .gemini/skills/local-places, .github/skills/local-places and .opencode/skills/local-places in your project.
Going by SKILL.md and its folder, Local Places needs Python for the scripts in its folder, the command-line tools its instructions call (curl and uv) and credentials named GOOGLE_PLACES_API_KEY. Our summary lists: Python 3; A credential in GOOGLE_PLACES_API_KEY.
SKILL.md contains no URLs. Its commands use curl and uv, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (mentions a .env file), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Local Places is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 635 tokens (SKILL.md is roughly 2.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Local Places: Google Maps Lead Scraper (gosom/google-maps-scraper, 6.4k stars), Google Maps Scraper (Mahanaicoach/google-maps-scraper-kit, 1.3k stars), Google Maps (cablate/mcp-google-map, 469 stars) and Draw Image (ai-sns/ai-sns, 332 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
geezerrrr (a GitHub user) maintains it in geezerrrr/motive, which has 115 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on February 28, 2026.
Source: geezerrrr/motive on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.