Endpoints: 28,729MCP servers: 18,413Payout addresses: 2,070Paid calls: 1,526Letters: 13Defects: 1,322counted 2 min ago
teppi

MCP serverio.github.work0r-ai/workorai

WorkorAI talent marketplace MCP: candidate job search and employer hiring with explainable matching
UNRATEDActivestreamable-httpworkorai.com

Overview

Score?
UNRATED 0.815
of what a free look can see, on 30 looks
Looks
35
last 12 hr ago
Tools
29

More info

URL
workorai.com/mcp
streamable-http
Says it is
workor-mcp 0.1.0
protocol 2025-06-18
In the record since
32 days ago

Among servers18,413 with a card

0median 0.606 · this server 0.815 · highest on record 0.8561

Toolsfrom sha256:2edd15e83f…1d9008

The tools this server lists, read out of the definition it returned
ToolSchema
candidate.accept_invitation
Accept an employer's invitation to a job (INVITED -> APPLIED). Idempotent — accepting an already-accepted invite succeeds. Returns NOT_INVITED when there is no open invitation (e.g
input · output
candidate.apply_to_job
Apply the candidate to a PUBLISHED job, reusing their evaluated profile interview as evidence. Idempotent (re-applying succeeds; `reused` is true when an application row already ex
input · output
candidate.decline_invitation
Decline an employer's invitation to a job (INVITED -> DECLINED). TERMINAL — a declined invite blocks any re-invite from the employer, so only decline when the candidate is sure. Id
input · output
candidate.get_applications
List the candidate's own job applications (newest first) with status, dates, the originating interview score, and a job summary. Returns only the caller's applications — no jobId i
input · output
candidate.get_job
Fetch a single published job by id.
input · output
candidate.get_saved_jobs
List the candidate's saved (bookmarked) jobs, newest first. Only currently PUBLISHED jobs are returned — a job saved earlier then closed/archived is omitted.
input · output
candidate.search_jobs
Semantically rank published jobs against the authenticated candidate profile (embedding-based fit). Optional tier (best|good|weak) narrows to a match-quality band — start with tier
input · output
candidate.set_saved_job
Set whether a PUBLISHED job is in the candidate's saved list (idempotent desired-state, NOT a toggle — pass saved:true to bookmark, saved:false to remove). Returns NOT_FOUND for a
input · output
candidate.withdraw_application
Withdraw the candidate's active application to a job (APPLIED -> WITHDRAWN). Idempotent (withdrawing again succeeds). Returns NOT_APPLIED when there is no active application (e.g.
input · output
employer.archive_job
Transition a CLOSED job to ARCHIVED. Returns NOT_FOUND for missing or non-owner jobs and CONFLICT when the job is not in CLOSED.
input · output
employer.cancel_invitation
Cancel a pending invitation sent to a candidate. The invitation record is deleted; the employer can re-invite the same candidate later.
input · output
employer.close_job
Transition a PUBLISHED job to CLOSED. Returns NOT_FOUND for missing or non-owner jobs and CONFLICT when the job is not in PUBLISHED.
input · output
employer.create_job
Parse raw text via Gemini AI and create a DRAFT job under the current employer. Synchronous: latency 5-30s. The agent can then call employer.update_job to refine fields and employe
input · output
employer.delete_job
Permanently delete a DRAFT job that was never published. Returns NOT_FOUND for missing or non-owner jobs and CONFLICT when the job is not in DRAFT.
input · output
employer.get_applicant_detail
Full applicant bundle: resume, interview light slice (overallScore + summary + facts), GitHub analysis, LinkedIn analysis. The verbatim transcript is delivered by employer.get_appl
input · output
employer.get_applicant_transcript
Verbatim interview transcript for one applicant. Ownership-only gate (same as the UI Download button — no SHORTLISTED/HIRED requirement). Returns an empty array when the source int
input · output
employer.get_candidate
Fetch a discoverable candidate by user id. Returns search-entry shape plus a light interview slice (overallScore + summary + completedAt + evaluatedAt) and `existingApplications`:
input · output
employer.get_candidate_evidence
Fetch the interview EVIDENCE (facts proven in the interview + their Q&A, the interview summary, the résumé summary, and GitHub/LinkedIn signals) for ONE candidate AGAINST one of yo
input · output
employer.get_job
Fetch a single employer job record by id. Returns NOT_FOUND for missing jobs and for jobs owned by another employer (no existence leak).
input · output
employer.invite_candidate
Invite a discoverable candidate to one of the employer's PUBLISHED jobs. Creates a JobApplication with status=INVITED. If a prior WITHDRAWN row exists for this (candidate, job) pai
input · output
employer.list_applicants
List the live (APPLIED) applicants on one of the employer's jobs. The candidate showcase + interview overallScore/summary are always returned; contact fields are only included when
input · output
employer.list_invitations
List the pending (INVITED) candidates on one of the employer's jobs — candidates who have been invited but have not yet accepted or declined.
input · output
employer.list_jobs
List jobs owned by the current employer account.
input · output
employer.publish_job
Transition a DRAFT job to PUBLISHED. Returns NOT_FOUND for missing or non-owner jobs and CONFLICT when the job is not in DRAFT.
input · output
employer.search_candidates_by_query
Free-form semantic search across discoverable (interviewed) candidates with no job context. The query is embedded and candidates are ranked by semantic similarity — a preliminary s
input · output
employer.search_candidates_for_job
Semantically rank discoverable (interviewed) candidates against one of the employer's own jobs, with a per-candidate fit score AND a white-box explanation. WORKFLOW for finding the
input · output
employer.set_review_status
Update the employer review state on an application (NEW / REVIEWING / SHORTLISTED / REJECTED / HIRED). SHORTLISTED and HIRED unlock the candidate's direct contact in subsequent lis
input · output
employer.update_job
Update the fields of an existing employer job. Accepts a partial whitelist; rawInput and dataSource are not editable (the wrapper auto-flips dataSource to USER_EDITED on every agen
input · output
request_access
Use when someone wants to find work/jobs (candidate) or hire/find candidates (employer) but the authenticated role tools are not usable yet. Explains role-specific onboarding (cand
input · output
Verify it yourselfnpx teppi-check https://workorai.com/mcpcurl -s https://api.teppi.xyz/v1/trust/mcp/mcs_01M1FZ2NYB8MM6E6G0HKDWJ1E7