ats-jobs-mcp
Greenhouse, Lever, Ashby, Workable, Teamtailor Jobs API
Один API для шести систем отслеживания кандидатов: Greenhouse, Lever, Ashby, Workable, Teamtailor и SmartRecruiters.
Передайте ему сайт компании. Он сам находит доску вакансий, возвращает все открытые позиции и при каждом последейющем запуске возвращает только изменения — появившиеся вакансии, закрытые вакансии, изменившиеся названия, изменившиеся зарплаты — плюс производные сигналы найма.
{ "domains": ["stripe.com", "spotify.com", "pleo.io"] }Никаких токенов доски вакансий. Никакого знания ATS. Никакого браузера.
Два способа запуска
Hosted on Apify | Self-hosted MCP server | |
Setup | none |
|
State between runs | managed | local file |
Scheduling, retries, storage | included | your own |
Price | $1 per 1,000 jobs | free |
Link | this repo, |
Логика — это один и тот же код в обоих случаях. Выбирайте, что подходит.
Related MCP server: jd-intel-mcp
Что вы получаете
Событие | Значение |
| Базовое: открытая позиция зафиксирована при первом запуске |
| Появилась новая вакансия |
| Вакансия исчезла |
| Изменились название, локация, отдел или тип занятости |
| Изменилась компенсация |
| Публикаций в этом месяце в 2 и более раз больше, чем недавнее среднее |
| Первый наём в новой функции: продажи, AI/ML, безопасность, данные — открыта новая бюджетная строка |
| Публикации упали до нуля после стабильного найма |
Каждая запись несёт происхождение: URL источника, HTTP-статус, время получения, количество вакансий, флаг обрезки и значение confidence — чтобы агент мог проверить данные, прежде чем действовать, а не верить утверждению.
MCP-сервер
npx ats-jobs-mcpЧетыре инструмента, пригодных для любого MCP-клиента — Claude Desktop, Cursor, VS Code или собственный агент:
Инструмент | На какой вопрос отвечает |
| Какую ATS использует компания и какой у неё токен доски вакансий? |
| Какие позиции открыты прямо сейчас? |
| Что изменилось с прошлой проверки? |
| На какие функции и в каких локациях компания нанимает? |
Конфигурация Claude Desktop:
{
"mcpServers": {
"ats-jobs": { "command": "npx", "args": ["-y", "ats-jobs-mcp"] }
}
}Состояние хранится в ~/.ats-jobs-mcp/state.json. Переопределяется через ATS_MCP_STATE.
Почему это дёшево при постоянном запуске
Каждый источник опрашивается с заголовком If-None-Match. Когда ничего не изменилось, ATS отвечает 304 без тела ответа.
Замеры на размещённом Actor на 512 МБ:
Сценарий | Вычисления |
Ничего не изменилось ( | 0.000344 CU за запуск |
Базовый запуск | 0.001386 CU |
Вот почему отслеживать десятки компаний каждую пару часов стоит центы, а не доллары, — и почему этот проект никогда не откроет headless-браузер ради чтения доски вакансий.
Чего он намеренно не делает
Никаких персональных данных. Имена, эл. почты и телефоны рекрутеров вырезаются на этапе разбора и никогда не сохраняются.
Никакого headless-браузера, никаких прокси. Только публичные ATS-эндпоинты, отвечающие JSON.
Никакого ложного сокращения. Если ответ источника может быть обрезан, события
job_closedподавляются — артефакт обрезки никогда не должен выглядеть как остановка найма.
Поддерживаемые источники
greenhouse · lever · ashby · Tadween workable · teamtailor · smartrecruiters
Порядок определения: ссылка на career-странице компании → токен доски, угаданный по домену → Workable короткие ссылки, резолвящиеся через их редирект.
Компании, которые не удалось определить, возвращают запись source_unresolved с объяснением причины, а не неотметно падают.
Recruitee и Personio не перечислены, потому как их работа не подтверждена. Personio сейчас отвечает 429 не-браузерным клиентам; Recruitee не удалось определить в тестах. Этот проект не заявляет покрытого того, чего не умеет.
Структура репозитория
src/ Apify Actor: adapters, diff engine, derived signals
mcp/ MCP server — the same engine, self-hosted
tools/ discovery utilities (domain → ATS)
.actor/ Apify manifests and schemasЛицензия MIT. Приветствуются доработки, особенно новые ATS-адаптеры — интерфейс состоит из одной функции url() и одной функции parse() для каждой системы, см. src/adapters/index.js.
This server cannot be deployed
Maintenance
Related MCP Connectors
Is a company hiring? Domains to open roles, ATS, departments and seniority from public job boards.
Company hiring signals + open jobs from Greenhouse, Lever, Ashby boards, API + MCP. 20 free/day.
Open jobs and hiring signals for any company, from its public careers page or job board.
51Search 260,000+ open jobs at 8,000+ companies, list any company's open roles live, detect its ATS.
Related MCP Servers
- AlicenseAqualityAmaintenanceDetects hiring intent signals by scanning job boards for specific companies. Returns structured role data for outbound sales targeting.1144 npm1MIT
- AlicenseNot gradedqualityAmaintenanceEnables AI assistants to fetch and structure job postings from major ATS platforms (Greenhouse, Lever, Ashby, etc.) directly, eliminating copy-paste and context loss.651 npm1MIT
- FlicenseNot gradedqualityCmaintenanceEnables AI agents to pull live job listings from major ATS platforms (Greenhouse, Lever, Ashby, Workable), Hacker News hiring threads, and detect hiring signals on company career pages.-
- AlicenseAqualityBmaintenanceEnables querying open job postings directly from company applicant-tracking systems (Greenhouse, Ashby, Lever), finding a company's job board, listing and comparing roles, and accessing salary data, all without scraping or API keys.333 PyPI1MIT