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 集成