JazzHR API and MCP server

JazzHR's API cannot move a candidate, change a job status, send an email or create a task. Sign in to JazzHR once in your own Cloud Browser, and your AI agent does the work there for you. The same tools work over MCP for agents and as a REST API for scripts.

Not affiliated with JazzHR.

JazzHR has no API for this. So we run one for you.

JazzHR's own API, a GitHub MCP server and Cotlet compared
What you need JazzHR's APIGitHub MCP serverCotlet
Candidate moves, bulk status, emails, tasks No No Yes, 13 tools
Acts as you, signed in 24/7 No No Yes, Cloud Browser
Fixed for you when JazzHR changes N/A No Yes, tested every 6h
Runs with your laptop off N/A No Yes, hosted

Checked Oct 20, 2026. Sources: JazzHR API reference · JazzHR Help: API Overview · JazzHR Help: Job Status Overview · JazzHR Help: Performing Bulk Actions

Your own Cloud Browser, on 24/7. Sign in once. We keep it connected.

  1. 01Sign in to JazzHR in your own Cloud Browser

  2. 02Connect it for your agents

  3. 03Cotlet keeps it signed in and working

How do I connect JazzHR to Claude, ChatGPT or my code?

AI agents connect over MCP, scripts call the REST API. Both reach the same 13 tools with one API key.

For AI agents: MCP

Add Cotlet to your agent once. JazzHR and every other app you connect show up as its tools.

  • Claude
  • ChatGPT
  • OpenClaw
  • Hermes
  • GrokBot
  • Cursor
  • n8n
  • Any MCP client
  1. 1

    Add Cotlet to your agent

    Claude Code
    claude mcp add --transport http cotlet \
      https://cotlet.dev/mcp/v1 \
      --header "Authorization: Bearer $COTLET_API_KEY"
    Cursor
    {
      "mcpServers": {
        "cotlet": {
          "url": "https://cotlet.dev/mcp/v1",
          "headers": {
            "Authorization": "Bearer ${COTLET_API_KEY}"
          }
        }
      }
    }
    Codex
    # ~/.codex/config.toml
    [mcp_servers.cotlet]
    url = "https://cotlet.dev/mcp/v1"
    bearer_token_env_var = "COTLET_API_KEY"

    Paste the snippet for your client. The same server and key serve every app you connect, so you do this once.

For scripts: REST API

Every tool is an endpoint under /api/v1/jazzhr with its own method and path, such as PATCH /api/v1/jazzhr/jobs/{job_id}/candidates/{candidate_id}/status, with the same API key. Our open-source repo has ready scripts to start from.

REST API docs

What can the JazzHR API and MCP server do?

13 tools on your own JazzHR account. Agents call them as operations of the MCP tools jazzhr_read and jazzhr_write; scripts call each one at its own REST endpoint, with the same inputs and answers.

JazzHR tools in Cotlet's MCP server and REST API
Tool What it does Access
list_jobs Jobs of your account with status, department and location, filtered by status or title. read
get_job One job with its description, hiring lead, workflow and status. read
list_workflow_stages The stages of the workflow a job uses, in order, with the closing statuses such as Not Hired. read
list_candidates Candidates of a job with stage, rating and apply date, filtered by stage, status or name. read
get_candidate One candidate with contact details, questionnaire answers, source and notes on the job. read
list_tasks Open and done tasks with the candidate, assignee and due date. read
change_candidate_status Move one candidate to a workflow stage of their job, or to a closing status such as Not Hired. writeasks first
bulk_change_status Move a group of candidates of one job to a stage or closing status in one pass. writeasks first
send_candidate_email Email one candidate from their profile, from a template or with your own text. writeasks first
add_candidate_note Add a note to a candidate on one job, visible to your hiring team. writeasks first
create_task Create a task on a candidate for a teammate, with a due date and optional email notice. writeasks first
create_job Create a job as Drafting or Open from a title, description and basic fields. write
set_job_status Change a job to Open, On Hold, Drafting, Filled, Cancelled or Closed. writeasks first

Scroll the table for all 13 tools.

Ask in plain words. Your agent does the rest.

Is it safe to connect JazzHR?

You sign in yourself in your own Cloud Browser, we never save your password, and anything that reaches your readers waits for your OK. The browser profile is encrypted in the EU. Independent scanners grade cotlet.dev A+.

How much do the JazzHR API and MCP server cost?

One price for both: a tool call costs the same over MCP or REST. Free 7-day trial with 2,000 credits, no card needed. Then one-time credit packs, no subscription, valid 12 months. Most calls use 25 credits, and your Cloud Browser uses 50 credits a day while JazzHR is enabled for agents, so 20 calls a day come to 550 credits.

Cotlet credit packs: price, credits and calls at 25 credits each
Credits Price, one time Calls at 25 credits Per 1,000 credits
5,000 $29 200 $5.80
15,000 $79 600 $5.27
32,000 $149 1,280 $4.66
60,000 $249 2,400 $4.15

Only successful calls use credits; failed calls and timeouts cost nothing. At a balance of 0 calls pause, never a surprise charge. Authenticate with the Authorization: Bearer header.

Questions

Does JazzHR have an API?

JazzHR has a REST API with an API key from Settings > Integrations, but no official MCP server (checked 20 Oct 2026). The API reads jobs, applicants, activities, tasks and hires and can add applicants, notes, files and jobs. It has no call to move a candidate to another workflow stage, change a job status, email a candidate or create a task.

How do I get access?

Sign up free, open JazzHR under Integrations in the console and press Request access. Your free trial starts with your account, no card needed.

Is the MCP server different from the API?

No, only the way in. Cotlet builds each integration as a REST API and puts an MCP server on top, so both have the same 13 tools, the same inputs and answers, one API key and one price. AI agents such as Claude, ChatGPT or Cursor use MCP; scripts, cron jobs and HTTP steps in n8n, Make or Zapier use the REST API.

What is the Cloud Browser?

Your own Chrome that Cotlet runs for you in the EU, around the clock. You open it from the console, sign in to JazzHR yourself and press Enable for agents. Your agent's calls go through it, from its IP with its cookies, so JazzHR sees the browser you signed in with. Password saving is off and the profile is stored encrypted with AES-256-GCM.

Can my agent act without asking me?

Not on anything that reaches other people: change_candidate_status, bulk_change_status, send_candidate_email, add_candidate_note, create_task, set_job_status wait for your OK by default. You can switch that off per tool for scheduled runs.

Which JazzHR plan and role do I need for the API key?

JazzHR's API Overview says the API is included with all subscription levels, and the key sits under Settings > Integrations. It names Super Administrators, Recruiting Administrators and Developers as the roles that see it, so check your plan and role in your own account. Cotlet needs neither a key nor a plan feature: it works in your signed-in JazzHR with your role.

Should I use a JazzHR MCP server from GitHub instead?

Pick one if you want the code on your own computer and do not mind the upkeep: you install it, sign it in and fix it when JazzHR changes. Pick Cotlet if you want it hosted and kept working for you.

Can I use it in n8n, Make or Zapier?

Yes. Add https://cotlet.dev/mcp/v1 in n8n's MCP Client node, or call the REST endpoints from an HTTP step in Make or Zapier.

Who runs Cotlet?

Cotlet is run by Take Group, a Polish software company working since 2019. Take Group runs about 3,200 websites on its own systems and has its own DevOps team for infrastructure security. We built and used integrations like this inside the company for years before opening them as Cotlet.

Is Cotlet affiliated with JazzHR?

No. Cotlet is independent and not affiliated with JazzHR.

Give your agent access to JazzHR.

Free 7-day trial with 2,000 credits, no card needed.