Open jobs read from a company's own careers system: Greenhouse, Ashby, Lever.
Maintain this server? Claim it
Call this server's tools from your browser. Nothing to install.
Requests go through mcptry because browsers can't call most MCP servers directly. Header values are sent to the server for that request only and are never stored or logged.
Tool list from our last check. Connect live to refresh it.
Open jobs across several companies at once, in one schema. This is the thing no single applicant-tracking system can do: each vendor only knows about its own customers. Companies on different systems come back with the same field names. One company failing does not lose the others.
Up to 20 company board names or careers URLs.
Maximum postings per company.
This tool isn't marked read-only, so it may change something on the server or in an account you connected.
Open jobs across several companies at once, in one schema. This is the thing no single applicant-tracking system can do: each vendor only knows about its own customers. Companies on different systems come back with the same field names. One company failing does not lose the others.
| Argument | Type | Description |
|---|---|---|
| companies* | array | Up to 20 company board names or careers URLs. |
| per_company | integer | Maximum postings per company. |
{
"type": "object",
"required": [
"companies"
],
"properties": {
"companies": {
"type": "array",
"items": {
"type": "string"
},
"maxItems": 20,
"minItems": 1,
"description": "Up to 20 company board names or careers URLs."
},
"per_company": {
"type": "integer",
"default": 25,
"maximum": 100,
"minimum": 1,
"description": "Maximum postings per company."
}
}
}Find which applicant-tracking system a company's careers page runs on. Greenhouse, Ashby and Lever all publish open job board APIs, and all of them are unusable unless you already know the company's board name. None publishes a directory of its customers, and none could, since no vendor knows about the others. Use this first when you have a company name rather than a careers URL.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum matches to return. |
| company* | string | Company name or board name, for example 'anthropic' or '1Password'. Case and punctuation do not matter. |
{
"type": "object",
"required": [
"company"
],
"properties": {
"limit": {
"type": "integer",
"default": 10,
"maximum": 100,
"minimum": 1,
"description": "Maximum matches to return."
},
"company": {
"type": "string",
"description": "Company name or board name, for example 'anthropic' or '1Password'. Case and punctuation do not matter."
}
}
}Every open job at one company, read from its own careers system. Returns title, department, location, employment type, workplace type, posted date, a parsed salary range where the employer publishes one, and a verify_url pointing at the employer's own advert. Salaries are refused rather than guessed: an hourly rate, an ambiguous currency, or bands in two currencies all yield no figure, and salary_text keeps whatever the employer wrote.
| Argument | Type | Description |
|---|---|---|
| limit | integer | Maximum postings to return. |
| company* | string | A board name ('stripe'), a careers URL ('https://jobs.ashbyhq.com/ramp'), or system:name ('ashby:ramp'). |
| include_description | boolean | Include the full job description. Off by default because descriptions are long; contact details are removed either way. |
{
"type": "object",
"required": [
"company"
],
"properties": {
"limit": {
"type": "integer",
"default": 50,
"maximum": 200,
"minimum": 1,
"description": "Maximum postings to return."
},
"company": {
"type": "string",
"description": "A board name ('stripe'), a careers URL ('https://jobs.ashbyhq.com/ramp'), or system:name ('ashby:ramp')."
},
"include_description": {
"type": "boolean",
"default": false,
"description": "Include the full job description. Off by default because descriptions are long; contact details are removed either way."
}
}
}