Ashby MCP Server

1

Add it to Claude Code

Run this in a terminal.

Run in terminal
claude mcp add -e "ASHBY_API_KEY=${ASHBY_API_KEY}" ashby -- uvx --from git+https://github.com/PlenishAI/mcp-ashby.git ashby
Required:ASHBY_API_KEY
README.md

Connects Claude to the Ashby ATS to manage the hiring pipeline.

Ashby MCP Server

A Model Context Protocol (MCP) server that connects Claude to your Ashby ATS. Browse jobs, manage candidates, track applications through your hiring pipeline, and more — all through natural conversation.

Prerequisites

Setup

1. Install uv

If you don't already have uv installed:

# macOS / Linux
curl -LsSf https://astral.sh/uv/install.sh | sh

# macOS via Homebrew
brew install uv

After installing, find the absolute path to the uvx command (you'll need this for the config):

which uvx

This will return something like /Users/yourname/.local/bin/uvx. Keep this path handy.

2. Get your Ashby API key

Go to https://app.ashbyhq.com/admin/api/keys and create a new API key. Make sure it has at least:

  • candidatesRead
  • jobsRead
  • candidatesWrite (if you want to create candidates, add notes, or move applications)

3. Configure Claude Desktop

Open your Claude Desktop config file:

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
  • Windows: %APPDATA%\Claude\claude_desktop_config.json

Add the following to the mcpServers section, replacing the placeholders with your actual values:

{
  "mcpServers": {
    "ashby": {
      "command": "/absolute/path/to/uvx",
      "args": [
        "--from", "git+https://github.com/PlenishAI/mcp-ashby.git",
        "ashby"
      ],
      "env": {
        "ASHBY_API_KEY": "your-ashby-api-key"
      }
    }
  }
}

Important: Replace /absolute/path/to/uvx with the output from which uvx (e.g. /Users/yourname/.local/bin/uvx). Claude Desktop does not inherit your shell's PATH, so the full path is required.

4. Restart Claude Desktop

Quit and reopen Claude Desktop. The Ashby server should connect automatically. You can verify by asking Claude something like "list my open jobs in Ashby."

Alternative: Local Clone Setup

If the git+ URL method doesn't work (e.g. private repo or network restrictions), you can clone the repo locally:

git clone https://github.com/PlenishAi/mcp-ashby.git ~/projects/mcp-ashby

Then use uv (not uvx) in your config, pointing to the local directory:

{
  "mcpServers": {
    "ashby": {
      "command": "/absolute/path/to/uv",
      "args": [
        "--directory", "/absolute/path/to/mcp-ashby",
        "run", "ashby"
      ],
      "env": {
        "ASHBY_API_KEY": "your-ashby-api-key"
      }
    }
  }
}

Note: When using a local clone, run which uv to get the path — the command is uv, not uvx.

To update, just git pull from the repo directory.

Available Tools

Jobs

Tool Description
job_list List all jobs with optional status filter (Draft, Open, Closed, Archived)
job_info Get details of a single job by ID
job_search Search jobs by title

Candidates

Tool Description
candidate_list List all candidates with cursor pagination
candidate_search Search candidates by email and/or name
candidate_info Get full details of a candidate by ID
candidate_create Create a new candidate
candidate_create_note Add an HTML-formatted note to a candidate
candidate_list_notes List all notes for a candidate
candidate_add_tag Add a tag to a candidate
candidate_tag_list List all available candidate tags

Applications

Tool Description
application_list List applications with optional jobId, status, and date filters
application_info Get full details of an application by ID
application_create Create an application linking a candidate to a job
application_change_stage Move an application to a different interview stage

Interviews & Pipeline

Tool Description
interview_stage_list List interview stages for a given interview plan
interview_plan_list List all interview plans
interview_list List all interviews with cursor pagination
interview_info Get details of a single interview by ID

Reference Data

Tool Description
department_list List all departments
user_list List all users (team members)
source_list List all candidate sources
archive_reason_list List all archive reasons
location_list List all locations

Troubleshooting

"No such file or directory" on startup

Claude Desktop can't find uvx. Make sure you're using the full absolute path from which uvx in your config, not just "uvx".

"Package not found in registry"

If you see a PyPI resolution error, make sure the --from argument uses the `git

Tools (24)

job_listList all jobs with optional status filter.
job_infoGet details of a single job by ID.
job_searchSearch jobs by title.
candidate_listList all candidates with cursor pagination.
candidate_searchSearch candidates by email and/or name.
candidate_infoGet full details of a candidate by ID.
candidate_createCreate a new candidate.
candidate_create_noteAdd an HTML-formatted note to a candidate.
candidate_list_notesList all notes for a candidate.
candidate_add_tagAdd a tag to a candidate.
candidate_tag_listList all available candidate tags.
application_listList applications with optional jobId, status, and date filters.
application_infoGet full details of an application by ID.
application_createCreate an application linking a candidate to a job.
application_change_stageMove an application to a different interview stage.
interview_stage_listList interview stages for a given interview plan.
interview_plan_listList all interview plans.
interview_listList all interviews with cursor pagination.
interview_infoGet details of a single interview by ID.
department_listList all departments.
user_listList all users (team members).
source_listList all candidate sources.
archive_reason_listList all archive reasons.
location_listList all locations.

Environment Variables

ASHBY_API_KEYrequiredAPI key generated from Ashby admin settings with candidatesRead, jobsRead, and candidatesWrite permissions.

Configuration

claude_desktop_config.json
{"mcpServers": {"ashby": {"command": "/absolute/path/to/uvx", "args": ["--from", "git+https://github.com/PlenishAI/mcp-ashby.git", "ashby"], "env": {"ASHBY_API_KEY": "your-ashby-api-key"}}}}

Try it

List all my open jobs in Ashby.
Search for candidates with the name 'John Doe'.
Move the application for candidate ID 123 to the 'Technical Interview' stage.
Add a note to candidate ID 456 saying they had a great initial screening.
List all interview stages for the Engineering interview plan.

Frequently Asked Questions

What are the key features of Ashby MCP Server?

Browse and search job postings within Ashby.. Manage candidate profiles and view application history.. Update application stages and interview pipelines.. Add notes and tags to candidate records.. Retrieve reference data including departments, locations, and team members..

What can I use Ashby MCP Server for?

Recruiters quickly checking the status of open roles without leaving the Claude interface.. Hiring managers updating candidate stages after a quick debrief with Claude.. Coordinating interview scheduling by listing available interview plans and stages.. Adding interview feedback notes to candidate profiles during or after a conversation..

How do I install Ashby MCP Server?

Install Ashby MCP Server by running: uvx --from git+https://github.com/PlenishAI/mcp-ashby.git ashby

What MCP clients work with Ashby MCP Server?

Ashby MCP Server works with any MCP-compatible client including Claude Desktop, Claude Code, Cursor, and other editors with MCP support.

Turn this server into reusable context

Keep Ashby MCP Server docs, env vars, and workflow notes in Conare so your agent carries them across sessions.

Need the old visual installer? Open Conare IDE.
Open Conare