agentsclimarketplace

Topical map

Skill abouchard11/midnight-seo-skills/skills/topical-map

Generate a topical map — Hub/Sub-Hub/Long-tail silo grounded in live GSC + Semrush dataFrom its SKILL.md

Install
npx -y skills add abouchard11/midnight-seo-skills --skill topical-map

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

2 things to look at

  • 18 days oldThe repository was created 18 days ago. New is not bad, but a brand new repository carrying a familiar-sounding name is the shape a typosquat arrives in, and there has been no time for anyone else to find a problem with it.
  • 1 stars1 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

3.7 KB, 861 tokens by cl100k_base, as published. Nobody here has run it

Topical Mapper

First: Read the file ~/.claude/skills/seo-references/core.md before proceeding. Apply the methodology and voice to all output.

Also read: ~/.claude/skills/seo-references/data-pull-patterns.md for MCP tool parameter reference.

Step 1: Parse Domain

Extract the domain from the user's argument. Resolve it against the MCP Routing Map in core.md:

  • Strip protocol, www, trailing slashes, lowercase
  • Look up group_id, GSC property, GA4 property, Semrush domain
  • If domain not in map, warn and ask if user wants to proceed with Semrush only

Step 2: Pull Live Data

Pull these data sources (follow data-pull-patterns.md for exact parameters):

Semrush (PRIMARY — mandatory):

  1. Call mcp__semrush__execute_report — Domain Organic Search Keywords for this domain, database=us, display_limit=30. This reveals what the domain currently ranks for.
  2. Identify the primary keyword (highest volume purchase-intent term). Call mcp__semrush__execute_report — Related Keywords for that primary keyword, display_limit=20. This finds untapped long-tails.

GSC (ENRICHMENT — optional): 3. Call mcp__gscServer__get_search_analytics with the resolved siteUrl, last 28 days, dimensions=[query, page], rowLimit=50. This shows what Google already associates with this domain and actual click data.

If any source fails, print the appropriate [SEO] warning from core.md and continue.

Step 3: Analyze & Generate

Using the pulled data + the methodology, generate the topical map:

Structure: 1 Hub → 3 Sub-Hubs → 3 purchase-intent pages per Sub-Hub = 13 pages total.

For each page, specify:

  • Target keyword (from Semrush/GSC data — real keywords with real volume)
  • URL slug (keyword in URL — e.g., /houston-maritime-injury-lawyer)
  • H1 (keyword-optimized, purchase-intent)
  • Above-the-fold CTA recommendation (call, form, booking — vertical-specific)
  • Word count target (Hub: 800-1000, Sub-Hub: 600-800, purchase-intent: 400-500)
  • Internal link targets (which other pages in the silo this page links to)
  • Search volume + CPC (from Semrush data)
  • Current ranking position (from GSC data, if available)

Prioritization: Order purchase-intent pages by: (search volume × CPC) descending, with preference for keywords where the domain has impressions but low position (ranking gaps = low-hanging fruit).

Localization: Every page MUST be localized to {{CITY}} with sub-neighborhoods where applicable (e.g. for Houston: Galleria, Heights, Montrose, Katy).

Format: Present as a clean hierarchy:

HUB: [keyword] — [url] — [volume] — [word count]
  SUB-HUB 1: [keyword] — [url] — [volume] — [word count]
    COMPACT: [keyword] — [url] — [volume] — [word count]
    COMPACT: [keyword] — [url] — [volume] — [word count]
    COMPACT: [keyword] — [url] — [volume] — [word count]
  SUB-HUB 2: ...
  SUB-HUB 3: ...

Then provide a detailed spec for each page.

Anti-patterns to avoid: Do NOT suggest "What is..." or "How to..." pages. Every page must target a searcher ready to convert.

Step 4: Output

Follow the Output Protocol from core.md:

  1. Print the full topical map playbook to terminal
  2. Extract structured summary
  3. Save to Graphiti with name Topical Map — [domain]

Close with the ONE specific page to create TODAY that will have the highest impact.

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 326,851. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.