From local-seo-skills
Checks Local Services Ads rankings, identifies top-ranking businesses, monitors competitive landscape, and tracks ranking changes across markets.
npx claudepluginhub garrettjsmith/localseoskillsThis skill uses the workspace's default tool permissions.
You have direct access to LSA Spy via MCP. This skill tells you WHEN to use each operation and WHAT to do with the results.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
You have direct access to LSA Spy via MCP. This skill tells you WHEN to use each operation and WHAT to do with the results.
| You Need | Use LSA Spy | Use Instead |
|---|---|---|
| Who's ranking in LSA results right now | ✅ | — |
| LSA ranking changes over time | ✅ | — |
| Find a specific business in LSA results | ✅ | — |
| Which markets have LSA coverage | ✅ | — |
| Map pack / organic rankings | ❌ | Local Falcon |
| LSA ad setup and optimization strategy | ❌ Use LSA Spy for data, then | lsa-ads skill for strategy |
| Keyword search volume | ❌ | Semrush, Ahrefs |
When: User asks "who's ranking in LSAs" or "how are we doing in LSAs" for a market.
list_markets — find the relevant market ID by category + cityget_rankings — current top-ranking businesses with positionsfind_business with the business nameWhat the data tells you:
When: User wants the full competitive landscape, not just who's ranking right now.
list_markets — find market IDget_businesses — ALL businesses that have appeared, with average rank and appearance frequencyWhat to look for:
When: User wants to track movement — who's going up, who's going down.
list_markets — find market IDget_ranking_changes — set days parameter (7 for weekly, 30 for monthly view)What the changes tell you:
When: User considering entering LSAs or wants strategic overview.
list_markets — see all tracked marketsget_market_details — see tracked search queries for a specific marketget_rankings + get_businesses — understand competitive densityLSA rankings are NOT like organic/map pack. The primary factors:
| What You See | What It Means |
|---|---|
| Same 3 businesses always in top 3 | They have review + responsiveness advantage — hard to displace without matching both |
| High turnover in rankings | Market is competitive, small changes in signals cause movement |
| Business with fewer reviews ranking higher | Likely better responsiveness score or closer proximity |
| Business disappeared suddenly | Badge issue, budget exhausted, or suspension |
| Many businesses with similar rank | Tight competition — reviews and responsiveness are the tiebreakers |
| What You Found | Next Action | Skill |
|---|---|---|
| User not ranking in LSAs | Check if LSA profile is set up, verify Google Guaranteed/Screened badge | lsa-ads |
| User ranking but in position 5+ | Diagnose: reviews, responsiveness, budget | lsa-ads, review-management |
| Competitor has way more reviews | Build review generation strategy to close gap | review-management |
| User wants to enter a new LSA market | Assess competitive density, review requirements, estimated budget | lsa-ads |
| LSA data needs to go in a client report | Include LSA rankings alongside organic/map pack data | local-reporting |
| Want to compare LSA vs organic visibility | Run Local Falcon scan for same keywords | local-falcon-tool |
Default next step: LSA rankings without review context are incomplete. Always check the user's review count and rating against the top 3 LSA competitors before making recommendations.