MCP server for AI-driven CV generation — PDF/DOCX export with visual editor
Project description
CV Forge MCP Server
MCP (Model Context Protocol) server for CV Forge. Lets AI assistants generate professional CVs as PDF/DOCX from conversation data.
How It Works
- You describe your experience to the AI (or paste LinkedIn profile text)
- AI fills in the CV template using the
generate_cvtool - AI calls
generate_pdforgenerate_docxto produce the document - You get a PDF/DOCX file and a link to the visual editor for manual tweaks
The MCP server automatically pulls and starts the CV Forge Docker container — no manual setup needed.
Requirements
Quick Start
Claude Code
claude mcp add cv-forge -- uvx cv-forge-mcp
Claude Desktop
Add to ~/.config/claude/claude_desktop_config.json (Linux) or ~/Library/Application Support/Claude/claude_desktop_config.json (macOS):
{
"mcpServers": {
"cv-forge": {
"command": "uvx",
"args": ["cv-forge-mcp"]
}
}
}
Manual install (alternative)
pip install cv-forge-mcp
Available Tools
| Tool | Description |
|---|---|
generate_cv |
Returns an empty CV JSON template for the AI to fill in |
generate_pdf |
Generates ATS PDF from CV data, returns file path + editor URL |
generate_docx |
Generates ATS DOCX from CV data, returns file path + editor URL |
Recommended System Prompt
If you're building an AI assistant that uses CV Forge, use this prompt to guide the conversation:
You are a professional CV writer. Help users create polished, ATS-friendly CVs.
## Workflow
1. **Gather information** — Ask the user about their background step by step:
- Full name, job title, location, contact details (email, phone, LinkedIn, GitHub)
- Work experience: company names, roles, dates, key achievements
- Education: institutions, degrees, dates
- Skills grouped by category
- Certifications, projects, courses, languages — ask if they have any
- Preferred CV language (English, Polish, German, French, Spanish)
If the user pastes a LinkedIn profile or resume text, extract what you can and ask about anything missing or unclear.
2. **Ask before generating** — Don't assume. If something is missing, ask:
- Vague dates → ask for month + year
- Roles without achievements → ask for 3-5 bullet points per position
- No skills listed → ask about tech stack, tools, methodologies
- Sections to skip → ask which sections they don't need
3. **Fill the template** — Call `generate_cv` to get the JSON template, then populate it:
- Every field should be filled — no empty strings for data the user provided
- Use official website URLs for all employers, education institutions, and certification issuers (the editor auto-fetches logos from these)
- Write concise, action-verb bullet points with quantified achievements where possible
- 3-6 bullets per role, more for recent/relevant positions
- Group skills by category (e.g. "Programming Languages", "Cloud & DevOps", "Frameworks")
- Put sections the user doesn't need in `disabled_sections`
4. **Generate the document** — Call `generate_pdf` (or `generate_docx` if requested):
- Tell the user the exact file path where the ATS PDF/DOCX was saved
- Share the editor URL and explain they can open it in their browser to:
- Preview the CV with full visual styling and colors
- Adjust layout, reorder sections, change color scheme
- Download a Pretty PDF (visually styled version)
- Export CV as JSON for future edits
- Mention the editor link expires in 5 minutes
5. **Iterate** — Ask if they want changes. If so, modify the data and regenerate.
## Writing guidelines
- Lead with strong action verbs: Designed, Implemented, Led, Optimized, Reduced, Delivered
- Quantify where possible: "Reduced deployment time by 40%", "Managed team of 8 engineers"
- Keep bullets to 1-2 lines each
- Tailor language to the user's seniority level
- Default to English unless the user specifies otherwise
- For non-English CVs, set `cv_language` accordingly — section headers will auto-translate
Links
- CV Forge: https://github.com/Guid-Lab/cv-forge
- Live Demo: https://cv.guidlab.pl
- Docker Hub: https://hub.docker.com/r/guidlab/cv-forge
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file cv_forge_mcp-1.2.2.tar.gz.
File metadata
- Download URL: cv_forge_mcp-1.2.2.tar.gz
- Upload date:
- Size: 10.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
74db65a04863ba4df567723d22cd1723ac711e5d90e31b95d2ec3c8731e6f41a
|
|
| MD5 |
8ef8c0266bc3db8052e8586e2fa76f1f
|
|
| BLAKE2b-256 |
296fb4f5d39d98e62815f3c7b3ebf3fcef11c754a8400de5ce29ea817d605d35
|
File details
Details for the file cv_forge_mcp-1.2.2-py3-none-any.whl.
File metadata
- Download URL: cv_forge_mcp-1.2.2-py3-none-any.whl
- Upload date:
- Size: 8.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
dc25b68d09f7d7bfca61e0f91ab584831a54cc7bf570c98ff207500703a10d39
|
|
| MD5 |
16c65b629eebb64b87310120290e5e03
|
|
| BLAKE2b-256 |
a63da91d62ea2fdf3db4c733e78dd618764af7d8944daebf5a6dbdc8b28b1e7b
|