resume-mcp

resume-mcp

MCP server for AI-powered resume optimization and generation. It enables clients to optimize existing resumes or generate new ones from background info via LLM, producing formatted .docx and .pdf files.

Category
访问服务器

README

resume-mcp

把「AI 简历生成 / 优化」做成一个独立的 MCP(Model Context Protocol)Server, 让 Claude CodeOpenHandsClaude Desktop 等任意 MCP 客户端直接调用。

Python License

是什么

一个纯 stdio 的 MCP 工具服务,核心链路:

上传简历 / 粘贴背景  →  提取文本  →  LLM 优化或生成  →  渲染 .docx + .pdf
  • 从现有简历文件(PDF / Word)出发优化,或从零散背景信息从零生成
  • 内置中文简历 prompt(STAR 法则 + 量化数据 + ATS 关键词)
  • 产出排版好的 .docx(微软雅黑)和 .pdf(内置中文字体),并把文件绝对路径回传给调用方
  • 无鉴权、无数据库、无历史记录 —— 一个「即插即用」的独立工具

提供的工具

optimize_resume — 优化已有简历

参数 必填 说明
resume_file_path 本地简历文件绝对路径(.pdf / .docx / .doc
job_position 目标岗位,如「高级前端工程师」
requirements 额外要求,如「突出项目管理经验」
output_dir 输出目录,默认写到输入文件所在目录

generate_resume — 从背景信息生成简历

参数 必填 说明
background 背景信息(教育 / 工作 / 项目 / 技能等自由文本)
job_position 目标岗位
requirements 额外要求
output_dir 输出目录,默认写到当前工作目录

两者都返回:优化/生成说明、结构化 JSON,以及 .docx / .pdf 的绝对路径。

快速开始

1. 安装

需要 Python 3.10+。任选其一:

# 方式 A:uv(推荐)
uv tool install git+https://github.com/xiangwang331-boop/resume-mcp.git

# 方式 B:pipx
pipx install git+https://github.com/xiangwang331-boop/resume-mcp.git

# 方式 C:本地源码 + venv
git clone https://github.com/xiangwang331-boop/resume-mcp.git
cd resume-mcp
python -m venv .venv
.venv/Scripts/python -m pip install -e .      # Windows
# .venv/bin/python -m pip install -e .         # macOS / Linux

安装后会得到一个 resume-mcp 命令行入口。

2. 配置 LLM

简历的实际优化/生成由一个 LLM 完成(默认 DeepSeek,兼容任意 OpenAI 风格端点)。 按优先级读取以下来源:

  1. 进程环境变量 LLM_MODEL / LLM_API_KEY / LLM_BASE_URL
  2. RESUME_ENV_FILE 指定的 .env 文件
  3. 当前目录下的 .env
  4. 源码根目录下的 .env(本地开发用)

未配置 LLM_API_KEY 时,工具会返回明确的报错提示。

3. 接入客户端

Claude Code

# 用 -e 把 LLM 配置传给 server(推荐,无需落盘 .env)
claude mcp add resume -- resume-mcp \
  -e LLM_MODEL=deepseek/deepseek-v4-pro \
  -e LLM_API_KEY=sk-xxxx \
  -e LLM_BASE_URL=https://api.deepseek.com

重启后 /mcp 应能看到 resume 及其两个工具,然后直接说:

用 generate_resume 根据这份背景生成一份「后端开发工程师」简历:……

OpenHands

设置 → MCP servers → 添加自定义 server → 类型选 stdio

  • Commandresume-mcp(或该命令的绝对路径)
  • envLLM_MODELLLM_API_KEYLLM_BASE_URL

点「Test connection」应列出 optimize_resumegenerate_resume 两个工具。

Claude Desktop / 其它 MCP 客户端

claude_desktop_config.json(或对应客户端的 mcpServers)里加:

{
  "mcpServers": {
    "resume": {
      "command": "resume-mcp",
      "env": {
        "LLM_MODEL": "deepseek/deepseek-v4-pro",
        "LLM_API_KEY": "sk-xxxx",
        "LLM_BASE_URL": "https://api.deepseek.com"
      }
    }
  }
}

项目结构

resume-mcp/
├── pyproject.toml        # 依赖 + resume-mcp 命令行入口
├── resume_mcp/
│   ├── config.py         # LLM 配置加载
│   ├── engine.py         # 核心:提取文本 / LLM 调用 / 渲染 docx+pdf
│   └── server.py         # FastMCP server + 两个工具
├── .env.example
└── LICENSE

常见问题

'Server' object has no attribute 'list_tools'

MCP Python SDK 2.0.0 移除了 FastMCP / list_tools。本项目已固定 mcp>=1.2,<2.0, 如你在自己的环境里遇到此问题,把 mcp 降到 <2 即可。

生成的简历文件在哪里?

MCP 工具运行在客户端进程所在的那台机器(不在沙箱 / 容器里)。文件写到 output_dir 指定目录(或默认目录),工具返回值里会带上绝对路径。

终端里中文显示乱码,但文件正常?

Windows 控制台默认 GBK 编码,print 输出会乱码;这不影响 .docx / .pdf 的实际内容(内置微软雅黑 / STSong-Light 中文字体)。

与 resume-generator 的关系

核心逻辑抽取自 resume-generator 后端 backend/app/routers/resume.py (去掉了 FastAPI / JWT / 数据库)。resume_mcp/engine.py 是纯逻辑副本, 二者可能漂移;如需长期共用,可把 engine 提成独立包。

License

MIT

推荐服务器

Baidu Map

Baidu Map

百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。

官方
精选
JavaScript
Playwright MCP Server

Playwright MCP Server

一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。

官方
精选
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。

官方
精选
本地
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。

官方
精选
本地
TypeScript
VeyraX

VeyraX

一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。

官方
精选
本地
graphlit-mcp-server

graphlit-mcp-server

模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。

官方
精选
TypeScript
Kagi MCP Server

Kagi MCP Server

一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。

官方
精选
Python
e2b-mcp-server

e2b-mcp-server

使用 MCP 通过 e2b 运行代码。

官方
精选
Neon MCP Server

Neon MCP Server

用于与 Neon 管理 API 和数据库交互的 MCP 服务器

官方
精选
Exa MCP Server

Exa MCP Server

模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。

官方
精选