Help us improve
Share bugs, ideas, or general feedback.
From seo-aeo-pro
Generates Google Business Profile posts, 30-day calendars, NAP audits, citation checks, review templates, and competitor research for local SEO.
npx claudepluginhub mangollc/claude-seo-skill --plugin seo-aeo-proHow this skill is triggered — by the user, by Claude, or both
Slash command
/seo-aeo-pro:seo-localThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Load client context first. Requires `gbp` section in client config. See seo-keywords [rules/client-setup.md](../seo-keywords/rules/client-setup.md).
Guides local SEO strategy including Google Business Profile optimization, NAP consistency audits, local pack rankings, citation building, and location page optimization.
Audits local SEO for websites: scans for NAP info, checks consistency across pages, generates city-specific keywords, assesses GBP completeness, and outputs schema markup.
Evaluates and optimizes local SEO: Google Business Profile, NAP consistency, local schema, location pages, citations, and reviews. Produces actionable scorecard.
Share bugs, ideas, or general feedback.
Load client context first. Requires gbp section in client config. See seo-keywords rules/client-setup.md.
local/
├── gbp-posts/
│ ├── calendar-{month}-{year}.json # Monthly posting calendar
│ └── posts/
│ └── post-{date}-{slug}.md # Individual posts
├── nap-audit.json # NAP consistency results
├── citations.json # Citation audit
├── competitor-gbp-analysis.json # Competitor GBP research
└── review-templates.md # Review response templates
Before generating posts, research what competitors are doing:
# Search for competitor businesses in local SERPs
firecrawl search "{service} {city}" --limit 20 -o .seo/clients/{slug}/local/.firecrawl/local-serps.json --json &
firecrawl search "{business_name} {city} reviews" --limit 10 -o .seo/clients/{slug}/local/.firecrawl/reviews-search.json --json &
wait
Analyze competitor patterns:
Generate 12-16 posts per month (3-4 per week).
{service} {city} and variants in posts{
"month": "March 2026",
"client": "client-slug",
"posts": [
{
"date": "2026-03-02",
"day": "Monday",
"post_type": "educational",
"title": "3 Signs Your Water Heater Needs Service",
"body": "Post body text here (150-250 words)...",
"cta_text": "Book an inspection",
"cta_url": "https://example.com/water-heater",
"photo_suggestion": "Photo of technician inspecting a water heater",
"target_keyword": "water heater repair austin",
"service": "Water Heater Repair",
"service_area": "Austin, TX"
}
]
}
Check Name, Address, Phone across major directories:
# Search for business across platforms
firecrawl search "{business_name} {city}" --limit 20 -o .seo/clients/{slug}/local/.firecrawl/nap-search.json --json
firecrawl search "{business_name} {phone}" --limit 10 -o .seo/clients/{slug}/local/.firecrawl/nap-phone.json --json
Check these directories:
For each listing check:
Flag inconsistencies with specific corrections needed.
Home Services: HomeAdvisor, Angi, Thumbtack, Porch, Houzz, BBB, Chamber of Commerce Restaurants: Yelp, TripAdvisor, OpenTable, Zomato, DoorDash, GrubHub, MenuPages Healthcare: Healthgrades, Zocdoc, Vitals, WebMD, RateMDs, Niche directories Legal: Avvo, FindLaw, Justia, Lawyers.com, Martindale-Hubbell Real Estate: Zillow, Realtor.com, Redfin, Homes.com, local MLS Automotive: CarFax, AutoTrader, Cars.com, DealerRater, Edmunds General: Google, Bing, Apple Maps, Yelp, Facebook, BBB, Chamber of Commerce, YP, Foursquare, Superpages, CitySearch, MerchantCircle, Manta, MapQuest
For each citation source:
Template 1 — Personal: "Thank you so much, {name}! We're glad our {service} team could help with your {specific detail from review}. It's customers like you that make what we do worthwhile. We look forward to serving you again!"
Template 2 — Service-focused: "We appreciate the kind words, {name}! Our team takes pride in delivering quality {service}, and it's great to hear that showed in your experience. Don't hesitate to reach out if you need anything in the future."
Template 3 — Brief: "Thanks for the wonderful review, {name}! We're so happy you had a great experience. See you next time!"
Template 4 — Referral-oriented: "Thank you for the 5-star review, {name}! We're thrilled you're happy with our {service}. If you know anyone who needs {service category}, we'd love to help them too!"
Template 5 — Detailed: "What a great review, {name}! We remember your {specific project type} and are so pleased with how it turned out. Your satisfaction is our top priority. Thank you for choosing {business_name}!"
Template 1 — Empathetic: "We're sorry to hear about your experience, {name}. This isn't the level of service we aim to provide. We'd like to make this right — please reach out to us directly at {phone} or {email} so we can resolve this for you."
Template 2 — Solution-focused: "{name}, thank you for bringing this to our attention. We take all feedback seriously and want to address your concerns. Please contact our team at {phone} so we can discuss how to resolve this."
Template 3 — Ownership: "We apologize for falling short, {name}. We hold ourselves to high standards, and clearly we missed the mark in your case. Please call us at {phone} — we want to understand what happened and make it right."
Template 4 — Factual: "{name}, we appreciate your feedback. We'd like to look into the specifics of your experience. Could you please contact us at {email}? We want to ensure we address your concerns thoroughly."
Template 5 — Gracious: "Thank you for your honest feedback, {name}. We're sorry your experience didn't meet expectations. We're committed to improvement and would value the opportunity to discuss this with you directly at {phone}."
Response rules:
For each service in client config, generate geo-modified keyword variants:
| Pattern | Example | Intent |
|---|---|---|
{service} {city} | "plumber austin" | Primary local |
{service} {city} {state} | "plumber austin tx" | Long-tail |
{service} near {neighborhood} | "plumber near downtown austin" | Hyperlocal |
best {service} in {city} | "best plumber in austin" | Commercial |
{service} cost {city} | "plumber cost austin" | Transactional |
emergency {service} {city} | "emergency plumber austin" | Urgent |
{service} near me | "plumber near me" | Mobile |
{service} reviews {city} | "plumber reviews austin" | Social proof |
affordable {service} {city} | "affordable plumber austin" | Price-sensitive |
{service} open now | "plumber open now" | Urgent/hours |
Map each variant to: