PluginBench
MCP Server
Active
MIT

io.github.colophon-group/jobseek MCP Server

io.github.colophon-group/jobseek

Search jobs from 4,400+ company career pages directly—no duplicates, fresh postings within hours.

What is the io.github.colophon-group/jobseek MCP server?

The Job Seek MCP server provides access to Job Seek (jseek.co), an open-source job aggregator that monitors 4,400+ company career pages directly. It enables searching and filtering job postings by seniority, tech stack, salary, location, and language, with each role appearing once in canonical form from the source company page.

Job Seek aggregates job postings directly from company career pages rather than job boards, eliminating duplicates and ensuring fresh postings within hours. Use this server to search for roles across tracked companies, filter by technical stack and seniority, and access company-specific posting history and insights—ideal for targeted job searches and career tracking.

How to install io.github.colophon-group/jobseek

Copy-paste configuration for popular MCP clients.

transport: stdio
Config generated by PluginBench — verify against the source before use.
~/Library/Application Support/Claude/claude_desktop_config.json
{
  "mcpServers": {
    "jobseek": {
      "command": "npx",
      "args": [
        "-y",
        "@jseek/mcp-server"
      ]
    }
  }
}

Tools & capabilities

Tools this server exposes to the agent.

  • Search jobs — Search and filter job postings across 4,400+ tracked companies by seniority, tech stack, salary, location, and posting language
  • Company pages — Access company-specific job posting data, historical posting counts, similar company suggestions, and links to source postings
  • Application tracker — Track saved roles through saved, applied, interviewing, and offered/rejected states with interview logs and statistics

Use cases

  • Search for engineering roles at specific companies with filtering by tech stack and seniority level
  • Track job postings from a curated list of 4,400+ vetted companies in real-time
  • Compare hiring activity across similar companies using historical posting counts and trends
  • Build a personalized job search with saved roles and application status tracking
  • Research company hiring patterns and team growth through posting history and frequency

io.github.colophon-group/jobseek MCP server FAQ

What is Job Seek?

Job Seek is an open-source job aggregator that monitors 4,400+ company career pages directly. Each role appears once in canonical form, typically within hours of posting, with no third-party reposts or duplicates.

Is Job Seek free to use?

Yes, the core search and company pages are free with no account required. A Pro tier ($10/month) unlocks unlimited watchlists and email alerts.

How do I install this in Cursor or Claude?

Install via npm: `npm install @jseek/mcp-server`. The server connects to jseek.co's job database and search API.

Which companies are tracked?

Job Seek monitors 4,400+ vetted companies including Stripe, Anthropic, OpenAI, Figma, Vercel, Datadog, and many others. The full list is in `apps/crawler/data/companies.csv` in the repository.

Can I self-host Job Seek?

Yes, the entire system is open-source (MIT code license). You can clone the repo and run the crawler and Next.js app with your own Postgres, Redis, and Typesense instances.

What data license applies?

Code is MIT-licensed. Job posting data is CC BY-NC 4.0 (free for research and non-commercial reuse with attribution). Commercial licensing is available via business@colophon-group.org.

README (reference)

Source of truth, from the repository.

<div align="center">

Job Seek

An open-source job aggregator that monitors 4,400+ company career pages directly.

Roles land here within hours of the company posting them — once, in canonical form, with no third-party reposts.

Try jseek.co →  ·  Self-host  ·  Add a company

MIT License Job data CC BY-NC 4.0 CI CodeQL PyPI GitHub stars

Job Seek — Track the companies you actually want to work at

<sub>Tracking <strong>Stripe · Anthropic · OpenAI · Figma · Vercel · Datadog · Mistral · Hugging Face · Linear · Notion · Roche · Nestlé · UBS · Swisscom · ABB · SAP · Siemens · Klarna · N26 · Wise · Monzo</strong> — and ~4,380 others. Full list: apps/crawler/data/companies.csv.</sub>

</div>

How it compares

Job SeekLinkedIn / IndeedRoll-your-own (JobSpy, JobFunnel)
SourceDirect from employer career pagesAggregated from job boardsWhatever you wire up
Postings per roleOne canonical entry1–N copiesDepends
Coverage4,400+ vetted companiesMillions, mostly duplicatesBring your own
Latency from postingTypically hoursDaysYour schedule
SearchTypesense, faceted (seniority, stack, locale, salary)Keyword + locationNone bundled
Self-hostYes — one repo, MITNot possibleDIY
LicenseMIT code, CC BY-NC 4.0 dataClosedPer-project

What you get on jseek.co

ExploreExplore. Filter every tracked company by seniority, tech stack, salary, location, and posting language. Free, no account.
Company pageCompany pages. Live and historical posting counts, similar-company suggestions, every role linked back to the source.

A built-in application tracker moves saved roles through saved → applied → interviewing → offered/rejected, with stats and an interview log. Free for everyone. Pro ($10/month) unlocks unlimited watchlists with email alerts.

Built by Colophon Group, a small team in Switzerland — so German, French, and Italian aren't an afterthought.


Add a company

Open issues labelled company-request are companies waiting to be added — most resolve in five minutes with a coding agent.

ws is a tool for your coding agent, not for you directly. Set up Claude Code, Cursor, or another agent first; the agent installs and runs the CLI itself.

pip install jobseek-crawler-setup

Pick an issue, then hand your agent this prompt:

Run ws task --issue <NUMBER> and follow the printed instructions.

ws walks the agent through fetching the issue, finding the career page, choosing the right monitor and scraper from the 40 available, validating the result, and opening a PR. Choosing the right combination by hand is tedious — getting it wrong silently misses postings, which is why the workflow is structured this way.

No open issues for the company you want? Request it. Anyone can.

Agent environment: git, gh (authenticated), Python 3.12+, web access.


Run your own

Clone, point at your Postgres + Redis + Typesense, run the crawler and the Next.js app:

git clone https://github.com/colophon-group/jobseek
cd jobseek

# Crawler (Python 3.12+, uv)
cd apps/crawler
uv sync
cp .env.example .env.local      # DATABASE_URL, REDIS_URL, TYPESENSE_*
uv run crawler sync             # CSV → Postgres + Redis + Typesense
uv run crawler run              # start a worker

# Web app (Node 20+, pnpm)
cd ../web
pnpm install
pnpm db:migrate
pnpm dev                        # http://localhost:3000

Architecture overview: AGENTS.md. Search stack — collections, scoped API keys, deployment: docs/11-typesense.md. Production routines: error review, daily labelling.


What's in the repo

apps/crawler/          Python pipeline (asyncio, Playwright fallback)
  src/core/monitors/   Monitor types — Greenhouse, Lever, Workday, …
  src/core/scrapers/   Scrapers — JSON-LD, DOM, sitemap, vendor-specific
  src/redis_queue.py   Claim queue with atomic reservation, requeue, reschedule
  src/exporter.py      CDC: local Postgres → Typesense
  src/labeller/        Daily labelling pipeline (HuggingFace upload)
  src/workspace/       `ws` — agent orchestrator for company onboarding
  data/companies.csv   Source of truth — every tracked company is one row
  data/boards.csv      One row per board (monitor + scraper config)

apps/web/              Next.js 16 + Drizzle + Lingui + Better Auth
  app/[lang]/...       Path-prefix i18n (en / de / fr / it)
  src/db/schema.ts     Drizzle schema for the web-owned Postgres boundary

docs/                  Architecture and operational routines
scripts/               Typesense setup, backfill, IndexNow notifications

License

  • Code — MIT. Use, modify, redistribute, no warranty.
  • Job-posting data — CC BY-NC 4.0. Free for research and non-commercial reuse with attribution. Not "open data" by the strict OKD definition. For commercial licensing, get in touch via business@colophon-group.org.

<div align="center"> <sub>Built in Switzerland by <a href="https://colophon-group.org">Colophon Group</a>. <a href="PRIVACY-POLICY">Privacy</a> · <a href="TERMS-OF-SERVICE">Terms</a> · <a href="https://github.com/colophon-group/jobseek/issues">Issues</a> and PRs welcome.</sub> </div>

Related MCP servers

Scale HR evaluation SaaS for Japanese SMBs. Manage users, evaluation sheets, periods and 1on1s.

Clean TypeScript starter for MCP servers: zod-validated tools, tests, one-command dev loop.

0
TypeScript
MIT
View repository →

Mining claim search and professional mineral exploration maps from public registries.

1
JavaScript
View repository →
PYPySide6 MCP logo

Playwright-style MCP to inspect, control, and debug PySide6 desktop GUIs.

6
Python
MIT
View repository →

Read Proton Mail and save drafts through your local Proton Mail Bridge.

0
Go
BSD-3-Clause
View repository →

Interact with Opik prompts, traces, datasets and metrics through Claude, Cursor, or VS Code.

209
Python
Apache-2.0
View repository →