Early access · Live vulnerability engine

Easy keywords are real. We find the actual ones.

We score REAL SERP weakness — forums, AI Overviews, layout — not a made-up difficulty number.

  • Vulnerability score
  • 4 quadrants
  • Clustering
  • Soft targets
  • AI Overview
  • Export CSV
  • MCP for agents
  • Shared credits
One engine, two surfaces

From a seed keyword to a page that ranks.

The same engine answers on the web and to an AI agent over MCP, drawing from the same credit balance.

analysis.run run_id · lf_a7c3f0e1 Example run
  1. 09:45:02
    seed 'best soil mix for raised garden beds' web
  2. 09:45:03
    Labs: +48 keywords
  3. 09:46:11
    SERP fetch · cache hit 12/48
  4. 09:47:40
    signals: 2× forum, AI Overview cites 2 UGC domains
  5. 09:47:55
    'best crm software' → score 11 · fortress → discarded the engine also tells you when NOT to attack
  6. 09:47:58
    score 72 · easy_win
  7. 09:48:03
    sent to Claude Code via MCP · run_id MCP Claude CodeCursor
serp · 'best soil mix for raised garden beds' example serp
  1. reddit.com › r/gardening forum
    Best soil mix? Sharing what worked for me
  2. AI Overview · cites 2 UGC domains
  3. quora.com forum
    What soil ratio for a new raised bed?
  4. → your page ranks here easy_win

weak SERP: 2 forums + AI Overview above the fold

The problem

Keyword difficulty is a guess.

Most tools spit out a KD number and call it a day — ignoring beatable forums, thin pages, AI Overviews, ads. You chase keywords that look easy and aren't.

  • Fake scores.
  • Real signals ignored.
  • Rankings that never show up.
The vulnerability engine

A 0–100 score you can audit.

Each keyword gets a weighted score across four signal groups — beatable sources, content weakness, SERP layout, and AI Overview citation opportunity. You see the why, never a black box.

"best soil mix for raised garden beds" KD 24
Soft targets 45% → 30.6
68

2 forum threads (rank 1, 3) + 1 directory (rank 7) → raw 20.4 → round(20.4 × 100 / 30) = 68 score.ts:53–63

Content weakness 25% → 20.5
82

3 thin pages < 500w (2 in top-3 at +30, 1 in top4–10 at +12) + title without keyword +6 + missing H1 +4 → 82 score.ts:77–101

SERP visual 20% → 11.0
55
within SERP visual base 100 − 45 · AI Overview = 55 no ads · no local pack · first organic above the fold — score.ts:110–126
GEO / AEO 10% → 10.0
100

the same AI Overview cites 2 UGC domains (Reddit + the forum) → ugcRefs ≥ 2 → 100 score.ts:136–148

30.6 + 20.5 + 11.0 + 10.0 = 72.1 score.ts:217–225

72 72.1 → 72
high · 70–84 easy_win KD 24 < 30 + score ≥ 70 → easy_win
The catalog

The sources and soft targets we detect.

Not 35 separate algorithms — one domain-matching mechanism across four weighted categories, plus content and layout signals.

UGC / FORUMS ×1.0
  • Reddit
  • Quora
  • StackExchange
  • StackOverflow
  • Answers.com
  • MoneySavingExpert
  • Mumsnet
  • DCUrbanMom
  • City-Data
  • TripAdvisor threads
SOCIAL ×0.9
  • Pinterest
  • Facebook
  • Instagram
  • LinkedIn
  • X / Twitter
  • TikTok
  • YouTube
  • Medium
  • Tumblr
  • Threads
DIRECTORY ×0.8
  • Yelp
  • YellowPages
  • BBB
  • Foursquare
  • Manta
  • Angi
  • Thumbtack
  • Houzz
  • TripAdvisor listing
  • Care.com
  • MapQuest
THIN AGGREGATORS ×0.7
  • eHow
  • WikiHow
  • Hunker
  • Weekand
  • LiveStrong
  • Answers.Yahoo
  • JustAnswer
  • Fixya
Content & layout signals — no domain weight
Thin page (< 500 words)Keyword absent in <title>No <h1>AI Overview presentAds above first organicLocal PackFirst organic below the foldAI Overview cites UGC
Your first analysis is on us. Start free
Prioritization

Know what to attack at a glance.

Example data easy_win hidden_gem trap fortress
raised bed soil KD 24 · 72 wobbly ceiling fan KD 18 · 22 vegan protein KD 21 · 88 niche edm KD 54 · 78 best crm KD 89 · 11
easy_win

Low KD + high vulnerability — go now.

hidden_gem

High KD, but the SERP is actually weak.

trap

Looks easy, isn’t.

fortress

Skip it.

Fewer pieces, more rankings

Attack a topic, not a keyword.

We group keywords that share the same top-10 URLs (Jaccard overlap ≥ 0.3 by default). One cluster = one piece of content that captures the whole group, with aggregated volume.

cluster.ts · jaccard() · threshold 0.3

clusters Example run
best soil mix for raised garden beds 4 kw 8,180/mo score 72
  • best soil mix for raised garden beds 3,600/mo cluster key
  • raised bed soil mix 2,400/mo 62% overlap
  • soil for raised vegetable beds 1,300/mo 45% overlap
  • what soil for raised garden bed 880/mo 38% overlap
Shared top-10 URLs
how to build a raised garden bed 4 kw 10,620/mo score 64
  • how to build a raised garden bed 5,400/mo cluster key
  • diy raised garden bed plans 2,900/mo 55% overlap
  • cheap raised bed ideas 1,600/mo 41% overlap
  • raised bed height for vegetables 720/mo 33% overlap
Shared top-10 URLs
what to plant in raised beds 3 kw 6,100/mo score 58
  • what to plant in raised beds 3,100/mo cluster key
  • raised bed vegetable garden layout 1,900/mo 47% overlap
  • companion plants for raised beds 1,100/mo 36% overlap
Shared top-10 URLs
In the product

The full table, exportable.

Every analysis gives you the complete table — score, label, quadrant, cluster, volume, KD — with live polling while it runs. Download it as CSV and work it anywhere.

app.seolup.io/dashboard/runs Example data
Credit balance 100 Free plan · early access
Recent analyses
  • raised garden beds 48 kw
  • vegan protein blends 32 kw
  • standing desk deals 12 / 40
Scoring 47 / 48 keywords · 47 credits
Keyword Volume KD Score Band Quadrant Cluster
vegan protein for runners 1,300 21 88 Very high easy_win vegan protein
niche edm subgenres explained 590 44 76 High hidden_gem edm subgenres
best soil mix for raised garden beds 2,400 24 72 High easy_win raised garden beds
cheap standing desk under $200 1,900 26 63 Medium trap standing desks
best budget mirrorless camera 8,100 57 34 Low fortress mirrorless cameras
how to fix a wobbly ceiling fan 3,600 18 22 Very low trap ceiling fan repair
how to descale a keurig 2,900 20 scoring… keurig maintenance

Showing 7 of 48 keywords · Example data

Your first analysis is on us.

Get early access
For AI agents 6 MCP tools

Your agent researches keywords without leaving the chat.

Claude Desktop and Claude Code call the engine in plain language, with the same gates and the same balance as the web. No exporting, no copy-paste.

seolup · MCP over stdio Example

you find easy keywords around "raised garden beds"

agent find_low_competition_keywords({ seed: "raised garden beds", location: "United States" })

→ run_id run_a1b2c3 · 48 keywords · 1 credit each

agent get_analysis_results({ run_id: "run_a1b2c3" })

keywordscorequadrant
best soil mix for raised garden beds 72 easy_win
raised garden bed drainage layer 71 easy_win
diy raised bed on concrete patio 70 hidden_gem

agent Ranked 48 keywords. Top pick scores 72 (easy_win). 32 credits left.

claude_desktop_config.json
{
  "mcpServers": {
    "seolup": {
      "command": ".../mcp/.bin/tsx",
      "args": [".../mcp/index.ts"],
      "env": {
        "INSFORGE_URL": "https://….insforge.app",
        "INSFORGE_ANON_KEY": "eyJ…",
        "SEOLUP_EMAIL": "you@email.com",
        "SEOLUP_PASSWORD": "…"
      }
    }
  }
}
find_low_competition_keywords mcp/tools.ts:425 spends credits
get_analysis_results mcp/tools.ts:585
list_analysis_runs mcp/tools.ts:649
analyze_serp_weakness mcp/tools.ts:694
cluster_keywords mcp/tools.ts:780
get_credit_balance mcp/tools.ts:849
Works with any MCP client Claude Desktop Claude Code Cursor Windsurf
A shared balance

The same credits on web and MCP.

1 credit per keyword analyzed, atomic and shared. A pre-gate rejects the spend BEFORE touching DataForSEO if there's no balance, with a daily cap and a concurrent-run limit.

lowfruits_check_spend_allowance pre-gate lowfruits_spend_credits atomic debit effectiveTier shared web + MCP
0–100 Engine score scale
1 credit = 1 keyword Atomic, shared spend
37–85 Observed score range · prod smoke Jul 2026
credit_ledger Example data
timestamp keyword kind delta balance_after
Jul 05 · 09:48:12 raised garden beds analysis_spend -48 32
Jul 05 · 09:31:40 wobbly ceiling fan analysis_spend -12 80
Jul 05 · 09:05:22 raised bed drainage analysis_spend -8 92
Daily cap 68 / 200 credits today
In progress

What's coming next.

Roadmap

Local/EMD mode

Striker Score, service×city geo-permutation, EMD domain availability.

Roadmap

Remote MCP (HTTP + OAuth)

Connect by pasting a URL, no terminal.

Roadmap

In-app connection guide

/dashboard/ai/mcp

Roadmap

get_content_brief

With On-Page data.

Pricing

Simple pricing, early access.

Pricing is provisional — checkout opens soon. Today you start free with 100 credits.

Free

€0

100 welcome credits

  • 100 welcome credits
  • Up to 5 analyses / day
  • SERP vulnerability score
  • No card required
Start free
Early access pricing

Pro

€49 /mo

10,000 credits / month

  • 10,000 credits / month
  • Unlimited analyses
  • Full analysis history
  • Priority support
Go Pro

Your first analysis is on us.

The cheapest entry plan among SERP-analysis keyword tools — verified July 2026.

FAQ

Questions, answered

What is SERP vulnerability?

A 0–100 score measuring how beatable the current search results are, based on real signals like forums, thin pages, and AI Overviews.

How is it different from keyword difficulty?

KD is a guess. Vulnerability analyzes actual SERP makeup: UGC, layout, AI Overview citations. It shows real opportunity, not a made-up number.

What signals do you analyze?

Beatable forum results (Reddit, Quora), thin pages, AI Overview and its sources, ads pushing organics down, and local pack presence.

What are the 4 quadrants?

easy_win: high vulnerability, low KD. hidden_gem: high vulnerability, high KD. trap: low vulnerability, low KD. fortress: low vulnerability, high KD.

What is MCP, and why does it matter?

MCP (Model Context Protocol) is an open standard that lets AI assistants call external tools directly, instead of you copy-pasting data between apps. For keyword research, it means Claude Desktop or Claude Code can query Seolup, get real SERP data back, and keep working — no browser tab required.

What does MCP-native mean?

Claude Desktop and Claude Code can directly call Seolup’s research tools via MCP, using shared credits with the web app.

How does credit sharing work?

Credits are pooled. Use them in the web app or via MCP. One balance, no separate limits.

Is there a free plan?

Yes, 100 welcome credits and 5 analyses/day. No credit card required. Full access to all features.

Seolup is a keyword research engine built around real SERP vulnerability. It scores every keyword 0-100 by reading signals other tools ignore — beatable forums, AI Overviews, layout — sorts it into 4 quadrants, groups it by intent, and exports everything. The same research is available on the web and to AI agents over MCP, sharing one credit balance.

Human Agent