lever_add_ contact_ linksAdd links, such as a LinkedIn profile, to the person behind an opportunity.
Ask where a candidate stands, see how many people sit in each stage and who has gone quiet, move people along, log notes and read feedback, all in the Lever account your hiring team already uses.
PopMCPLever
Every documented operation in Lever's Data API, with the everyday hiring tools loaded by default and the rest, from templates and requisition fields to user admin, webhooks, EEO answers and the audit log, one search away.
110 tools in the full catalog: 56 read and 54 write. 47 load by default, and the rest are found with tool search.
lever_add_ contact_ linksAdd links, such as a LinkedIn profile, to the person behind an opportunity.
lever_add_ opportunity_ sourcesAdd sources to an opportunity.
lever_add_ opportunity_ tagsAdd tags to an opportunity.
lever_create_ opportunityAdd a candidate as a new opportunity, with JSON details only.
lever_get_ opportunityRead one opportunity by id, with its stage, owner, tags, sources, applications, urls and archive status.
lever_list_ opportunitiesList candidates' opportunities (one person's candidacy for a role), newest activity first.
lever_remove_ opportunity_ tagsRemove tags from an opportunity.
lever_update_ opportunity_ archivedArchive an opportunity with a reason id, change its reason, or restore it with reason null.
lever_update_ opportunity_ stageMove an opportunity to a stage by stage id.
lever_apply_ to_ postingSubmit an application for a candidate to a published or unlisted posting, with their real details only.
lever_create_ postingCreate a job posting.
lever_get_ postingRead one posting with its job description, categories, owner and links.
lever_get_ posting_ application_ questionsRead a posting's application form: every question and whether it is required, with EEO questions when enabled.
lever_list_ postingsList job postings in any state.
lever_update_ postingChange a posting: only the fields you send change.
lever_add_ candidateAdd a person to Lever in one call, optionally on a posting and with a resume, which Lever reads to fill in missing details.
lever_archive_ opportunityArchive a candidate by the reason's name, such as Underqualified or Hired, or put them back with restore=true.
lever_candidate_ overviewEverything about one candidate in one call: details, stage, owner, applications, notes, feedback, interviews, offers, files and resumes.
lever_download_ documentRead a document on a candidate: an uploaded file, a resume or an offer.
lever_list_ archive_ reasonsList the reasons a candidate can be archived, each marked hired or non-hired, active or inactive.
lever_list_ sourcesList every source candidates came from, with how many opportunities have it.
lever_list_ stagesList the pipeline stages with id and name.
lever_list_ tagsList every tag on the account, with how many opportunities have it.
lever_move_ to_ stageMove a candidate to a stage by the stage's name, such as Phone screen.
lever_outstanding_ feedbackWho still owes interview feedback on an opportunity, following Lever's own rule: the interview happened, was not canceled, has a feedback template other than no-feedback, and the interviewer has no submitted form.
lever_pipeline_ summaryHow many active candidates sit in each stage, across the account or for one posting, and who has gone quiet.
lever_list_ usersList the people on the Lever account with their id, name, username, email and access role.
lever_create_ feedbackSubmit a feedback form on an opportunity.
lever_create_ noteAdd a note to an opportunity, or a comment on an existing note with note_id.
lever_create_ panelSchedule interviews for an opportunity as a new panel.
lever_get_ feedback_ templateRead one feedback template with its fields.
lever_get_ requisitionRead one requisition by its Lever id, from lever_list_requisitions.
lever_list_ feedbackList the feedback forms submitted on an opportunity, with each interviewer's answers and score.
lever_list_ feedback_ templatesList the active feedback templates.
lever_list_ interviewsList the interviews on an opportunity with date, duration, interviewers, location and feedback.
lever_list_ notesList the notes on an opportunity, with their comments, authors and times.
lever_list_ panelsList the interview panels on an opportunity: each schedule of interviews with its times and stage.
lever_list_ requisitionsList headcount requisitions with status, headcount, hired count, owner and custom fields.
lever_list_ filesList the files on an opportunity, such as cover letters and portfolios.
lever_upload_ opportunity_ fileAttach a file to an opportunity.
lever_list_ profile_ formsList the completed profile forms on an opportunity: extra information such as salary expectations or visa details.
lever_get_ contactRead one person's details: name, headline, location, emails and phones.
lever_list_ referralsList the referrals on an opportunity, with who referred the person and their answers.
lever_list_ resumesList an opportunity's resumes, with Lever's parsed work history and education.
lever_update_ contactUpdate a person's name, headline, location, emails or phones.
lever_list_ offersList an opportunity's offers with status, fields such as salary, and signature progress.
lever_upload_ fileStore a file for 24 hours so lever_apply_to_posting can use it.
lever_list_ deleted_ opportunitiesList opportunities deleted from Lever, for keeping another system in step.
lever_list_ opportunity_ file_ actionsList file activity on an opportunity: uploads, resume imports and removals.
lever_remove_ contact_ linksRemove links from the person behind an opportunity.
lever_remove_ opportunity_ sourcesRemove sources from an opportunity.
lever_add_ requisition_ field_ optionsAdd options to a dropdown requisition field.
lever_create_ requisition_ fieldCreate a custom requisition field.
lever_delete_ requisition_ fieldDelete a requisition field.
lever_delete_ requisition_ field_ optionsRemove options from a dropdown requisition field.
lever_get_ requisition_ fieldRead one requisition field by its id, such as cost_center.
lever_list_ deleted_ postingsList postings deleted within a time window of at most 30 days.
lever_list_ posting_ usersSee who can reach a posting: the users and roles with access, and whether access came through a role.
lever_list_ requisition_ fieldsList the custom fields requisitions can carry, with their ids, types and options.
lever_update_ requisition_ fieldReplace a requisition field.
lever_update_ requisition_ field_ optionsRename options on a dropdown requisition field.
lever_get_ archive_ reasonRead one archive reason by id.
lever_get_ stageRead one pipeline stage by id.
lever_list_ disposition_ stagesThe whole pipeline in one call: every stage with its milestone and order, and every archive reason.
lever_create_ userAdd a person to the Lever account.
lever_deactivate_ userStop a person from signing in to Lever.
lever_get_ userRead one user by id, from lever_list_users.
lever_reactivate_ userLet a deactivated person sign in to Lever again.
lever_update_ userReplace an user.
lever_create_ feedback_ templateCreate a feedback template.
lever_create_ form_ templateCreate a profile form template.
lever_create_ interviewAdd an interview to a panel made through the API (externallyManaged is true).
lever_create_ requisitionCreate a requisition.
lever_delete_ feedbackDelete a feedback form from an opportunity.
lever_delete_ feedback_ templateDelete a feedback template made through the API.
lever_delete_ form_ templateDelete a profile form template made through the API.
lever_delete_ interviewDelete an interview from a panel made through the API.
lever_delete_ noteDelete a note made through the API.
lever_delete_ panelDelete a panel made through the API, with its interviews.
lever_delete_ requisitionDelete a requisition.
lever_get_ feedbackRead one feedback form by id, from lever_list_feedback.
lever_get_ form_ templateRead one profile form template with its fields, ready to fill in for lever_create_profile_form.
lever_get_ interviewRead one interview by id, from lever_list_interviews.
lever_get_ noteRead one note by id, from lever_list_notes.
lever_get_ panelRead one interview panel by id, from lever_list_panels.
lever_list_ form_ templatesList the active profile form templates.
lever_update_ feedbackChange the saved answers on a feedback form.
lever_update_ feedback_ templateReplace a feedback template.
lever_update_ form_ templateReplace a profile form template.
lever_update_ interviewReplace an interview on a panel made through the API.
lever_update_ noteReplace a note made through the API: the whole note becomes what you send.
lever_update_ panelReplace a panel made through the API.
lever_update_ requisitionReplace a requisition.
lever_create_ webhookSend Lever events to a web address.
lever_delete_ fileDelete a file from an opportunity.
lever_delete_ webhookDelete a webhook made through the API.
lever_get_ fileRead a file's details: name, type, size and upload time.
lever_list_ webhooksList webhooks with their event and address.
lever_update_ webhooksChange webhooks made through the API.
lever_create_ profile_ formAdd a completed profile form to an opportunity.
lever_get_ profile_ formRead one completed profile form by id, from lever_list_profile_forms.
lever_get_ public_ postingRead one published job from a company's public job site, with no key.
lever_get_ referralRead one referral by id, from lever_list_referrals.
lever_get_ resumeRead one resume's parsed work history and education.
lever_list_ eeo_ responsesEqual employment answers without anything identifying the person, for totals.
lever_list_ eeo_ responses_ piiEqual employment answers tied to named people: gender, race, disability, veteran status.
lever_list_ public_ postingsRead a company's published jobs from its public job site, as a visitor sees them, with no key.
lever_get_ diversity_ surveyRead the diversity survey linked to a posting's location: its questions and answer choices, not anyone's answers.
lever_list_ audit_ eventsList security activity, newest first: sign-ins, user and role changes, API keys and data exports.
lever_list_ deleted_ applicationsList applications deleted within a time window of at most 30 days.
Credentials off one Lever screen, then an endpoint your client signs into. Nothing to deploy, and nothing to install.
As a Lever Super Admin, open Settings, then Integrations and API, then API Credentials, and generate a key under the Data API. Tick the endpoints the AI may use, then paste the key into PopMCP. There is one field, and PopMCP finds your data center by itself.
••••••••••••3f7ayou@company.comMoving, archiving and adding candidates and everything else that edits Lever are writes and wait until an owner or admin allows write actions; new connections start read-only. The endpoints you tick on the key are a second limit that Lever enforces itself. Lever records each change under a person's name, so PopMCP uses the teammate you choose and never guesses between several Super Admins.
Drop the PopMCP URL into Claude, ChatGPT, Claude Code, Codex or any other supported client. It signs in through PopMCP with OAuth, so your Lever credential never leaves the server.
app.popmcp.com/mcpAsk for something harmless before the agent changes anything. Writes run as soon as it calls them, so confirm it reads the right account first.
Where is Shane Smith in our hiring process, and what did his interviewers say?
lever_candidate_overviewok
Then just ask for the work
“Where is Shane Smith in our hiring process, and what did his interviewers say?”
“How is the Infrastructure Engineer role going? Who has had no activity for two weeks?”
“Move Shane to the Phone screen stage and leave a note saying why”
“Who still owes feedback on Shane's interviews?”
“Add this person to the Product Designer posting, with the resume at this link”
“Draft a posting for a Senior Recruiter in Berlin, and leave it unpublished”
“Archive this candidate as Underqualified”
One hosted endpoint, registered once per client. The same tools and the same permissions, whichever window the request comes from.
Add the PopMCP URL under Customize → Connectors and the tools appear in every chat.
The same endpoint, registered in the browser. Nothing to install on the machine you are working from.
Register PopMCP as a custom connector, then let ChatGPT read and update the account.
Wire the endpoint into Codex or the Codex CLI when a task needs live business context, not a fixture.
Register the remote MCP server in OpenCode's config for terminal-first and scripted agent runs.
Add PopMCP as an MCP server in Z.ai's desktop app and work the account from the same window.
FAQ
What teams ask before putting Lever behind an AI client.
One Data API key. A Super Admin makes it under Settings, Integrations and API, API Credentials, and ticks which endpoints it may use. Lever shows the key only once. PopMCP stores it encrypted, works out whether your account is on Lever's global or EU data center, and shows you the account it belongs to. The key never reaches your AI client.
Only what you want the AI to do. For reading, start with Opportunities, Contacts, Postings, Stages, Users, Notes, Feedback and Interviews. To let it make changes, add the matching write endpoints. If a tool needs one you did not tick, the AI is told which. Access to confidential roles is a separate choice that can only be made when the key is created.
Lever records most changes under a person. If your account has one Super Admin, PopMCP uses them and tells you when you connect. Otherwise add a teammate's email under More options, or the AI asks you who to use the first time it needs one. It can also name someone for a single change, by email or by name.
The endpoints you tick decide what Lever will hand over at all. An applicant's IP address and browser details are cut from every answer. A resume or offer is opened only when the AI is asked to read it. EEO answers and the audit log stay out of the everyday tool list, and the AI is told to read them only when asked.
Yes, with a limit. Lever's API has no search, so finding someone by email is exact, while a name is matched against the most recent active candidates. If several people fit, the AI gets them all back and asks which one you mean.
Yes, in two ways. Every connection starts read-only, and an owner or admin can allow write actions later. Separately, tick only read endpoints on the key and Lever itself refuses every change.
No. Lever's OAuth sign-in is only for approved partners, but any Super Admin can make a key today. Some features have their own conditions on Lever's side: the audit log is a paid add-on, and creating requisitions needs API management turned on in Lever's requisition settings.
PopMCP can watch for new candidates, stage moves, archives, deletions, changed postings, new requisitions, users, tags and sources by checking the matching lists for changes. Lever's webhooks also need a Super Admin to turn on each event group in its settings, so nothing is registered on your account for this.
No. PopMCP hosts it and gives you a Streamable HTTP MCP URL. There is nothing to deploy, no callback URL to register, and no infrastructure to keep running or patch.
Any client that supports a remote Streamable HTTP MCP server: Claude Desktop, Claude Web, Claude Code, ChatGPT custom connectors, Codex and the Codex CLI, OpenCode and Z.ai's ZCode, as well as editors such as Cursor, Windsurf and Zed. Your client signs in to PopMCP with OAuth; the provider credential never leaves the server.
Connect Lever in PopMCP first, then run claude mcp add --transport http popmcp https://app.popmcp.com/mcp in a terminal. Inside Claude Code, run /mcp and sign in to PopMCP in the browser window it opens, ticking Lever on the consent screen. The Lever tools are then available in that session, and no Lever credential is stored on your machine.
Loading 110 tool definitions into every conversation burns context before the work starts. PopMCP loads a curated 47-tool set covering the everyday workflows and keeps the rest searchable, so your AI pulls a specialist tool only when a task needs it. Every tool stays searchable, and on Scale the owner can load the full catalog for a teammate's connection.
A tool is something your AI calls, and there are 110 here. A trigger is something PopMCP watches for you: 10 Lever events that can start work on the PopMCP side. Triggers never enter your AI client's context, and none of them ask you to paste a callback URL into Lever.
Launch a hosted MCP endpoint for Lever, keep tool access under control, and start testing real workflow prompts right away.