Lsa Spy Tool logo

Lsa Spy Tool

Community
garrettjsmith
lsa-spy-tool

When the user wants to check Local Services Ads rankings, see who's ranking in LSA results, monitor LSA competitive landscape, or track LSA ranking changes. Trigger on "LSA rankings," "Local Services Ads," "Google Guaranteed," "Google Screened," "who's ranking in LSAs," or "LSA competitors."

Overview

Publishergarrettjsmith
Repositorylocalseoskills
Skill namelsa-spy-tool
Stars
140
Forks
27
Bundled files
Instructions only
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • Self-contained

    Everything the model needs lives in the instructions — no extra files to sync.

  • Open source

    Published by garrettjsmith on GitHub. Read the source before you install it.

Installation

Install the Lsa Spy Tool AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/garrettjsmith/localseoskills/tree/main/skills/lsa-spy-tool
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/garrettjsmith/localseoskills.git /tmp/localseoskills
mkdir -p .claude/skills
cp -r /tmp/localseoskills/skills/lsa-spy-tool .claude/skills/lsa-spy-tool
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Lsa Spy Tool in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Lsa Spy Tool on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Lsa Spy Tool is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

LSA Spy Tool

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.

When to Use LSA Spy vs Other Tools

You NeedUse LSA SpyUse 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, thenlsa-ads skill for strategy
Keyword search volume❌Semrush, Ahrefs

Core Workflows

Check Current LSA Rankings

When: User asks "who's ranking in LSAs" or "how are we doing in LSAs" for a market.

  1. list_markets — find the relevant market ID by category + city
  2. get_rankings — current top-ranking businesses with positions
  3. If looking for a specific business: find_business with the business name

What the data tells you:

  • Position 1-3: These businesses get the vast majority of LSA leads
  • Businesses appearing consistently: Strong review profile + responsiveness + budget
  • Missing from results entirely: Either not running LSAs or profile issues

Check Who's in a Market

When: User wants the full competitive landscape, not just who's ranking right now.

  1. list_markets — find market ID
  2. get_businesses — ALL businesses that have appeared, with average rank and appearance frequency
  3. Sort by average rank to find consistent top performers
  4. Look for businesses with high appearance frequency but mediocre rank (they're spending but not optimizing)

What to look for:

  • Number of total competitors: Saturated markets (50+) vs thin markets (under 15)
  • Average rank spread: Tight (competitive) vs wide (a few businesses dominate)
  • New entrants: Businesses appearing recently that weren't there before

Monitor Ranking Changes

When: User wants to track movement — who's going up, who's going down.

  1. list_markets — find market ID
  2. get_ranking_changes — set days parameter (7 for weekly, 30 for monthly view)

What the changes tell you:

  • Business moved UP: Likely got more/better reviews, improved responsiveness, or competitors dropped
  • Business moved DOWN: Lost reviews, slow response times, budget issues, or new competitors entered
  • NEW entrant: Fresh competitor — check their review count and rating
  • Business DISAPPEARED: Paused ads, lost Google Guaranteed/Screened badge, or got suspended

Market Intelligence

When: User considering entering LSAs or wants strategic overview.

  1. list_markets — see all tracked markets
  2. get_market_details — see tracked search queries for a specific market
  3. get_rankings + get_businesses — understand competitive density
  4. Cross-reference top rankers' review counts against user's business

Interpreting LSA Spy Data

What Drives LSA Rankings

LSA rankings are NOT like organic/map pack. The primary factors:

  1. Reviews — count and rating (most important)
  2. Responsiveness — how fast you answer/respond to leads
  3. Proximity — distance from searcher
  4. Business hours — being open when someone searches
  5. Budget — having sufficient weekly budget
  6. Badge status — Google Guaranteed or Google Screened active

Reading the Rankings

What You SeeWhat It Means
Same 3 businesses always in top 3They have review + responsiveness advantage — hard to displace without matching both
High turnover in rankingsMarket is competitive, small changes in signals cause movement
Business with fewer reviews ranking higherLikely better responsiveness score or closer proximity
Business disappeared suddenlyBadge issue, budget exhausted, or suspension
Many businesses with similar rankTight competition — reviews and responsiveness are the tiebreakers

Key Metrics to Track

  • Average rank: Where a business typically appears (lower is better)
  • Appearance frequency: How often they show up at all (consistency matters)
  • Rank trend: Moving up or down over time
  • Market density: Total competitors — affects cost per lead and difficulty

What to Do Next

What You FoundNext ActionSkill
User not ranking in LSAsCheck if LSA profile is set up, verify Google Guaranteed/Screened badgelsa-ads
User ranking but in position 5+Diagnose: reviews, responsiveness, budgetlsa-ads, review-management
Competitor has way more reviewsBuild review generation strategy to close gapreview-management
User wants to enter a new LSA marketAssess competitive density, review requirements, estimated budgetlsa-ads
LSA data needs to go in a client reportInclude LSA rankings alongside organic/map pack datalocal-reporting
Want to compare LSA vs organic visibilityRun Local Falcon scan for same keywordslocal-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.

Frequently asked questions

What does the Lsa Spy Tool AI skill do?

When the user wants to check Local Services Ads rankings, see who's ranking in LSA results, monitor LSA competitive landscape, or track LSA ranking changes. Trigger on "LSA rankings," "Local Services Ads," "Google Guaranteed," "Google Screened," "who's ranking in LSAs," or "LSA competitors."

Why use Lsa Spy Tool on TypingMind?

Because you install it once and use it with any model. Lsa Spy Tool is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Lsa Spy Tool in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/garrettjsmith/localseoskills/tree/main/skills/lsa-spy-tool. TypingMind reads its SKILL.md and installs it as a skill you can enable per chat.

Which AI models can use Lsa Spy Tool?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Lsa Spy Tool?

As many as you like. As long as a model supports skills, you can use Lsa Spy Tool with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Lsa Spy Tool AI skill free?

Yes. It is published on GitHub by garrettjsmith under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇