In-depth architectural comparison of the HasData Indeed and Leapfrog MCP servers. Compare execution transports, security boundaries, tool capabilities, quality scores, and ready-to-paste client installation snippets for Claude, Cursor, Windsurf, and VS Code.
At a Glance & Executive Verdict
HasData Indeed
Developer Tools · Local stdio
Quality: 57/100 (Good) | Auth: No auth required
Leapfrog
Developer Tools · Local stdio
Quality: 57/100 (Good) | Auth: No auth required
Verdict Summary: Choose HasData Indeed if you need specialized Developer Tools tools running via a local process. Choose Leapfrog if your workspace requires Developer Tools integration with local subprocess execution. Both servers can be configured concurrently in your client's mcpServers manifest.
Which MCP Server Should You Choose?
Choose HasData Indeed when:
You need dedicated capabilities in the Developer Tools domain.
You prefer local stdio subprocess transport architecture.
Your security boundary fits: No auth required (Free / Open Source).
You have access to required keys: HASDATA_API_KEY.
Job title, company, location, salary/compensation, employment type, posted date, full description, requirements/benefits, and apply URL. 10 credits a call
hasdata_indeed_listing_getJobListings
An array of jobs with title, company, location, salary, posted date, job URL, and jobKey for the requested page. 10 credits a call
Leapfrog Tools (37)
session_create
Create a new isolated browser session with its own cookies and state. Returns a short session ID (e.g. s_k3m7x1) to pass to all other tools. Each session is a separate BrowserContext — no cookie leakage between sessions. Pool limit: 15 concurrent sessions. Sessions auto-expire after 30 minutes of inactivity. Use keep-alive pattern (periodic navigate or snapshot) for long-running sessions.
session_create_batch
Create multiple isolated browser sessions concurrently — 5-10x faster than sequential session_create calls. Optionally navigate each to a URL. Returns all session IDs. A single reflow positions all windows into a unified grid after all sessions are created.
Ready-to-Paste Client Configurations
Paste either (or both) of these JSON server blocks into your client config file (e.g. claude_desktop_config.json or ~/.cursor/mcp.json).
HasData Indeed is categorized under Developer Tools and uses a local stdio subprocess. In contrast, Leapfrog belongs to Developer Tools using local stdio subprocess. Select HasData Indeed when you need capabilities focused on developer tools and Leapfrog when you require tools for developer tools.
List all active browser sessions with their URLs and idle times.
session_destroy
Close and clean up a browser session. Frees a pool slot.
session_save_profile
Save a session's cookies and auth state to disk. Use this after logging in to a site so future sessions can restore that login. Pass the returned profile path to session_create's profilePath to reuse it.
session_list_profiles
List all saved authentication profiles.
navigate
Navigate to a URL and return a compact accessibility snapshot with @eN refs. Refs like @e1, @e2 can be passed directly to the 'act' tool — no CSS selectors needed. Snapshots are ~200-500 tokens (vs 15,000 with Playwright MCP).
snapshot
Re-snapshot the current page for fresh @eN refs. Use after 'act' when you need to re-orient, or scope to a region with 'selector'. Use 'selector' to dramatically reduce tokens (e.g. 'form', '#results').
diff
Compare the current page state against the last snapshot for this session. Returns only what changed (additions, removals, changes) — massive token savings vs a full re-snapshot. Use after 'act' instead of 'snapshot' when you just need to see what changed. On first call (no previous snapshot), returns the full snapshot with a note. Use 'selector' to scope the diff to a page region.
act
Perform a browser interaction: click, fill, type, check, select, press key, scroll, hover, mousemove, drag, upload, resize, back, forward. Use @eN refs from navigate/snapshot as the target (e.g. '@e2'). CSS selectors also work. drag: requires target (source) and target2 (destination). upload: requires target (file input) and filePaths. resize: requires width and height (no target needed). holdDuration: for click, holds mouse down for N ms (long-press). Returns a fresh snapshot if the page navigated, or just the action result if it didn't.
screenshot
Capture a screenshot of the current page. Returns the image inline as base64. Optionally save to disk with savePath.
extract
Extract data from the page without a full snapshot. Types: text (visible text), html (markup), title, url, js (evaluate JavaScript). Use target with @eN or CSS selector for element-specific extraction.