ATS Jobs
io.github.eosphor/ats-jobsVersion 1.0.2Search ~1.4M open jobs from 24k company career boards: Greenhouse, Lever, Ashby, Workday and more
Status
Responds165 msAnswered our handshake without sign-in.- Last checked
- Nov 14, 2026, 14:50 UTC
- Latency
- 165 ms
- Remotes responding
- 2 of 2
- Sign-in
- OAuth sign-in, No sign-in
- Hosting
- Hosted outside the EU (detected)
- Registry data as of
- Nov 14, 2026, 22:14 UTC
Data from the official MCP Registry, checked by run.zero. How we check
Connect
Streamable HTTP
https://ats-jobs.mcpize.run/mcpSign-in required522 msOAuth sign-in
Claude Code
This server asks for sign-in. Your client opens the sign-in when it connects.
claude mcp add --transport http ats-jobs https://ats-jobs.mcpize.run/mcp --header 'Authorization: Bearer <YOUR_TOKEN>'Replace <YOUR_TOKEN> before running.
Claude Desktop and claude.ai
Settings > Connectors > Add custom connector
Name: ats-jobs
Remote MCP server URL: https://ats-jobs.mcpize.run/mcp
This server expects the header Authorization.Cursor
{
"mcpServers": {
"ats-jobs": {
"url": "https://ats-jobs.mcpize.run/mcp",
"headers": {
"Authorization": "Bearer <YOUR_TOKEN>"
}
}
}
}Replace <YOUR_TOKEN> before running.
VS Code
code --add-mcp '{"name":"ats-jobs","type":"http","url":"https://ats-jobs.mcpize.run/mcp","headers":{"Authorization":"Bearer <YOUR_TOKEN>"}}'Replace <YOUR_TOKEN> before running.
Streamable HTTP
https://melikhov.fr/mcpResponds165 msNo sign-in
Claude Code
claude mcp add --transport http ats-jobs https://melikhov.fr/mcpClaude Desktop and claude.ai
Settings > Connectors > Add custom connector
Name: ats-jobs
Remote MCP server URL: https://melikhov.fr/mcpCursor
{
"mcpServers": {
"ats-jobs": {
"url": "https://melikhov.fr/mcp"
}
}
}VS Code
code --add-mcp '{"name":"ats-jobs","type":"http","url":"https://melikhov.fr/mcp"}'Built your own server? run.zero hosts MCP servers on European infrastructure.
Tools
5 tools
Read-only | Idempotent | Open world | ||
|---|---|---|---|---|
detect_company_atsDetect which ATS a company uses, without fetching its jobs.
Takes a website, domain or careers URL and returns the ATS vendor, handle
and how it was detected (URL pattern, careers page, or API probe). Useful to
confirm a company is supported before calling search_jobs. | Not declared | Yes | Not declared | Yes |
list_supported_atsList the 10 supported ATS vendors and what each needs as input. | Not declared | Yes | Not declared | Yes |
search_all_jobsSearch open jobs across ~24,000 companies at once - no company list needed.
Reads a daily index of every live public board on Greenhouse, Lever, Ashby,
Workday, SmartRecruiters, Workable, Recruitee, Teamtailor, Breezy HR and Personio.
Jobs from the latest daily completed index (about 1.4 million records in the current build), at most 3 per company for variety. Results do not include descriptions. The index is a broad coverage snapshot, not an exhaustive real-time feed.
- keywords: comma-separated title terms, any may match, matched at word start
("engineer" matches "Engineering Manager"; "AI" does not match "maintain").
- exclude: comma-separated title terms to drop, e.g. "senior, intern".
- location: comma-separated substrings of the job location, e.g. "Berlin, Germany".
"remote" also accepts remote roles.
- remote: true keeps only remote roles.
- posted_within_days: only jobs first published in the last N days.
- ats: limit to vendors, e.g. "greenhouse,ashby".
- company: substring of the company name.
- limit: 1-50 (default 20).
Returns title, company, location, remote, posted_at, url, ats, ats_handle and
`matched` (total matches). Use search_jobs(vendor=ats, handle=ats_handle) to get
live data and descriptions for one company. | Not declared | Yes | Not declared | Yes |
search_jobsSearch live job postings for one company.
Provide either `company` (website, domain or careers URL - the ATS is detected
automatically) or `vendor` + `handle` (e.g. vendor="greenhouse", handle="stripe").
Workday companies must use a careers URL, e.g.
https://nvidia.wd5.myworkdayjobs.com/NVIDIAExternalCareerSite.
Filters:
- keywords: space-separated terms, all must appear in title, department,
location, company or description (AND match, case-insensitive).
- location: substring match on the job location, e.g. "Berlin" or "Paris".
- remote: true keeps only remote-friendly roles.
- posted_after: ISO date or datetime; returns only jobs posted on/after it.
For only-new monitoring pass the previous response's `latest_posted_at`.
limit: 1-50 (default 20). include_descriptions adds a truncated description
(slower on Workday).
Returns job rows with title, company, location, remote, department,
employment_type, posted_at, url, ats, job_id, optional salary, plus
`latest_posted_at` to use as the next cursor. | Not declared | Yes | Not declared | Yes |
search_jobs_multiSearch several companies at once (up to 5), e.g. a target-account list.
Each company can be a website, domain or careers URL. Returns per-company
results plus a combined `jobs` list. `limit_per_company` is 1-20 (default 10).
Filters behave exactly like in search_jobs. | Not declared | Yes | Not declared | Yes |
Details
- Registry status
- Active
- Published
- Nov 9, 2026
- Updated
- Nov 9, 2026
- Categories
- Uncategorized
- GDPR
- Not declared