Resume Forge MCP
An MCP server for intelligent LaTeX resume generation with multiple templates, quality scoring, and job description tailoring.
README
Resume Forge MCP
An MCP (Model Context Protocol) server for intelligent LaTeX resume generation with multiple template styles, quality scoring, and job description tailoring. Works with any MCP-compatible AI assistant — Claude Desktop, Kiro, Cursor, Windsurf, etc.
Features
- 3 built-in templates: Modern (color accents), Classic (traditional), Minimal (no-frills)
- Overleaf integration: Browse and fetch 350+ templates dynamically
- Multi-format import: Import resume data from
.tex,.pdf, or.docxfiles - Quality scoring: Bullet analysis, ATS compatibility, keyword matching
- Job tailoring: Auto-select and rank content based on job descriptions
- Visual preview: Compile to PDF and preview as images directly in your AI assistant
Quick Start
1. Import my resume from resume.pdf
2. List available templates
3. Generate my resume using the modern template
4. Score my resume against keywords: Python, AWS, Kubernetes
That's it — 4 prompts to go from a PDF to a scored, template-styled resume.
Installation
uvx resume-forge-mcp
With PDF and DOCX import support:
uvx --with pymupdf --with python-docx resume-forge-mcp
Prerequisites
For PDF compilation (compile_and_preview), you need LaTeX installed:
- macOS:
brew install --cask mactex - Ubuntu:
sudo apt install texlive-latex-base texlive-latex-extra texlive-fonts-extra - Windows: Install MiKTeX
LaTeX is only needed for compiling to PDF. All other tools (import, generate .tex, score, tailor) work without it.
Configuration
Add to your AI assistant's MCP config:
Claude Desktop
macOS: ~/Library/Application Support/Claude/claude_desktop_config.json
Windows: %APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"resume-forge": {
"command": "uvx",
"args": ["resume-forge-mcp"]
}
}
}
Kiro
Add to ~/.kiro/settings/mcp.json:
{
"mcpServers": {
"resume-forge": {
"command": "uvx",
"args": ["resume-forge-mcp"]
}
}
}
Custom directories (optional)
{
"mcpServers": {
"resume-forge": {
"command": "uvx",
"args": ["resume-forge-mcp"],
"env": {
"RESUME_DATA_DIR": "/path/to/data",
"RESUME_TEMPLATE_DIR": "/path/to/templates",
"RESUME_OUTPUT_DIR": "/path/to/output"
}
}
}
}
Environment Variables
| Variable | Default | Purpose |
|---|---|---|
RESUME_DATA_DIR |
~/.resume-forge/data |
Imported resume data (JSON) |
RESUME_TEMPLATE_DIR |
~/.resume-forge/templates |
Fetched Overleaf templates |
RESUME_OUTPUT_DIR |
~/.resume-forge/output |
Generated .tex and .pdf files |
All env vars are optional — defaults to ~/.resume-forge/ subdirectories on any OS.
Tools (11)
Templates — Pick a style or browse Overleaf
| Tool | What it does |
|---|---|
list_templates |
Shows 3 built-in templates (modern, classic, minimal) and tells you Overleaf is available for 350+ more |
browse_overleaf_templates |
Browse Overleaf's gallery by category (cv, cover-letter, etc.) — returns names and URLs |
fetch_overleaf_template |
Download a specific Overleaf template by URL, optionally save it locally |
Data — Get your resume in and edit it
| Tool | What it does |
|---|---|
import_resume |
Feed it a .tex, .pdf, or .docx file — extracts contact, experience, education, skills, publications into structured JSON |
get_resume_data |
View everything that was imported — all sections, all entries, all bullets |
update_resume_data |
Fix a company name, add a bullet, delete an old job, update your phone number — works on any section |
Generate — Create your resume
| Tool | What it does |
|---|---|
generate_resume |
Takes your data + a template (modern/classic/minimal) → renders a complete .tex file |
compile_and_preview |
Compiles .tex to PDF using pdflatex and returns a preview image you can see in chat |
generate_tailored_resume |
Paste a job description → it parses requirements, picks your most relevant experience, generates a tailored resume |
Analyze — Improve your resume
| Tool | What it does |
|---|---|
score_resume_quality |
Scores every bullet (action verb? metrics? right length?), checks ATS compatibility, matches keywords you provide |
get_config |
Shows your directories, pdflatex status, and all available tools |
Usage Examples
Import and generate
> Import my resume from /path/to/resume.pdf
> Generate my resume using the classic template
Score and improve
> Score my resume quality against keywords: Java, AWS, Kafka, microservices
> Update experience index 0 bullet 2 to add a metric
Tailor for a job
> Generate a tailored resume for this job description:
> Senior Backend Engineer - 5+ years Java, AWS, event-driven architecture...
Browse Overleaf templates
> Browse Overleaf templates for CVs
> Fetch the template at https://www.overleaf.com/latex/templates/...
How It Works
- Import — Your resume file is parsed into structured JSON (contact, experience, education, skills, publications)
- Edit — Fix any parsing issues or add new content via
update_resume_data - Template — Pick a built-in style or fetch one from Overleaf
- Generate — Your data is rendered through a Jinja2 template into a
.texfile - Compile — pdflatex compiles the
.texto a PDF (optional — requires LaTeX installed) - Tailor — Paste a job description and get a resume with auto-selected relevant content
License
MIT
推荐服务器
Baidu Map
百度地图核心API现已全面兼容MCP协议,是国内首家兼容MCP协议的地图服务商。
Playwright MCP Server
一个模型上下文协议服务器,它使大型语言模型能够通过结构化的可访问性快照与网页进行交互,而无需视觉模型或屏幕截图。
Magic Component Platform (MCP)
一个由人工智能驱动的工具,可以从自然语言描述生成现代化的用户界面组件,并与流行的集成开发环境(IDE)集成,从而简化用户界面开发流程。
Audiense Insights MCP Server
通过模型上下文协议启用与 Audiense Insights 账户的交互,从而促进营销洞察和受众数据的提取和分析,包括人口统计信息、行为和影响者互动。
VeyraX
一个单一的 MCP 工具,连接你所有喜爱的工具:Gmail、日历以及其他 40 多个工具。
graphlit-mcp-server
模型上下文协议 (MCP) 服务器实现了 MCP 客户端与 Graphlit 服务之间的集成。 除了网络爬取之外,还可以将任何内容(从 Slack 到 Gmail 再到播客订阅源)导入到 Graphlit 项目中,然后从 MCP 客户端检索相关内容。
Kagi MCP Server
一个 MCP 服务器,集成了 Kagi 搜索功能和 Claude AI,使 Claude 能够在回答需要最新信息的问题时执行实时网络搜索。
e2b-mcp-server
使用 MCP 通过 e2b 运行代码。
Neon MCP Server
用于与 Neon 管理 API 和数据库交互的 MCP 服务器
Exa MCP Server
模型上下文协议(MCP)服务器允许像 Claude 这样的 AI 助手使用 Exa AI 搜索 API 进行网络搜索。这种设置允许 AI 模型以安全和受控的方式获取实时的网络信息。