Ai Hr Management Toolkit について
Ai Hr Management Toolkitは、履歴書分析と応募者管理のためのMCPサーバー兼Webアプリです。解析、候補者評価、採用パイプライン管理など21のツールを備え、その多くはLLMを呼び出さずにアルゴリズムで動作します。
主な機能
- 01PDF、DOCX、TXT、Markdown、URLの解析
- 02スキル、職歴、エンティティの抽出
- 03求人要件に基づく候補者の評価と順位付け
- 04求人、候補者、面接、オファーの管理
- 05採用分析とコンプライアンス情報の確認
- 06結果のJSONまたはCSV形式での出力
活用シーン
- 01複数の履歴書を選考し候補者情報を構造化
- 02求人要件に照らした応募者の比較
- 03面接、オファー、候補者ステージの追跡
- 04採用パイプライン指標の確認
MCP 対応
stdioまたはStreamable HTTP経由で、履歴書解析、候補者評価、ATS操作など21のツールをMCPクライアントに提供します。多くのツールはアルゴリズムで動作し、候補者評価では任意でLLMを利用できます。
設定
ローカルサーバーの設定はどのクライアントでも共通です。コピーしてクライアントの MCP 設定ファイルに貼り付けてください。
ツール
22掲載時のツール一覧 · 3 週間前に更新
| パラメーター | 型 | 必須 | 説明 |
|---|---|---|---|
| content | string | はい | Base64 エンコードされたファイルの内容。fileType が 'url' の場合は URL 文字列です。 |
| fileType | enum | はい | ファイルタイプ:pdf、docx、txt、md、または urlpdf | docx | txt | md | url |
詳細
AI HR Management Toolkit
AI を活用した履歴書パーサーと、21 個の MCP ツールを備えた完全な応募者追跡システムです。PDF の解析、スキルの抽出、パターンの検出、候補者のスコアリングを行い、採用パイプライン全体を管理できます。すべて AI アシスタントから操作でき、手作業は不要です。
ライブデモ: https://ai-hr-management-toolkit.vercel.app
これは何ですか?
選考対象の履歴書が 50 件あります。AI アシスタントは候補者について推論できますが、PDF を開いたり、構造化データを抽出したり、採用パイプラインの各段階を追跡したりすることはできません。このツールキットがそのギャップを埋めます。
採用ワークフロー全体をカバーする 21 個のツールを AI アシスタントに提供します。
- PDF、DOCX、TXT、Markdown、URL を構造化された JSON に解析します
- スキル、経験、キーワード、エンティティをアルゴリズムで抽出します
- 求人票に照らして候補者をスコアリングし、順位付けします
- 求人、候補者、面接、オファー、メモ、分析機能を備えた完全な ATS を実行します
21 個中 20 個のツールは 100%アルゴリズムベースで、LLM の呼び出しも API キーも不要です。AI がツールを呼び出して結果を解釈し、分析を提供します。質問するだけで利用できます。
クイックスタート(MCP クライアント)
インストールは不要です。MCP クライアントをパッケージに接続します。
Claude Desktop — %APPDATA%\Claude\claude_desktop_config.json(Windows)または ~/Library/Application Support/Claude/claude_desktop_config.json(macOS)を編集します。
{
"mcpServers": {
"ai-hr-management-toolkit": {
"command": "npx",
"args": ["-y", "mcp-ai-hr-management-toolkit"]
}
}
}
使用例:
Cursor — プロジェクトのルートにある .cursor/mcp.json に追加します。
{
"mcpServers": {
"ai-hr-management-toolkit": {
"command": "npx",
"args": ["-y", "mcp-ai-hr-management-toolkit"]
}
}
}
VS Code Copilot — プロジェクトのルートに .vscode/mcp.json を作成します。
{
"servers": {
"ai-hr-management-toolkit": {
"command": "npx",
"args": ["-y", "mcp-ai-hr-management-toolkit"]
}
}
}
VS Code ユーザーの方へ:
package.jsonを含むディレクトリ(つまり、任意のプロジェクトルート)からnpxコマンドを実行してください。必要に応じて、.vscode/mcp.jsonのcwdキーで作業ディレクトリを上書きできます。
Windsurf/その他の MCP クライアント — 上記と同じ npx の方法を使用します。
インストール方法
オプション 1:NPX(インストール不要、推奨)
任意のプロジェクトディレクトリで動作します(作業ディレクトリに package.json が必要です)。
{
"mcpServers": {
"ai-hr-management-toolkit": {
"command": "npx",
"args": ["-y", "mcp-ai-hr-management-toolkit"]
}
}
}
オプション 2:グローバルインストール
一度インストールすれば、どのディレクトリからでも使用できます。
npm install -g mcp-ai-hr-management-toolkit
{
"mcpServers": {
"ai-hr-management-toolkit": {
"command": "mcp-ai-hr-management-toolkit",
"args": []
}
}
}
オプション 3:リモート HTTP エンドポイント
Next.js アプリをデプロイし、Streamable HTTP トランスポートを使用します。
https://your-domain.com/api/mcp
ローカルでテストします。
npx @modelcontextprotocol/inspector http://localhost:3000/api/mcp
オプション 4:ローカル開発(Web UI + MCP)
git clone <repo-url>
cd Resume-parser
npm install
npm run dev
Web UI は http://localhost:3000 です。MCP エンドポイントは http://localhost:3000/api/mcp です。.env は不要です。UI で API キーを設定するか、ツール呼び出しごとに渡してください。
MCP ツール 21 種
すべてのツールは、AI が次に呼び出すツールを判断できるように、next_steps のヒントを含む構造化 JSON を返します。
履歴書の解析と取り込み
| ツール | 機能 | AI? |
|---|---|---|
parse_resume | PDF/DOCX/TXT/MD/URL を解析 → 生テキスト、連絡先、キーワード、セクションマップ | いいえ |
batch_parse_resumes | 1 回の呼び出しで最大 20 個のファイルを解析し、それぞれに完全なパイプラインを実行 | いいえ |
inspect_pipeline | 5 段階の分析パイプラインを実行 → 信頼度スコア、エンティティ数、データ品質レポート | いいえ |
統合分析
| ツール | 内容 | AI? |
|---|---|---|
analyze_resume | 分析項目を選択できる統合分析ツールです。keywords(TF-IDF + バイグラム)、patterns(日付範囲、指標、チーム規模、キャリアの推移)、entities(12 種類 + 文脈による曖昧性の解消を用いた NER)、skills(熟練度の推定を含む 13 カテゴリ)、experience(構造化された経歴)、similarity(職務内容とのコサイン類似度、Jaccard 係数、TF-IDF の重複度)、または all を選択できます | いいえ |
analyze_resumeは、以前は個別に提供されていた 7 つのツール(extract_keywords、detect_patterns、classify_entities、extract_skills_structured、extract_experience_structured、compute_similarity、analyze_resume_comprehensive)を、分析項目を選択できる単一のエントリーポイントに統合します。
候補者のマッチングとスコアリング
| ツール | 内容 | AI? |
|---|---|---|
assess_candidate | 最大 8 つの重み付けされた評価軸に基づいてスコアを算出し、重み付け合計と合格/要確認/不採用の判定を返します | 任意 |
エクスポートと通知
| ツール | 内容 | AI? |
|---|---|---|
export_results | 構造化された解析結果を JSON または CSV にエクスポートします | いいえ |
send_email | SMTP 経由で結果を送信します(設定は呼び出しごとに渡すため、サーバー側にシークレットは保存されません) | いいえ |
ATS — 求人
| ツール | 内容 | AI? |
|---|---|---|
ats_manage_jobs | 求人情報の CRUD 一式(作成、取得、更新、削除、一覧表示、役職/部門/ステータスによる検索)を実行します | いいえ |
ATS — 候補者と採用パイプライン
| ツール | 内容 | AI? |
|---|---|---|
ats_manage_candidates | CRUD と分析機能(追加、更新、ステージ変更、一括移動、絞り込み、順位付け、比較、ステージ変更の提案、要約)を提供します | いいえ |
ats_analytics | 統合ダッシュボードと採用パイプライン分析(ステージ分布、転換率、ステージごとの平均所要時間、ボトルネック検出、内定承諾率)を提供します | いいえ |
ats_search | ATS のすべてのエンティティ(候補者、求人、面接、内定、メモ)を対象に、全文を横断検索します | いいえ |
ATS — 面接
| ツール | 内容 | AI? |
|---|---|---|
ats_schedule_interview | 面接の作成、更新、削除を行います。競合を検出し、面接担当者の空き状況を確認します | いいえ |
ats_interview_feedback | 構造化されたフィードバックを送信し、合意スコアを算出して、すべての面接担当者のフィードバックを要約します | いいえ |
ATS — 内定とメモ
| ツール | 内容 | AI? |
|---|---|---|
ats_manage_offers | 内定のライフサイクル全体(草案 → 保留 → 承認済み → 送信済み → 承諾/辞退/期限切れ)を管理します | いいえ |
ats_manage_notes | タイムスタンプ付きの候補者メモを追加、更新、検索、削除します | いいえ |
ATS — エンタープライズ人事
| ツール | 内容 | AI? |
|---|---|---|
ats_compliance | EEO/EEOC レポート、GDPR に基づくエクスポート/消去、監査証跡、データ保持ポリシーに対応します | いいえ |
ats_talent_pool | 転職活動中ではない候補者の人材プール(CRM)を管理します。プールの作成、候補者の追加/削除、検索、分析に対応します | いいえ |
ats_scorecard | 重み付けされた評価基準、評価者ごとのスコア、総合順位を含む、構造化された面接評価表を提供します | いいえ |
ats_onboarding | 採用後のオンボーディングチェックリストを管理します。カテゴリ別のタスク、担当者、進捗状況の追跡、期限超過アラートに対応します | いいえ |
ats_communication | {{variable}} の補間に対応したメールテンプレート、送信/プレビュー、コミュニケーション履歴、統計を提供します | いいえ |
テストとデータ投入
| ツール | 内容 | AI? |
|---|---|---|
ats_generate_demo_data | テスト用の現実的な ATS サンプルデータセット(求人、候補者、面接、内定)を生成します | いいえ |
assess_candidateは、provider+apiKeyを指定すると、任意で LLM を呼び出します。指定がない場合は、アルゴリズムのみを使用したスコアリングにフォールバックします。
複数ターンのフロー例
You: "Parse this resume and tell me if they're a good fit for our Senior Engineer role"
AI → parse_resume(file)
→ raw text, contact info, section map
AI → inspect_pipeline(rawText)
→ 5-stage confidence scores, entity classification
AI → analyze_resume(text, aspects=["skills", "patterns", "similarity"], jobDescription=...)
→ 13 skill categories with proficiency levels
→ career trajectory, metrics, date ranges
→ cosine 0.74, skill match 82%, gap analysis
AI synthesizes → "Strong match. 6 of 8 required skills present.
Two gaps: Kubernetes and system design at scale.
Recommend: Technical Screen"
分析パイプライン
すべての履歴書は、5 段階のアルゴリズムパイプラインで処理されます。
┌─────────────┐ ┌──────────────┐ ┌──────────────┐ ┌────────────────┐ ┌───────────────┐
│ Ingestion │───▶│ Sanitization │───▶│ Tokenization │───▶│ Classification │───▶│ Serialization │
│ (file/URL) │ │ (noise trim) │ │ (TF-IDF) │ │ (NER + disamb) │ │ (structured) │
└─────────────┘ └──────────────┘ └──────────────┘ └────────────────┘ └───────────────┘
- 取り込み — PDF は pdf-parse v2、DOCX は mammoth、HTML/URL は cheerio、プレーンテキスト/Markdown はネイティブに処理します
- サニタイズ — ASCII 以外の文字を除去し、空白を正規化して、書式のノイズを取り除きます
- トークン化 — 単語の n-gram、2 語の n-gram、3 語の n-gram を用いた TF-IDF を使用し、文書頻度に基づいてスコアを付けます
- 分類 — ドメインを考慮した曖昧性解消を伴う NER(例:「Java」をプログラミング言語とインドネシアの都市に、「Go」をプログラミング言語と動詞に区別します)
- シリアライズ — エンティティを信頼度スコアとデータ品質指標を含む型付きの
ResumeSchemaにマッピングします
サポート対象のファイル形式
| 形式 | 拡張子 | パーサー |
|---|---|---|
.pdf | pdf-parse v2 | |
| DOCX | .docx | mammoth |
| プレーンテキスト | .txt | 直接読み込み |
| Markdown | .md、.markdown | 正規表現ベース |
| URL / HTML | 任意の URL 文字列 | cheerio |
ファイルサイズの上限:10 MB
構造化出力スキーマ
contact — name, email, phone, location, LinkedIn, GitHub, website, portfolio
summary — professional summary text
skills[] — name, category (13 types), proficiency, usage context
experience[] — company, title, start/end dates, highlights, achievements (with metrics), technologies
education[] — institution, degree, field, dates, GPA
certifications[] — name, issuer, date, credential URL
projects[] — name, description, URL, technologies, highlights
languages[] — spoken language and proficiency
Web UI
アプリには、フル機能の Web インターフェースが付属しています。
| タブ | 説明 |
|---|---|
| 単一解析 | ファイルを 1 つアップロードするか、URL を貼り付けます。構造化データ、パイプラインの可視化、AI による分析結果を返します |
| 一括解析 | 最大 20 個のファイルをアップロードします。JSON / CSV / PDF にエクスポートするか、結果をメールで送信できます |
| チャット | ツールにアクセスできる会話型インターフェースです。解析した任意の履歴書について質問できます |
| ATS | ジョブ、候補者(カンバン)、面接、オファー、分析ダッシュボードを備えたフル機能のパイプラインボードです |
上部のセレクターから AI プロバイダーを切り替えられます。OpenAI、Anthropic、Google、DeepSeek、GLM、Qwen、OpenRouter、OpenCode Zen に対応しています。
REST API エンドポイント
すべてのエンドポイントは、任意のヘッダーを指定した multipart/form-data を受け付けます。
| ヘッダー | 説明 |
|---|---|
x-api-key | ご利用の AI プロバイダーの API キー |
x-ai-provider | openai / anthropic / google / deepseek / glm / qwen / openrouter / opencodezen |
x-ai-model | 特定のモデル ID |
# Parse a single resume
curl -X POST http://localhost:3000/api/parse \
-H "x-api-key: sk-..." \
-F "[email protected]"
# Batch parse (up to 20 files)
curl -X POST http://localhost:3000/api/batch-parse \
-H "x-api-key: sk-..." \
-F "[email protected]" \
-F "[email protected]"
# MCP endpoint (Streamable HTTP)
curl -X POST http://localhost:3000/api/mcp \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"tools/list","id":1}'
# Export parsed data
curl -X POST http://localhost:3000/api/export \
-H "Content-Type: application/json" \
-d '{"format":"csv","results":[...]}'
技術スタック
| レイヤー | 技術 |
|---|---|
| フレームワーク | Next.js 16(App Router、Turbopack)、React 19、TypeScript |
| AI | Vercel AI SDK v6、複数プロバイダー対応(OpenAI、Anthropic、Google、DeepSeek、GLM、Qwen、OpenRouter) |
| MCP | @modelcontextprotocol/sdk v1.29 — Streamable HTTP + stdio トランスポート |
| 解析 | pdf-parse v2、mammoth、cheerio |
| NLP | TF-IDF、NER、コサイン類似度、Jaccard 係数(すべてプロセス内で処理し、外部サービスは不要) |
| スキーマ | Zod v4 |
| エクスポート | ExcelJS(CSV/XLSX)、jsPDF + jspdf-autotable |
| メール | Nodemailer |
| スタイリング | Tailwind CSS v4、Framer Motion |
開発
npm install
# Start dev server (Web UI at :3000 + MCP at /api/mcp)
npm run dev
# Build the standalone MCP CLI (stdio transport)
npm run build:mcp
# Build the Next.js app for production
npm run build
# Test MCP with the official inspector
npx @modelcontextprotocol/inspector http://localhost:3000/api/mcp
npx @modelcontextprotocol/inspector node dist/mcp-stdio.js
# Lint
npm run lint
プロジェクト構成
src/
├── app/
│ ├── page.tsx # Main UI (tabs, provider selector, chat, ATS)
│ ├── layout.tsx # Root layout + global styles
│ └── api/
│ ├── parse/route.ts # Single resume parse
│ ├── batch-parse/route.ts
│ ├── chat/route.ts # Conversational AI with tool access
│ ├── mcp/route.ts # MCP server (Streamable HTTP)
│ ├── models/route.ts # Provider model listing
│ ├── export/route.ts # JSON / CSV / PDF export
│ └── email/route.ts # SMTP email
├── components/ # React UI components (parse, batch, chat, ATS)
│ └── ats/ # ATS-specific views (Kanban, Dashboard, Scheduler…)
└── lib/
├── ai-model.ts # Multi-provider model config (no env fallback)
├── mcp-server.ts # MCP server — registers all 21 tools
├── schemas/
│ ├── resume.ts # Zod v4 ResumeSchema
│ └── criteria.ts # Assessment criteria schema
├── analysis/
│ ├── pipeline.ts # 5-stage pipeline orchestrator
│ ├── sanitizer.ts # Text cleaning
│ ├── keyword-extractor.ts # TF-IDF
│ ├── classifier.ts # NER with context disambiguation
│ ├── pattern-matcher.ts # Regex extraction (metrics, dates, contacts)
│ └── scoring.ts # Cosine similarity, Jaccard, skill matching
├── parser/
│ ├── pdf.ts, docx.ts, text.ts, markdown.ts, url.ts
│ └── index.ts
├── ats/
│ ├── types.ts # ATS entity types
│ ├── store.ts # In-memory ATS state
│ ├── demo-data.ts # Realistic seed data generator
│ └── context.tsx # React context for ATS state
└── tools/
├── parse-resume.ts # parse_resume
├── inspect-pipeline.ts # inspect_pipeline
├── export-results.ts # export_results
├── send-email.ts # send_email
└── mcp/ # 17 MCP-specific tools
├── analyze-resume.ts # analyze_resume (unified: keywords, patterns, entities, skills, experience, similarity)
├── batch-parse.ts # batch_parse_resumes
├── assess-candidate.ts # assess_candidate
├── ats-manage-candidates.ts # ats_manage_candidates (includes rank/filter/compare/summarize)
├── ats-manage-jobs.ts
├── ats-manage-offers.ts
├── ats-manage-notes.ts
├── ats-analytics.ts # ats_analytics (unified dashboard + pipeline)
├── ats-schedule-interview.ts
├── ats-interview-feedback.ts
├── ats-search.ts
├── ats-generate-demo-data.ts
├── ats-compliance.ts # Enterprise: EEO / GDPR / audit
├── ats-talent-pool.ts # Enterprise: passive candidate CRM
├── ats-scorecard.ts # Enterprise: structured scorecards
├── ats-onboarding.ts # Enterprise: onboarding checklists
└── ats-communication.ts # Enterprise: email templates & history
ライセンス
コメント
AI アプリケーションが外部のツールやデータソースに統一的な方法で接続するためのオープンなプロトコルです。クライアントはモデルとの対話を担い、MCP サーバーはツール・リソース・プロンプトテンプレートを提供します。標準メッセージでやり取りするため、1 つのサーバーを複数のクライアントで再利用できます。