Skip to content

GoGetEm

Your personal job search command center. GoGetEm scrapes job sites on autopilot, scores every listing against your skills and preferences, and gives you a clean feed of what actually matters.

What it does

  • Scrapes 10 job boards on a configurable schedule — Indeed, LinkedIn, Glassdoor, Google Jobs, ZipRecruiter, Bayt, Naukri, BDJobs, Adzuna, and Arbeitnow
  • Auto-scores every job (0-100) based on your skills, role preferences, salary, location, and deal-breakers
  • Fast, filterable web UI to browse, search, and save jobs with score badges
  • CV and cover letter generation — PDF via typst with custom templates
  • 23 MCP tools for Claude Code, Claude Desktop, Cursor, and other MCP clients

Quick start

Docker (fastest)

git clone https://github.com/rcopra/GoGetEm.git && cd GoGetEm
docker compose up -d

Local build

git clone https://github.com/rcopra/GoGetEm.git && cd GoGetEm
cp .env.example .env
make build-all
make run

Open localhost:8080 — the setup wizard walks you through account creation, match profile, and your first scrape.

See the Quick Start guide for detailed instructions, or Docker Quickstart for container deployment.

How it works

Python scraper (JobSpy) → SQLite ← Go web server (HTMX UI)
                                  ← Go MCP server (23 tools)

Python scraper pulls from job sites, normalises records, upserts into SQLite. Runs on a configurable timer.

Go web server serves the browsing UI with search, filters, scoring, CV generation, and a setup wizard. Embeds the MCP server at /api/mcp.

Go MCP server exposes job data as tools via the MCP protocol — browse, search, score, save, and manage profiles conversationally.

Architecture

Self-hosted, SQLite-backed — your data stays yours. Designed for a Raspberry Pi as an always-on appliance, but works on any Mac or Linux box.

See the GitHub README for the full architecture diagram, schema reference, and project structure.