io.github.XJTLUmedia/ai-hr-management-toolkit
NPM · MCP-AI-HR-MANAGEMENT-TOOLKIT · SCANNED SEP 20
AI HR toolkit: 24 MCP tools for resume parsing, skill extraction & ATS management.
Available components
Recent critical change
GHSA-2xp9-vwfh-vxw4 affects this package (9 Sept 2026). See the changelog before you install this server.
How this component scores in each security and reliability category. Every signal is checked automatically from public evidence about the published package, including repeated runs of it in an isolated sandbox, and we only credit what we can confirm. How we score → Why this is hard to score →
Supply Chain Security73
- No malware found by supply-chain analysis.Pass
- CVE check failed: an unpatched critical CVE affects this package; the score is capped at 0. See how to fix → View diagnostics → Fail
- No install/post-install scripts declared.Pass
- 110 of 336 dependencies flagged as unhealthy (7 deprecated). View diagnostics → Partial
Provenance & Transparency45
- Source repository is publicly reachable at the declared URL. View diagnostics → Pass
- Provenance check failed: no build-provenance attestation is published. See how to fix → View diagnostics → Fail
- Clear OSI-approved license (MIT).Pass
- Actively maintained (last published 167 days ago).Pass
- Disclosure check failed: no security disclosure policy was found in the source repository. See how to fix → Fail
Schema Quality & AI Usability82
- 100% of prompts and resources have a non-trivial description (not blank, and not just the item's name).Pass
- AI-judged instruction clarity (excellent).Pass
- Context-footprint check failed: tool/resource definitions use about 3504 tokens (~134/item across 26 items; 24 tools + 2 resources), over budget; trim descriptions and params. See how to fix → Fail
- Usage-examples check failed: none of the tools include examples. See how to fix → Fail
Stability & Change Management87
- Stability observed for 26 of 30 days with no destabilising changes; credit accrues until the full window elapses.Partial
Tool Coverage100
- 100% of tools have a non-trivial description (not blank, and not just the tool's name).Pass
- 100% of tool parameters carry a description.Pass
Tool Safety100
- No prompt-injection markers were found in the server instructions, tool names or descriptions we captured.Pass
- All 1 tool(s) whose name or description implies an irreversible operation declare an MCP destructiveHint annotation.Pass
- An AI judge read all 25 captured unit(s) of tool text and found none that tries to manipulate the model reading it.Pass
Capabilities100
- Implements a supported MCP spec version (2025-11-25); the latest is 2026-07-28.Pass
How do I install the io.github.XJTLUmedia/ai-hr-management-toolkit MCP server?
io.github.XJTLUmedia/ai-hr-management-toolkit runs locally as an npm package, launched with npx -y mcp-ai-hr-management-toolkit. Ready-made configuration for Claude, Cursor, VS Code, Codex and 5 more is on this page, copied from each client's own documentation.
npm · mcp-ai-hr-management-toolkit
claude mcp add xjtlumedia-ai-hr-management-toolkit -- npx -y mcp-ai-hr-management-toolkit
{
"mcpServers": {
"xjtlumedia-ai-hr-management-toolkit": {
"command": "npx",
"args": [
"-y",
"mcp-ai-hr-management-toolkit"
]
}
}
} {
"servers": {
"xjtlumedia-ai-hr-management-toolkit": {
"command": "npx",
"args": [
"-y",
"mcp-ai-hr-management-toolkit"
]
}
}
} codex mcp add xjtlumedia-ai-hr-management-toolkit -- npx -y mcp-ai-hr-management-toolkit
{
"$schema": "https://opencode.ai/config.json",
"mcp": {
"xjtlumedia-ai-hr-management-toolkit": {
"type": "local",
"command": [
"npx",
"-y",
"mcp-ai-hr-management-toolkit"
],
"enabled": true
}
}
} openclaw mcp add xjtlumedia-ai-hr-management-toolkit --command npx --arg -y --arg mcp-ai-hr-management-toolkit
mcp_servers:
xjtlumedia-ai-hr-management-toolkit:
command: "npx"
args: ["-y", "mcp-ai-hr-management-toolkit"] {
"McpServers": {
"xjtlumedia-ai-hr-management-toolkit": {
"Transport": "stdio",
"Command": "npx",
"Arguments": [
"-y",
"mcp-ai-hr-management-toolkit"
]
}
}
} assistant mcp add xjtlumedia-ai-hr-management-toolkit -t stdio -c npx -a -y mcp-ai-hr-management-toolkit
{
"mcpServers": {
"xjtlumedia-ai-hr-management-toolkit": {
"command": "npx",
"args": [
"-y",
"mcp-ai-hr-management-toolkit"
]
}
}
} Every change we have recorded for this component, newest first. Security-relevant changes are always shown. ▲ marks a change for the better, ▼ a change for the worse; unmarked changes are neutral.
- 18 Sept 26 0
- Stability: pass → 0.80 functional
- 17 Sept 26 0
- Stability: 0.97 → pass security
- 13 Sept 26 0
- Security disclosure: unverified → fail ▼ functional
- 12 Sept 26 0
- Security disclosure: fail → unverified ▼ functional
- 11 Sept 26 0
- Stability: pass → 0.80 functional
- 10 Sept 26 0
- Stability: 0.97 → pass security
- 9 Sept 26 −79
- GHSA-2xp9-vwfh-vxw4 affects this package: high ▼ critical
- CVE-2026-75604 affects this package: high ▼ critical
- Score status: scored → failed ▼ critical
- Known CVEs: CVE check failed: an unpatched critical CVE affects this package; the score is capped at 0. critical
- 8 Sept 26 0
- CVE-2026-45623 affects this package: high ▼ security
- CVE-2026-64647 affects this package: high ▼ security
- CVE-2026-44575 affects this package: high ▼ security
- CVE-2026-44573 affects this package: high ▼ security
- CVE-2026-41907 affects this package: high ▼ security
- CVE-2026-64646 affects this package: high ▼ security
- CVE-2026-64644 affects this package: high ▼ security
- CVE-2026-44582 affects this package: high ▼ security
- CVE-2026-64642 affects this package: high ▼ security
- CVE-2026-44576 affects this package: high ▼ security
- GHSA-8h8q-6873-q5fj affects this package: high ▼ security
- CVE-2026-41305 affects this package: high ▼ security
- CVE-2026-73646 affects this package: high ▼ security
- CVE-2026-44579 affects this package: high ▼ security
- CVE-2026-82659 affects this package: high ▼ security
- GHSA-q4gf-8mx6-v5v3 affects this package: high ▼ security
- CVE-2026-44572 affects this package: high ▼ security
- CVE-2026-44581 affects this package: high ▼ security
- CVE-2026-44580 affects this package: high ▼ security
- CVE-2026-64649 affects this package: high ▼ security
- CVE-2026-45109 affects this package: high ▼ security
- GHSA-f88m-g3jw-g9cj affects this package: high ▼ security
- CVE-2026-64648 affects this package: high ▼ security
- CVE-2026-64645 affects this package: high ▼ security
- CVE-2026-69153 affects this package: high ▼ security
- CVE-2026-64641 affects this package: high ▼ security
- CVE-2026-64643 affects this package: high ▼ security
- CVE-2026-44574 affects this package: high ▼ security
- CVE-2026-44578 affects this package: high ▼ security
- CVE-2026-44577 affects this package: high ▼ security
Diagnostic detail from the automated scan of this channel: what the scanner observed at each step, so you can see exactly where a check passed or failed. It is informational only and never changes the trust score.
Captured 20 Sept 2026 · Analysed npm/mcp-ai-hr-management-toolkit@3.0.5
Provenance No attestation
The registry publishes no build provenance for this version, so there is nothing to verify.
| Result | No attestation |
|---|---|
| Ecosystem | npm |
Background: How many MCP packages publish verified provenance →
Vulnerabilities 37 findings
| ID | CVE | Severity | Vector | Fix available |
|---|---|---|---|---|
| GHSA-267c-6grr-h53f | CVE-2026-44575 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N | yes |
| GHSA-26hh-7cqf-hhc6 | CVE-2026-45109 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N | yes |
| GHSA-2xp9-vwfh-vxw4 | critical | yes | ||
| GHSA-36qx-fr4f-26g5 | CVE-2026-44573 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N | yes |
| GHSA-3g8h-86w9-wvmq | CVE-2026-44572 | low | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:L | yes |
| GHSA-4633-3j49-mh5q | CVE-2026-64647 | medium | yes | |
| GHSA-492v-c6pp-mqqv | CVE-2026-44574 | high | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N | yes |
| GHSA-4c39-4ccg-62r3 | CVE-2026-64646 | medium | yes | |
| GHSA-68g3-v927-f742 | CVE-2026-64648 | medium | yes | |
| GHSA-6gpp-xcg3-4w24 | CVE-2026-64642 | high | yes | |
| GHSA-89xv-2m56-2m9x | CVE-2026-64649 | high | yes | |
| GHSA-8h8q-6873-q5fj | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes | |
| GHSA-955p-x3mx-jcvp | CVE-2026-64643 | medium | yes | |
| GHSA-c4j6-fc7j-m34r | CVE-2026-44578 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:N/A:N | yes |
| GHSA-ffhc-5mcf-pf4q | CVE-2026-44581 | medium | CVSS:3.1/AV:N/AC:H/PR:N/UI:R/S:C/C:L/I:L/A:N | yes |
| GHSA-gx5p-jg67-6x7h | CVE-2026-44580 | medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N | yes |
| GHSA-h64f-5h5j-jqjh | CVE-2026-44577 | medium | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:N/A:H | yes |
| GHSA-m99w-x7hq-7vfj | CVE-2026-64641 | high | yes | |
| GHSA-mg66-mrh9-m8jx | CVE-2026-44579 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes |
| GHSA-p293-qw3h-jr36 | CVE-2026-75604 | critical | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:H/I:H/A:H | yes |
| GHSA-p9j2-gv94-2wf4 | CVE-2026-64645 | high | yes | |
| GHSA-q4gf-8mx6-v5v3 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes | |
| GHSA-q8wf-6r8g-63ch | CVE-2026-64644 | medium | yes | |
| GHSA-vfv6-92ff-j949 | CVE-2026-44582 | low | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:N/I:L/A:N | yes |
| GHSA-wfc6-r584-vfw7 | CVE-2026-44576 | medium | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:L/A:L | yes |
| GHSA-2x7j-588g-ccc2 | CVE-2026-92596 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H | yes |
| GHSA-8m3c-c648-2xjj | CVE-2026-92595 | medium | CVSS:3.1/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:L/A:N | yes |
| GHSA-cc9r-2j5m-2m83 | CVE-2026-92597 | medium | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N | yes |
| GHSA-p6gq-j5cr-w38f | CVE-2026-82659 | high | CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N | yes |
| GHSA-wmmp-3585-3rmp | CVE-2026-92598 | medium | CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:L/A:N | yes |
| GHSA-6g55-p6wh-862q | CVE-2026-45623 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N | yes |
| GHSA-fxqj-rqcc-2cmp | CVE-2026-69153 | medium | yes | |
| GHSA-qx2v-qp2m-jg93 | CVE-2026-41305 | medium | CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N | yes |
| GHSA-r28c-9q8g-f849 | CVE-2026-73646 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N | yes |
| GHSA-f88m-g3jw-g9cj | high | yes | ||
| GHSA-rgj7-g3m4-5g8c | high | yes | ||
| GHSA-w5hq-g745-h8pq | CVE-2026-41907 | high | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:H/A:N | yes |
Background: What a vulnerability scan can and cannot prove →
Dependencies 336 packages
| Packages resolved | 336 |
|---|---|
| Deprecated | 7 |
| Stale | 107 |
| No linked repository | 2 |
| Tree resolution | Complete |
Background: SBOMs and build attestations, explained →
The tools this component advertises to a client, with an estimated token cost for each. Expand a tool to see its parameters and schema. The per-tool counts are indicative and are not scored directly; the schema's total context footprint is one signal in Schema Quality & AI Usability. A tool's description is untrusted text the model reads on every call, which is what makes this list a security surface and not just an inventory: how tool poisoning works →
analyze_resume_comprehensive ~249
Run a comprehensive algorithmic analysis on a resume in a single call. Accepts raw text or a file (base64-encoded PDF/DOCX/TXT/MD or URL). Runs the full 5-node pipeline (Ingestion → Sanitization → Tokenization → Classification → Serialization) and returns: pipeline confidence scores, classified entities by type, categorized skills with proficiency estimates, structured experience timeline, career analysis, contact info, metrics/achievements, section quality assessment, and data quality scores. Optionally matches against a job description. This is a one-call alternative to chaining parse_resume + inspect_pipeline + classify_entities + extract_skills_structured + extract_experience_structured + compute_similarity.
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | – | Base64-encoded file content or URL. Use with fileType. Ignored if resumeText is provided. |
| fileType | string | – | File type when using content parameter |
| jobDescription | string | – | Optional job description to compute similarity and skill gap analysis |
| requiredSkills | array | – | Optional required skills to check against |
| resumeText | string | – | Raw resume text. Provide either resumeText OR (content + fileType), not both. |
No output schema declared.
No examples provided.
assess_candidate ~356
Assess a resume against recruiter-defined criteria. Supports 8 criteria axes: Education, Experience, Skills, Certifications, Knowledge Stack, Competitions, Thresholds, and Job Qualification. Returns per-axis scores, weighted overall score, and a pass/review/reject decision.
| Name | Type | Req | Description |
|---|---|---|---|
| apiKey | string | – | API key for the AI provider |
| content | string | yes | Base64-encoded file content, or URL string when fileType is 'url', or plain resume text when fileType is 'txt' |
| criteria | object | yes | Assessment criteria object. Structure: { name: string, education: { enabled, weight, minimumDegreeLevel, preferredFields, targetUniversities, acceptAnyAccredited }, experience: { enabled, weigh… |
| fileType | string | yes | File type |
| model | string | – | Model name |
| provider | string | – | AI provider (openai, anthropic, google, deepseek, etc.) |
No output schema declared.
No examples provided.
ats_dashboard_stats ~73
Generate comprehensive ATS dashboard statistics and hiring health report. Provide the full ATS state (candidates, jobs, interviews, offers). Returns key metrics, pipeline health, hiring velocity, and actionable insights.
| Name | Type | Req | Description |
|---|---|---|---|
| state | object | yes | ATS state object with candidates, jobs, interviews, and offers records (each keyed by ID). |
No output schema declared.
No examples provided.
ats_generate_demo_data ~83
Generate a full set of realistic demo data for the ATS (Applicant Tracking System). Returns a complete ATSState with sample jobs, candidates at various pipeline stages, scheduled interviews, and offers. Useful for testing, demonstrations, or populating an empty ATS instance.
| Name | Type | Req | Description |
|---|---|---|---|
| includeStats | boolean | – | If true, include summary statistics alongside the generated data. Default: false. |
No output schema declared.
No examples provided.
ats_interview_feedback ~146
Manage interview feedback in the ATS. Actions: submit (add feedback to completed interview), get (retrieve feedback for an interview), update (modify existing feedback), list_pending (interviews awaiting feedback), list_completed (interviews with feedback, optionally filtered by candidate), analyze (aggregate feedback for a candidate across all interviews), summary (hiring signal summary for a job or all jobs).
| Name | Type | Req | Description |
|---|---|---|---|
| action | object | yes | Action to perform. "type": "submit" | "get" | "update" | "list_pending" | "list_completed" | "analyze" | "summary". |
| interviews | object | yes | Current interviews record: Record<id, interviewObject>. |
No output schema declared.
No examples provided.
ats_manage_candidates ~205
Manage candidates in the ATS pipeline. Supports add, update, delete, move between stages, bulk move, and list/filter operations. Pass the current candidates record and an action to perform. Returns the updated candidates and a summary.
| Name | Type | Req | Description |
|---|---|---|---|
| action | object | yes | Action to perform. Types: - { type: "add", candidate: { firstName, lastName, email, phone?, jobId, currentStage?, tags?, source? } } - { type: "update", candidateId: string, fields: { partial candida… |
| candidates | object | yes | Current candidates record (id → candidate object). Pass {} for a fresh start. |
No output schema declared.
No examples provided.
ats_manage_jobs ~136
Manage job postings in the ATS. Actions: create (new job posting), update (edit fields), delete, list (with optional status/department filter), search (by keyword in title/description), close, reopen. Pass current jobs record and an action.
| Name | Type | Req | Description |
|---|---|---|---|
| action | object | yes | Action to perform. Must include "type" field: "create" | "update" | "delete" | "list" | "search" | "close" | "reopen". See tool description for per-action fields. |
| jobs | object | yes | Current jobs record: Record<id, jobObject>. Pass {} for empty. |
No output schema declared.
No examples provided.
ats_manage_notes ~127
Manage candidate notes in the ATS. Actions: add (create note on candidate), update (edit note content), list (get all notes for a candidate), delete (remove a note), search (find notes by keyword across one or all candidates), bulk_add (add notes to multiple candidates). Pass the current candidates record.
| Name | Type | Req | Description |
|---|---|---|---|
| action | object | yes | Action to perform. "type": "add" | "update" | "list" | "delete" | "search" | "bulk_add". |
| candidates | object | yes | Current candidates record: Record<id, candidateObject>. |
No output schema declared.
No examples provided.
ats_manage_offers ~259
Manage offers in the ATS. Actions: create (validate & structure), update_status (draft→pending-approval→approved→sent→accepted/declined), delete (remove offer), list (all offers with optional filters), compare (side-by-side offer comparison), validate (check for issues). Returns structured offer data.
| Name | Type | Req | Description |
|---|---|---|---|
| action | object | yes | Action to perform: - { type: "create", offer: { candidateId, candidateName, jobId, jobTitle, salary: { base, currency, period, bonus?, equity? }, benefits?, startDate, expirationDate, notes? } } - {… |
| existingOffers | object | – | Current offers record (id → offer object). Pass {} for a fresh start. |
No output schema declared.
No examples provided.
ats_pipeline_analytics ~138
Analyze the ATS hiring pipeline. Given candidates and optional pipeline stage config, returns stage distribution, conversion rates between stages, average time-in-stage, and bottleneck identification. Useful for hiring funnel analysis.
| Name | Type | Req | Description |
|---|---|---|---|
| candidates | array | yes | Array of candidate objects, each with id, currentStage, jobId, createdAt, updatedAt, and optionally activities[]. |
| jobId | string | – | Optional: filter analytics to a specific job ID. |
| stageOrder | array | – | Ordered array of stage names. Defaults to: ["applied","screening","phone-screen","interview","final-round","offer","hired","rejected"] |
No output schema declared.
No examples provided.
ats_schedule_interview ~199
Full CRUD for interviews. Actions: create (validate & schedule with conflict detection), update (reschedule/modify), delete (permanent removal), list (filter by candidateId/jobId/status), get (single interview by id). Pass existing interviews record for conflict checks.
| Name | Type | Req | Description |
|---|---|---|---|
| action | object | yes | Action to perform: - { type: "create", interview: { candidateId, candidateName, jobId, jobTitle, type, scheduledDate, durationMinutes, interviewers, location?, meetingLink?, notes? } } - { type: "upd… |
| existingInterviews | object | – | Current interviews record: Record<id, interviewObject>. Pass {} for fresh start. |
No output schema declared.
No examples provided.
ats_search ~155
Global search across the ATS. Actions: search (keyword search across candidates, jobs, interviews, offers — scoped optionally), filter_candidates (structured filter by stage/job/tags/score), get_entity (retrieve a single entity by type+id). Pass the full ATS state.
| Name | Type | Req | Description |
|---|---|---|---|
| action | object | yes | Action: "search" (query, scope?, limit?), "filter_candidates" (filters: {stage?, jobId?, tags?, minScore?}), "get_entity" (entityType, entityId). |
| state | object | yes | Full ATS state: { candidates: Record<id, obj>, jobs: Record<id, obj>, interviews: Record<id, obj>, offers: Record<id, obj> } |
No output schema declared.
No examples provided.
batch_parse_resumes ~67
Parse multiple resume files at once and run the full algorithmic pipeline on each. Returns raw text, pipeline analysis, keywords, entities, and confidence scores for each file. The LLM client should interpret and structure the results.
| Name | Type | Req | Description |
|---|---|---|---|
| files | array | yes | Array of files to parse |
No output schema declared.
No examples provided.
classify_entities ~182
Run Named Entity Recognition on resume text. Extracts 12 entity types (PERSON, ORGANIZATION, DATE, SKILL, LOCATION, EMAIL, PHONE, URL, EDUCATION_DEGREE, CERTIFICATION, JOB_TITLE, METRIC) with per-entity confidence scores (0-1) and domain-aware disambiguation (e.g., Java the language vs Java the island). Returns classified entities grouped by type, confidence statistics, and ambiguity analysis. 100% algorithmic — no AI calls needed.
| Name | Type | Req | Description |
|---|---|---|---|
| entityTypes | array | – | Filter to specific entity types (e.g., ['SKILL', 'JOB_TITLE']). Default: all types. |
| minConfidence | number | – | Minimum confidence threshold (0-1) to include an entity. Default: 0 (all entities). |
| resumeText | string | yes | The raw text content of a resume |
No output schema declared.
No examples provided.
compute_similarity ~100
Compare a resume against a job description using cosine similarity, Jaccard index, TF-IDF overlap, and skill matching. Returns a computed fit tier (strong/moderate/weak/poor), per-skill gap analysis with categories, and actionable gap recommendations. No AI calls — all scoring is algorithmic.
| Name | Type | Req | Description |
|---|---|---|---|
| jobDescription | string | yes | The job description to match against |
| resumeText | string | yes | The raw text content of a resume |
No output schema declared.
No examples provided.
detect_patterns ~78
Detect and structure date ranges, metrics, sections, and work experience from resume text. Returns structured experience entries with titles, organizations, technologies, and achievements extracted algorithmically using NER, date patterns, and TF-IDF. Also detects career progression trajectory. No AI calls.
| Name | Type | Req | Description |
|---|---|---|---|
| resumeText | string | yes | The raw text content of a resume |
No output schema declared.
No examples provided.
export_results ~66
Export parsed resume results to a specified format (JSON or CSV text). Accepts an array of structured resume results and returns formatted output.
| Name | Type | Req | Description |
|---|---|---|---|
| format | string | yes | Export format: json or csv |
| results | array | yes | Array of parsed resume results with fileName and structured data |
No output schema declared.
No examples provided.
extract_experience_structured ~104
Extract and structure work experience from resume text using algorithmic analysis only (no AI). Uses date range detection, metric extraction, NER entity classification (job titles, organizations, skills), and heuristic block splitting to produce structured experience entries. Each entry includes detected title, organization, date range, duration estimate, associated metrics/achievements, and technologies. Returns structured data plus overall career statistics.
| Name | Type | Req | Description |
|---|---|---|---|
| resumeText | string | yes | The raw text content of a resume |
No output schema declared.
No examples provided.
extract_keywords ~90
Extract keywords from resume text using TF-IDF analysis, then overlay entity classification (NER) and skill categorization. Returns ranked keywords enriched with entity type, skill category, and confidence scores. No AI calls — all computation is algorithmic.
| Name | Type | Req | Description |
|---|---|---|---|
| resumeText | string | yes | The raw text content of a resume |
| topN | number | – | Number of top keywords to return (default: 40) |
No output schema declared.
No examples provided.
extract_skills_structured ~164
Extract and categorize skills from resume text using algorithmic analysis only (no AI). Combines NER entity classification (with disambiguation), TF-IDF keyword ranking, section detection, and frequency-based proficiency estimation. Returns skills organized by 13 categories (programming_language, framework, database, devops_cloud, ml_ai, design, methodology, tool, soft_skill, testing, security, web_frontend, mobile, other) with estimated proficiency levels and supporting evidence. Far more structured than extract_keywords — use this when you need categorized, proficiency-rated skill output.
| Name | Type | Req | Description |
|---|---|---|---|
| requiredSkills | array | – | Optional list of skills to specifically check for (returns match/miss status for each) |
| resumeText | string | yes | The raw text content of a resume |
No output schema declared.
No examples provided.
inspect_pipeline ~91
Run the full 5-node atomic deconstruction pipeline (Ingestion → Sanitization → Tokenization → Classification → Serialization) on resume text. Returns stage-by-stage metrics, confidence scores, entity classification with disambiguation, data quality assessment, and assumption audit. Use this to understand HOW the parser processes a resume and WHERE confidence is low.
| Name | Type | Req | Description |
|---|---|---|---|
| resumeText | string | yes | The raw text content of a resume |
No output schema declared.
No examples provided.
manage_candidates ~160
Manage and analyze candidates: rank by fit, filter by criteria, recommend pipeline stage changes, compare candidates side-by-side, or get a summary. Operates on candidate data passed in — does not access browser storage.
| Name | Type | Req | Description |
|---|---|---|---|
| action | string | yes | Action: rank (sort by fit), filter (by criteria), recommend_stage (suggest stage moves), compare (side-by-side), summarize (overview stats) |
| candidates | array | yes | Array of candidate objects with id, firstName, lastName, email, currentStage, tags, resumeData, assessmentResult |
| criteria | object | – | Filter/rank criteria: requiredSkills, minimumRating, stages, tags, sortBy, limit |
| jobDescription | string | – | Optional job description for relevance ranking |
No output schema declared.
No examples provided.
parse_resume ~92
Parse a resume file (PDF, DOCX, TXT, MD) or URL and extract text with algorithmic pre-analysis including keyword extraction, metrics detection, section identification, and experience estimation.
| Name | Type | Req | Description |
|---|---|---|---|
| content | string | yes | Base64-encoded file content, or a URL string when fileType is 'url' |
| fileType | string | yes | File type: pdf, docx, txt, md, or url |
No output schema declared.
No examples provided.
send_email ~140
Send parsed resume results via email using SMTP. Requires SMTP configuration (host, port, user, pass) and recipient email. Sends an HTML summary of all results.
| Name | Type | Req | Description |
|---|---|---|---|
| results | array | yes | Array of resume results to include |
| smtpHost | string | yes | SMTP server host |
| smtpPass | string | yes | SMTP password or app password |
| smtpPort | number | – | SMTP server port (default: 587) |
| smtpSecure | boolean | – | Use TLS (default: false) |
| smtpUser | string | yes | SMTP username/email |
| subject | string | – | Email subject (optional) |
| to | string | yes | Recipient email address |
No output schema declared.
No examples provided.
What is the io.github.XJTLUmedia/ai-hr-management-toolkit MCP server?
io.github.XJTLUmedia/ai-hr-management-toolkit is an MCP server listed in the public MCP registry as io.github.XJTLUmedia/ai-hr-management-toolkit. AI HR toolkit: 24 MCP tools for resume parsing, skill extraction & ATS management. This page covers its npm package (mcp-ai-hr-management-toolkit).
What tools does the io.github.XJTLUmedia/ai-hr-management-toolkit MCP server expose?
io.github.XJTLUmedia/ai-hr-management-toolkit exposes 24 tools: parse_resume, inspect_pipeline, extract_keywords, detect_patterns, compute_similarity, and 19 more. Their descriptions and schemas cost roughly 3,460 tokens of context every time the server is loaded.
Is the io.github.XJTLUmedia/ai-hr-management-toolkit MCP server still maintained?
io.github.XJTLUmedia/ai-hr-management-toolkit is still listed as active in the MCP registry. We last reached this channel on 20 September 2026. Those dates come from our own scans of the registry and the channel itself, not from anything the publisher announced.
What licence is the io.github.XJTLUmedia/ai-hr-management-toolkit MCP server under?
io.github.XJTLUmedia/ai-hr-management-toolkit declares the MIT licence, which is OSI-approved. That covers the source only, and says nothing about the cost of any service it calls.