MCP App Store
by KeenEthics

Overview

NeoTOD is a recruitment and talent operations platform — an applicant tracking system for teams that hire at volume. This connector brings your hiring pipeline into ChatGPT, so recruiters can run the day's work in conversation instead of switching tabs. Ask what your team is hiring for, who is in each pipeline and at which stage, how candidates scored in AI screening, which interviews are scheduled this week, and how hiring is tracking against target — every answer read from your own NeoTOD workspace rather than guessed. It moves hiring forward too: open a new role, move a candidate to the next pipeline stage, or place an AI screening call, each gated on the permissions your NeoTOD administrator already granted you. Access is never wider than your own. You pick one organization when you connect and tick exactly which permissions to grant — the ones that change data arrive switched off. Permissions are re-checked against your live NeoTOD role on every request, so revoking access in NeoTOD takes effect immediately. It cannot send an offer, start a salary negotiation, or delete anything. Actions that reach a candidate are marked so ChatGPT asks you first: a screening call rings a real person and cannot be undone, and moving someone between stages can send whatever that stage is configured to send, including a rejection, if your organization has stage automation on.

Tools

add_candidate_note

ChatGPT
Append a note to a candidate's application. Use it when the recruiter dictates an observation they want on the record. The note is added below whatever is already there; nothing existing is replaced, and nothing is sent to the candidate.

add_candidate_to_job

ChatGPT
Put a candidate who is already in the talent base onto a role's pipeline. Reversible in the product, and nobody is contacted. Use find_candidates to find the candidate id first. This only adds them to the role; use move_candidate_stage to move someone already on it.

call_candidate

ChatGPT
Place an AI screening call to a candidate, right now — the same action as Call Now in NeoTOD. This rings a real person's phone and cannot be undone, so ALWAYS confirm with the recruiter who you are about to call and on which number before using it. The candidate must already be on the role. Do not use it to reach several people in a row unless the recruiter asked for each one by name.

create_job

ChatGPT
Create a new hiring role. Needs a title and the business unit it belongs to — call list_business_units first for the unit id. Nobody is contacted and the role is not published to the careers site; it appears in NeoTOD for the recruiter to finish. Screening questions, the interview pipeline and assessments are NOT set here — say so, and point the recruiter at the role in NeoTOD to configure them.

find_candidates

ChatGPT
Search the organization's talent base by name, headline, location or tag, and return the candidate ids other tools need. Matches on text, not meaning: 'support agent' finds people whose profile says that, and will not infer it from an unrelated job history. For a full job-description match against every resume, the recruiter should use AI Search in NeoTOD, which is not available through this connection.

get_candidate_in_job

ChatGPT
Everything known about one candidate's application to one role: their profile, where they are in the process, their scores, and the notes already on the record. Use it before answering a question about a specific person, rather than guessing from the pipeline summary.

get_dashboard

ChatGPT
The organization's current hiring numbers and what needs attention. Use it to answer 'how are we doing', 'what should I look at first' or 'how many roles are open'. Read the field names carefully: the totals are current counts, interviewsCompletedLast30Days covers only the last 30 days, and trendVsPreviousMonth compares how many were NEWLY CREATED in the last 30 days against the 30 before it — it is not the change in the totals, so do not report it as one. interviewsToday counts only the interviews still expected today — scheduled, joining, waiting or in progress — so it is normally lower than list_calendar_events(days=1), which covers the same day but counts every status including finished and cancelled ones. Do not try to reconcile the two. Figures cover what the signed-in recruiter can see, so a vendor sees their own submissions rather than the whole company's.

get_job

ChatGPT
Full detail for one role: the job description, seniority, location, experience range, and the pipeline stages this role uses. Use it when the user asks what a role involves or whether someone fits it, and before move_candidate_stage to see which stages exist. Get the job id from list_jobs first.

get_job_pipeline

ChatGPT
Every candidate on one role, grouped by the stage they are in, with their scores. This answers most of what a recruiter wants to know in a morning: who is waiting, who is stuck, who is ready to move. Get the job id from list_jobs first.

list_business_units

ChatGPT
List the business units in this organization. Every role belongs to one, so call this before create_job to get the unit id. Returns only the units the signed-in recruiter can see.

list_calendar_events

ChatGPT
Interviews, AI screening calls and candidate bookings in a date window, earliest first. Use it for 'what have I got tomorrow', 'what is on this week' or 'is anything booked for that role'. Dates are whole days in UTC, so days=1 means today only. If your access is limited to particular roles you must name one; an administrator may omit it to see the whole organization. Open slots nobody has booked are not included.

list_candidate_tags

ChatGPT
The organization's candidate tags. Call this before tag_candidate so you use a tag that exists rather than inventing a new spelling of one.

list_interviews

ChatGPT
Interviews for this organization, newest first, with who they are with, when, for which role, the outcome and the score if one exists. Includes AI screening calls as well as video interviews. Use it for questions like 'what have I got this week' or 'how did the interviews for the support role go'. Filter by role using a job id from list_jobs. If your access is limited to particular roles you must name one.

list_jobs

ChatGPT
List the hiring roles in this organization, with how many candidates are in each. Start here when the user asks what they are hiring for, or when another tool needs a job id. Returns the roles the signed-in recruiter is allowed to see, which may be fewer than the organization has in total.

move_candidate_stage

ChatGPT
Move one candidate to a different stage on a role's pipeline — the same move as dragging their card in NeoTOD. Call get_job first for the stage names this role actually has; they are configured per role and are not a fixed list. For most organizations the move is silent. For an organization that has switched on stage automation, moving someone into an automated stage sends them a WhatsApp message or places a screening call, so confirm with the recruiter before moving anyone there.

tag_candidate

ChatGPT
Add a candidate to one of the organization's named lists, e.g. 'shortlisted' or 'silver medallist'. Tags are how a recruiter finds a group again later. Reversible, and the candidate is never told. Only tags that already exist can be used — list_candidate_tags shows them.

Capabilities

Writes

Example Prompts

Click any prompt to copy it.

Similar Apps