Jobven
Search job postings and employers collected from company career sites. Each result includes the REST call that produced it, ready for your code.
Hosted MCP Server
npx add-mcp 'https://api.jobven.com/mcp'Installs into Claude Code, Codex, Cursor and more
Documentation
Use Jobven in Claude Code, Cursor, VS Code and Codex
Search Jobven jobs and companies from your coding assistant with the Jobven MCP server, get each search back as a REST request, and test a webhook receiver against a signed sample delivery.
The Jobven MCP server lets your coding assistant search Jobven jobs and companies with your API key. Every result carries the REST request that produced it, as a URL and a curl command, so a search you try in chat goes straight into your code.
| URL | https://api.jobven.com/mcp |
| Transport | Streamable HTTP |
| Authentication | Your Jobven API key in the X-API-Key header (get a free key); webhook_example works without one |
| Metering | The same as the API: each job returned counts toward your monthly allowance |
Connect your assistant
Put your key in an environment variable, then add the server with one command:
export JOBVEN_API_KEY="your-api-key"
claude mcp add --transport http --scope user jobven https://api.jobven.com/mcp --header 'X-API-Key: ${JOBVEN_API_KEY}'
- Claude Code stores
${JOBVEN_API_KEY}itself and reads the variable each time it starts, in every project (--scope user). - Codex stores the variable's name and sends the key as
Authorization: Bearer, which Jobven accepts. - VS Code saves the key's value in your VS Code user profile.
- Cursor has no install command: add the Cursor config below to
~/.cursor/mcp.jsonfor every project, or.cursor/mcp.jsonfor one.
Or add it to a config file
To share the setup with a team in the repository, use a config file. Each one reads the key from the JOBVEN_API_KEY environment variable or a prompt, so the file holds no key and is safe to commit.
{
"mcpServers": {
"jobven": {
"type": "http",
"url": "https://api.jobven.com/mcp",
"headers": {
"X-API-Key": "${JOBVEN_API_KEY}"
}
}
}
}
Then ask your assistant something like "find remote TypeScript jobs posted this week and show me the request".
Tools
| Tool | What it returns | Counts toward your allowance |
|---|---|---|
search_jobs | Jobs matching the filters of GET /v1/public/jobs, 10 per page by default and at most 25, each with a plain-text excerpt of its description, plus nextCursor for the next page | Each job returned |
get_job | One job by id with its full description, as plain text or markdown | One job |
search_companies | Employers matching the filters of GET /v1/public/companies | No |
get_company | One employer by id | No |
webhook_example | A signed sample delivery for job.created, job.updated, job.closed or job.deleted, with a signature verifier in TypeScript, Python or Go | No |
Every tool is read-only. None of them create, change or delete anything on your account.
The request behind each result
search_jobs, get_job, search_companies and get_company each return a request with the exact call they made:
{
"method": "GET",
"url": "https://api.jobven.com/v1/public/jobs?q=engineer&remoteType=remote&limit=10&descriptionFormat=plain",
"curl": "curl -H \"x-api-key: $JOBVEN_API_KEY\" 'https://api.jobven.com/v1/public/jobs?q=engineer&remoteType=remote&limit=10&descriptionFormat=plain'"
}
The curl command reads your key from $JOBVEN_API_KEY. Your key never appears in a tool result.
search_jobs asks for plain-text descriptions and returns an excerpt of each, so a page of jobs stays small in your assistant's context. In your own code, drop descriptionFormat=plain for HTML, or use markdown or all, and raise limit to your plan's page size (25 on Free, 50 on Starter, 100 on Growth and above).
Testing a webhook receiver
webhook_example returns a delivery exactly as your endpoint receives one: the raw body, every header, and a Jobven-Signature signed with an example secret. The verifier it returns is the one in Signature verification, and it accepts the sample for 300 seconds, so you can POST the sample to your receiver and check it end to end. Real deliveries are signed with your subscription's own signing secret, shown once when you create the subscription in the dashboard.
Usage and limits
MCP calls go through the same API as your code: the same key checks, burst limit, monthly allowance and usage counts on your dashboard.
When a call is refused, the tool returns the API's own message so your assistant can explain it:
| Message starts with | Meaning |
|---|---|
This tool needs a Jobven API key | The connection sent no X-API-Key header. Check the environment variable your config reads. |
Jobven API 401 | The key is unknown or revoked. Create a new one on the API keys page. |
Jobven API 429 | The monthly allowance is used up, or the burst limit was hit. The message says when to retry. See Rate limits. |
Listing the tools and webhook_example need no key, so you can try the server, and directories and inspectors can see what it offers, before you sign up.
[
Apify and RapidAPI
Get Jobven job data through Apify or RapidAPI and pay on the marketplace account you already have. The same jobs from employer career sites as the API.