Skip to main content

MCP server for AI-driven CV generation — PDF/DOCX export with visual editor

Project description

CV Forge MCP Server

PyPI License

MCP (Model Context Protocol) server for CV Forge. Lets AI assistants generate professional CVs as PDF/DOCX from conversation data.

How It Works

  1. You describe your experience to the AI (or paste LinkedIn profile text)
  2. AI fills in the CV template using the generate_cv tool
  3. AI calls generate_pdf or generate_docx to produce the document
  4. 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

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

cv_forge_mcp-1.1.0.tar.gz (9.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

cv_forge_mcp-1.1.0-py3-none-any.whl (7.9 kB view details)

Uploaded Python 3

File details

Details for the file cv_forge_mcp-1.1.0.tar.gz.

File metadata

  • Download URL: cv_forge_mcp-1.1.0.tar.gz
  • Upload date:
  • Size: 9.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for cv_forge_mcp-1.1.0.tar.gz
Algorithm Hash digest
SHA256 49224970ae2ef9480e19b8575d9bb0ab55a49b1431f08aaaf7c26ffd9bff4901
MD5 99fdda8c355f7c85f53a607e0d33ca9b
BLAKE2b-256 33f0b18344b27c79cf8edbca4de1f7028053e721a7b5f73e94cd8f619b61e036

See more details on using hashes here.

File details

Details for the file cv_forge_mcp-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: cv_forge_mcp-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 7.9 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for cv_forge_mcp-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 200783ef09229be9af2a0ccffd9c51588115adc2f1447261d9b9eb635f40444a
MD5 3c461041bf71f4671d5527bc016f90e0
BLAKE2b-256 02461af20013052f45d979aabe1a288fa759290a5c7ffcfe20de758b608d53e5

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page