Skip to main content
Glama
sjungwon03

job-platform-mcp

by sjungwon03

Job Platform MCP Monorepo

这是一个 TypeScript monorepo,将 Wanted、사람인、잡코리아 招聘 API 分别作为独立的 MCP 服务器提供,并同时提供基于简历·作品集寻找定制招聘公告的 Agent Skill。

本文档是基准文档,无论是由人工直接配置,还是由 Codex、Claude Code、OpenCode、OpenClaw 等智能体代为配置,均可使用。

功能一览

平台

MCP 工具

认证方式

wanted-mcp

Wanted OpenAPI

wanted_list_jobs

用户申请获得的 Client ID 与 Client Secret

saramin-mcp

사람인 招聘信息 API

saramin_search_jobs, saramin_get_job

用户申请获得的 access-key

jobkorea-mcp

잡코리아 招聘信息 API

jobkorea_fetch_jobs, jobkorea_fetch_entry_jobs

审批后为用户颁发的专属调用 URL

job-match-search 技能执行以下操作:

  • 分析用户提供的简历、CV、工作经历描述、作品集

  • 提取目标职位、工作年限、技术、领域和偏好条件

  • 若缺少地区或详细条件,则在搜索前一次性提问

  • 若用户跳过条件输入,则不受地区、用工形式限制进行搜索

  • 同时查询已连接的 Wanted、사람인、잡코리아 MCP

  • 去除重复公告并基于依据评估匹配度

  • 提供排名靠前公告的匹配依据、缺失要求及原文链接

Related MCP server: RecruitData

设计原则

  • 三个 MCP 以独立的 stdio 进程运行。

  • 各平台的认证信息与 API 客户端互不共享。

  • 使用每个用户自行申请获得的 API 权限。

  • 仅当用户账户具有相应权限时才调用付费功能。

  • 不向招聘 API 发送简历原文和个人信息。

  • 仅将搜索所需的职位名称、技术、工作年限、地区等最小派生条件传递给 API。

  • 未经用户确认,不执行提交申请、创建账户、联系负责人或支付等操作。

环境要求

  • Node.js 22 及以上

  • pnpm 11 及以上

  • Git

  • 所用招聘平台的 API 认证信息

检查版本。

node --version
pnpm --version
git --version

快速开始

1. 获取仓库

git clone https://github.com/sjungwon03/job-platform-mcp.git
cd job-platform-mcp

如果尚未克隆远程仓库、正在本地处理,请从当前仓库根目录开始执行以下步骤。

2. 安装依赖并构建

pnpm install
pnpm build

若要验证整体状态:

pnpm verify

验证包括 lint、TypeScript 类型检查、安全存储测试、MCP 测试和生产构建。

3. 准备 API 认证信息

只需配置所需平台即可,无需同时使用三个平台。

Wanted

申请:https://openapi.wanted.jobs/apply/

环境变量

必需

说明

WANTED_CLIENT_ID

用户申请获得的 Client ID

WANTED_CLIENT_SECRET

用户申请获得的 Client Secret

WANTED_AUTHORIZATION

单独权限或付费功能所需的 Authorization 值

本项目不代为支付 API 费用,也不提供公共密钥。使用付费功能时,由该 MCP 用户通过自己的 Wanted 账户管理权限和支付。

사람인

申请:https://oapi.saramin.co.kr/

环境变量

必需

说明

SARAMIN_ACCESS_KEY

用户申请获得的 access-key

잡코리아

指南:https://www.jobkorea.co.kr/service/api

잡코리아 会在使用审批和请求 IP 注册完成后提供专属调用 URL。

环境变量

必需

说明

JOBKOREA_JOBS_API_URL

条件性

用于一般招聘信息的颁发 URL

JOBKOREA_ENTRY_API_URL

条件性

用于新人·实习生公开招聘的颁发 URL

两个 URL 中至少需要提供一个。颁发 URL 的完整内容应视为机密信息。

4. 安全输入认证信息

请勿将认证信息直接放入聊天、README、Git 跟踪文件或 MCP 配置 JSON 中。

在仓库根目录运行安全配置器。

node skills/job-match-search/scripts/configure-credentials.mjs

配置器按以下顺序运行:

  1. 选择要配置的平台。

  2. 输入认证值时以星号掩码显示。

  3. 默认保存到用户设置目录下的 job-platform-mcp/credentials.json。

  4. 在 Linux、macOS、WSL 上将文件权限限制为 0600。

  5. 拒绝仓库内部路径、符号链接以及其他用户可读取的文件。

  6. 不重复输出值,仅显示各平台是否已配置。

默认保存位置:

~/.config/job-platform-mcp/credentials.json

若要使用其他绝对路径,请在配置器和 MCP 宿主两侧将 JOB_MATCH_CREDENTIALS_FILE 设置为相同值。不能使用仓库内部路径。

检查配置状态:

node skills/job-match-search/scripts/configure-credentials.mjs --check

输出中不包含实际值。

Wanted: 설정됨
사람인: 설정됨
잡코리아: 미설정

该文件是受 OS 文件权限保护的本地 JSON,并非自加密文件。在原生 Windows 环境中,建议使用智能体或 MCP 宿主提供的 OS 密钥存储(secret store)。

5. 在 MCP 宿主中注册服务器

不将认证信息直接复制到 MCP 配置中,而是注册公共运行器 run-mcp.mjs

首先构建全部包。

pnpm build

将下面的 absolute-path 替换为仓库的实际绝对路径。

{
  "mcpServers": {
    "wanted": {
      "command": "node",
      "args": [
        "/absolute-path/job-platform-mcp/skills/job-match-search/scripts/run-mcp.mjs",
        "wanted"
      ]
    },
    "saramin": {
      "command": "node",
      "args": [
        "/absolute-path/job-platform-mcp/skills/job-match-search/scripts/run-mcp.mjs",
        "saramin"
      ]
    },
    "jobkorea": {
      "command": "node",
      "args": [
        "/absolute-path/job-platform-mcp/skills/job-match-search/scripts/run-mcp.mjs",
        "jobkorea"
      ]
    }
  }
}

只注册已配置的平台也可以。重启 MCP 宿主后,在工具列表中确认以下名称。

wanted_list_jobs
saramin_search_jobs
saramin_get_job
jobkorea_fetch_jobs
jobkorea_fetch_entry_jobs

若 MCP 宿主为服务器名称添加前缀,实际展示名称可能略有不同。

面向智能体的配置流程

当智能体配置此仓库时,请按以下顺序操作。人工也可以使用相同流程。

  1. 确认当前目录是包含 pnpm-workspace.yaml 的仓库根目录。

  2. 使用 node --version 和 pnpm --version 确认所需版本。

  3. 运行 pnpm install 和 pnpm build。

  4. 询问用户要连接哪个平台以及是否已申请认证信息。

  5. 不要求用户在普通对话窗口中输入认证值。

  6. 在交互式 TTY 中运行 configure-credentials.mjs,让用户直接以掩码方式输入。

  7. 确认所用智能体或 MCP 宿主的配置位置。

  8. 仅注册 run-mcp.mjs 的绝对路径和平台参数,不包含任何秘密值。

  9. 重启 MCP 宿主后,通过返回结果数量较少的只读请求确认连接。

  10. 成功时仅报告已连接的平台名称。即使在错误信息中也不包含认证值或 잡코리아 颁发 URL。

如果智能体无法提供交互式 TTY,则仅向用户说明配置命令,并等待用户输入完成。不会自动重试认证失败。

安装招聘匹配技能

技能源文件位于以下目录:

skills/job-match-search/
├── SKILL.md
├── references/
├── scripts/
└── test/

该技能使用公开的 Agent Skills 格式,不依赖特定智能体专用的 frontmatter。不同客户端仅搜索目录不同。

Codex

将源文件夹链接到个人技能目录。

mkdir -p ~/.codex/skills
ln -s /absolute-path/job-platform-mcp/skills/job-match-search ~/.codex/skills/job-match-search

如果同名路径已存在,请勿删除或覆盖,先检查现有技能。

Claude Code

链接到项目技能路径。

mkdir -p .claude/skills
ln -s ../../skills/job-match-search .claude/skills/job-match-search

在 Claude Code 中直接调用时,使用方式如下:

/job-match-search 내 이력서에 맞는 백엔드 공고를 찾아줘

OpenCode

链接到项目技能路径。

mkdir -p .opencode/skills
ln -s ../../skills/job-match-search .opencode/skills/job-match-search

OpenCode 还支持 .claude/skills 和 .agents/skills 兼容路径。

OpenClaw

如果将此仓库本身用作 OpenClaw workspace,则会自动发现当前的 skills/job-match-search 路径。若要安装到其他 workspace:

openclaw skills install /absolute-path/job-platform-mcp/skills/job-match-search

在不支持符号链接的环境中,将整个文件夹复制到相应客户端的技能路径。除 SKILL.md 外,references 和 scripts 也必须一并复制。

技能使用方法

附上简历或作品集,或指定智能体可读取的本地路径。

$job-match-search
첨부한 이력서를 분석해서 내 경력에 맞는 채용공고를 찾아줘.

也可以同时指定地区和条件。

$job-match-search
서울 또는 판교, 주 2회 이하 출근, 정규직 백엔드 포지션을 찾아줘.
Java와 Spring 실무 경험을 중요하게 보고 연봉이 공개된 공고를 우선해줘.

不设定条件直接开始也可以。

$job-match-search
내 포트폴리오에 맞는 공고를 찾아줘. 조건은 아직 정하지 않았어.

这种情况下,技能会一次性询问地区、出勤方式、雇佣形式和主要偏好。如果跳过回答,则不加限制地广泛搜索。

默认结果包含以下信息:

  • 分析所用的搜索画像和已明示的假设

  • 匹配度排名前 10 的公告

  • 已确认的匹配依据以及缺失或未确认的要求

  • 地区、用工形式、截止日期、来源和原文链接

  • 查询的平台、搜索词、过滤条件及失败的范围

匹配度分数是用于比较的启发式指标,并非录取概率。

开发命令

整个 workspace:

pnpm install
pnpm lint
pnpm typecheck
pnpm test
pnpm build
pnpm verify

若只检查单个包:

pnpm --filter wanted-mcp test
pnpm --filter saramin-mcp test
pnpm --filter jobkorea-mcp test

若只运行安全存储测试:

pnpm test:skill

项目结构

.
├── packages/
│   ├── wanted-mcp/
│   ├── saramin-mcp/
│   └── jobkorea-mcp/
├── skills/
│   └── job-match-search/
├── package.json
├── pnpm-lock.yaml
└── pnpm-workspace.yaml

根 workspace 仅整合依赖安装、单一 lockfile 和整体验证。各 MCP 的配置、客户端、工具 schema 和测试均保留在相应的包内。

问题排查

症状

需确认的内容

Built MCP entry not found

确认是否在根目录执行了 pnpm build

Missing required configuration

使用 configure-credentials.mjs --check 确认该平台是否已配置

Credential store permissions are too broad

在 Linux、macOS、WSL 中对认证文件执行 chmod 600

Credential store must be outside the project workspace

使用默认用户设置路径,或指定仓库之外的绝对路径

Wanted 401 或 403

确认 Client ID、Secret、可选的 Authorization 及账户权限

사ram인 认证错误

确认 SARAMIN_ACCESS_KEY 的申请状态和使用量限制

잡코리아 连接错误

确认审批状态、已注册的请求 IP、颁发 URL 和允许的主机

MCP 工具不可见

确认绝对路径、node 执行路径以及是否已重启 MCP 宿主

仅部分平台失败

继续搜索正常连接的平台,只检查失败平台的配置

安全注意事项

  • 请勿将实际认证信息提交到 Git。

  • 请勿将认证信息粘贴到 issue、PR、聊天或日志中。

  • 如密钥已泄露,请立即作废并在平台上重新申请。

  • 잡코리아 调用 URL 的完整内容应视为机密信息。

  • 请勿将认证存储文件放在云同步文件夹或共享目录中。

  • 请勿授予他人管理的技能或脚本访问认证存储的权限。

许可证与 API 使用条款

各招聘平台的数据、API 使用条件、调用限制和计费政策均遵循相应平台的服务条款。本仓库不绕过认证权限或付费功能,也不提供 API 数据的再分发权限。

F
license - not found
Not graded
quality - not tested
B
maintenance

Maintenance

Maintainers
<1hResponse time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    A
    maintenance
    MCP server for job search and application tracking, enabling AI agents to search jobs, get details, manage applications, and find contacts across 128K+ jobs and 1,900+ companies.
    564
    3
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Unified job search MCP server that aggregates live listings from multiple job boards with deduplication, enabling AI agents to find and filter jobs by keyword and location.
    MIT
  • A
    license
    Not graded
    quality
    D
    maintenance
    An MCP server that enables AI-assisted job search workflows including job discovery, application tracking, resume evaluation, and cover letter generation, with support for multiple job sources and scheduled scraping.
    18
    1
    AGPL 3.0
  • F
    license
    Not graded
    quality
    A
    maintenance
    Personal job posting management MCP server that fetches job postings from multiple Korean job sites and stores them for LLM analysis, enabling timeline tracking and cover letter draft management.
    1

View all related MCP servers

Related MCP Connectors

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/sjungwon03/job-platform-mcp'

If you have feedback or need assistance with the MCP directory API, please join our Discord server