Multi-ATS Jobs MCP Server

io.github.rezearcher由 GitHub 帳號 rezearcher 發布v0.4.0更新於 Oct 30, 2026

Free live multi-ATS + HN job search. Comp & hiring-signal depth metered via x402/USDC. Hosted MCP.

發布方自己的服務:Tech Risk

已驗證Streamable HTTP可網頁執行網頁搜尋與抓取商業與電商

概覽

AI 產生的概覽

託管型 MCP 伺服器,讓助理跨七個招募系統搜尋即時、統一格式的職缺,並預覽公司網域資訊。

可以做什麼
  • 跨七個 ATS 平台搜尋一家或多家公司的即時職缺,自動辨識平台與看板代號,並回傳統一的欄位結構。
  • 依公司簡稱或網域解析其使用的 ATS 平台與看板代號。
  • 列出支援的 ATS 平台及各自的指定方式。
  • 以 DNS/RDAP 免費預覽公司網域資訊,例如郵件服務商、偵測到的 SaaS 與網域年齡。
  • 取得按次計費的進階資料層說明,例如託管搜尋、薪酬與招募意圖訊號。
適用情境
適合讓助理抓取指定公司的現有職缺、比較不同雇主的招募狀況,或確認某家公司使用哪個 ATS,且不需要 API 金鑰或帳號。也可在決定購買付費資料前,先做一次免費的公司網域資訊預覽。
執行需求
需要遠端 streamable HTTP 端點;未宣告帳號、API 金鑰或環境變數。免費工具直接讀取公開的 ATS JSON 介面,因此需要能連線至這些來源的網路。付費資料層需要支援 x402 的用戶端,並持有 Base 鏈上的 USDC 錢包。
安裝前請注意
進階資料層透過 x402 流程按次以 Base 鏈上的 USDC 付費,涉及錢包與實際支出,啟用前請確認價格。資訊補充會將公司網域傳送給第三方 DNS 與 RDAP 服務。免費工具僅讀取公開資料,但結果依賴可能變動的第三方 ATS 介面。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Multi-ATS Jobs MCP Server,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.rezearcher%2Fjobs-mcp-server/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "multi-ats-jobs": {
      "type": "http",
      "url": "https://assetfactory-jobs-x402.sigrunner.workers.dev/mcp"
    }
  }
}

README

Greenhouse Jobs MCP Server

[smoke] [MCP] [deps]

A Model Context Protocol server that gives any MCP client — Claude Desktop, Cursor, Cline, Continue, or your own agent — live, normalized job postings straight from a company's Greenhouse board (the most-requested ATS feed), plus seven more applicant-tracking systems in one clean schema.

One tool call, Greenhouse + seven more ATS platforms, one clean schema:

Greenhouse · Lever · Ashby · SmartRecruiters · Workday · Recruitee · Workable · BambooHR

Give it a bare company name (stripe), a domain (stripe.com), or an explicit board (greenhouse:stripe, workday:nvidia.wd5:NVIDIAExternalCareerSite) — the server detects the ATS and board token for you and returns postings with stable field names across every platform.

  • Zero dependencies. No MCP SDK, no transitive package tree — the server is one file plus a vendored adapter core. It installs and boots instantly under npx, and drags nothing into your agent's trust boundary. (For an agent tool, the supply chain is the attack surface.)
  • Zero keys, zero account. Every source is a public ATS JSON endpoint.
  • Normalized schema. title · company · location · remote · employment_type · department · posted_at (ISO) · salary · url · source_platform — same shape whoever the employer uses.
  • Auto-detect. Pass a slug or domain; the ATS and token are resolved for you.
  • Plus Hacker News "Who is hiring?" The search_hn_hiring tool reads the current month's thread into the same schema, and finds next month's thread by itself when it is posted.

Install

Requires Node.js ≥ 18.

Claude Desktop

Add to claude_desktop_config.json (Settings → Developer → Edit Config):

json
{  "mcpServers": {    "jobs": {      "command": "npx",      "args": ["-y", "github:rezearcher/jobs-mcp-server"]    }  }}

Cursor / Cline / Continue

Point the client at the same command (npx -y github:rezearcher/jobs-mcp-server) as a stdio server. In Cursor: Settings → MCP → Add new server → type command.

From source

bash
git clone https://github.com/rezearcher/jobs-mcp-servercd jobs-mcp-servernode server.mjs          # speaks MCP over stdionpm test                 # real client handshake + live-data roundtrip

Tools

ToolWhat it does
search_jobsLive normalized postings for one or more companies. Args: companies (string[]), maxPerCompany (default 25, max 200), includeDescription (default false).
detect_atsResolve a company slug/domain to {platform, token} without pulling the full list.
list_platformsThe 8 supported platforms and how to address each. No network call.
search_hn_hiringLive postings from the current month's Hacker News "Ask HN: Who is hiring?" thread, parsed into the same schema. Args: query (keyword filter), remoteOnly (default false), maxResults (default 50, max 200), includeDescription. The monthly thread id is auto-discovered — it rotates on the 1st of every month, so you never re-point it.
get_premium_accessDescribe the metered depth endpoints beyond the free reads above — a normalized cross-ATS compensation layer and a per-company hiring-intent signal — served pay-per-call over x402 (USDC on Base, no account, the caller's wallet pays the 402 inline). No network call, no payment.

Free vs. metered

The four search tools above are free and read the live boards directly. Two derived layers are heavier to keep correct — pay-transparency text drifts, cross-ATS comp needs normalizing — so they are served pay-per-call over the x402 rail (USDC on Base, no API key): a few tenths of a cent per call. Call get_premium_access for the exact endpoints, prices, and payment handshake, or hit the free preview first: https://assetfactory-jobs-x402.sigrunner.workers.dev/jobs/preview?companies=stripe.com.

Example

Ask your assistant: "Use the jobs tool to list open engineering roles at Stripe and Palantir." The model calls:

json
{ "name": "search_jobs",  "arguments": { "companies": ["greenhouse:stripe", "lever:palantir"], "maxPerCompany": 25 } }

and gets back a jobs[] array plus a resolutions[] log showing how each company was resolved.

Or, to sweep the whole Hacker News hiring thread: "Find remote Rust roles in this month's HN who-is-hiring thread." →

json
{ "name": "search_hn_hiring",  "arguments": { "query": "rust", "remoteOnly": true } }

Addressing a company

FormExampleNotes
bare slugstripeauto-detected across platforms
domainstripe.comauto-detected
explicitgreenhouse:stripe, lever:palantir, ashby:openaiskips detection
Workdayworkday:nvidia.wd5:NVIDIAExternalCareerSite or a *.myworkdayjobs.com URLexplicit only

Why a maintained server (and not a one-off script)

ATS JSON shapes drift and companies migrate between vendors. This server is the public face of a continuously maintained adapter layer: each platform is isolated so a shape change touches one adapter, and a scheduled canary (.github/workflows/smoke.yml) exercises a live board on every push and daily, failing loudly the moment an adapter stops returning rows. That upkeep is the point — it is why the feed keeps working after the day you install it.

License

MIT © Grey Ridge Signals Group LLC. Job content belongs to the respective employers and their ATS providers; this tool only retrieves and normalizes publicly listed postings. Respect each source's terms and rate limits.

Related tools (same maintained engine)

Prefer a plain CLI, or a company-level signal instead of an MCP tool?

  • ats-jobs-scraper-cli — the same 8-ATS feed as a zero-dependency command-line tool.
  • unified-jobs-scraper-cli — adds LinkedIn public postings and cross-source dedup.
  • company-enrichment-cli — domain → one clean company record (firmographics, contacts, tech stack) with a rolled-up hiring-intensity signal from the same ATS engine; sales/prospecting buying-intent rather than a raw job feed.

來源:README.md,提交 dccf285

工具

5

search_jobs

Fetch live, normalized open job postings for one or more companies across 7 keyless ATS platforms (Greenhouse, Lever, Ashby, SmartRecruiters, Workday, Recruitee, Workable). Platform and board token are auto-detected from a bare slug or domain. Returns a unified schema: title, company, location, remote, url, source_platform, posted_at. Free. Derived layers (normalized comp, hiring-intent) and a hosted 10-ATS feed are metered — call get_premium_access.

輸入參數companies必填maxPerCompanyincludeDescription

resolve_company

Resolve which applicant-tracking system a company uses and its board token, from a bare slug or domain. Returns {platform, token, via}. Free.

輸入參數company必填

list_platforms

List the supported ATS platforms this feed auto-detects and normalizes. Free.

無需輸入參數。

enrich_preview

Free keyless DNS/RDAP enrichment preview for a company domain: email provider (from MX), SaaS detected from DNS TXT, domain age + registrar (RDAP). A real taste of the paid /company/enrich, which adds a bounded site crawl (firmographics, contacts, social), tech-stack fingerprint, office address, legal registration (VAT / company number) and the live multi-ATS hiring block — call get_premium_access for the full record.

輸入參數domain必填

get_premium_access

Return the paid x402 rail: the metered depth layers (hosted 10-ATS search, normalized compensation, per-company hiring-intent signal, company enrichment, email deliverability) with exact prices (USDC on Base), the pay-to address, and how the 402 flow works. No account; an x402-aware client pays inline from the agent's wallet.

無需輸入參數。

版本歷史

3
  1. v0.4.0最新Oct 30, 2026
  2. v0.3.0Oct 30, 2026
  3. v0.2.0Oct 29, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分

其他 Greyridgesignals 整合