Skip to main content
Glama
ivanprytula

cv-rest-mcp-server

by ivanprytula

Servidor CV REST/MCP

Servicio FastAPI + FastMCP que renderiza un CV como JSON o PDFs con temas.

Ejecutar

just setup && just dev

Servidor: http://localhost:8080 · MCP: /mcp (JSON-RPC, no es una página de navegador)

Related MCP server: cv-builder

API REST

Método

Ruta

Descripción

GET

/

Página de inicio

GET

/health

Comprobación de salud

GET

/cv

CV como JSON

GET

/cv/html?theme=<name>

CV renderizado como HTML

GET

/cv/preview?theme=<name>

Página de vista previa con barra de herramientas

GET

/cv/pdf?theme=<name>

CV como PDF (adjunto)

Documentación interactiva de OpenAPI (Swagger UI): /docs

MCP

Montado en /mcp mediante transporte HTTP Streamable.

Herramientas

Herramienta

Parámetros

Devuelve

get_cv

—

Objeto JSON con todos los datos del CV

get_available_themes

—

list[str] de nombres de temas

generate_cv_pdf

theme: str

Bytes de PDF codificados en Base64

Conectar desde un cliente MCP

Cualquier cliente compatible con MCP (Claude Desktop, Cursor, VS Code con Kilo, Windsurf) puede usar este servidor. Añádelo a la configuración MCP de tu cliente:

{
  "mcpServers": {
    "cv-rest-mcp-server": {
      "url": "http://localhost:8080/mcp"
    }
  }
}

Para una instancia desplegada, sustituye la URL por tu endpoint público.

Temas

classic · minimal · modern · original — definidos en app/themes/<name>.py como cadenas CSS.

Contenido y personalización

Edita data/cv.json (validado contra CVData en app/cv_data.py). Reinicia tras los cambios.

Configura CV_DATA_PATH para que apunte a un archivo JSON diferente. Consulta data/cv.example.json para ver el esquema completo.

Límite de peticiones

Por IP, en memoria. localhost exento.

Endpoint

Límite

/

30/min

/health

60/min

/cv*

30/min

/cv/pdf

5/15min

Docker

just build && just run

Despliegue en GCP

Los pushes a main ejecutan CI y, tras superar los trabajos de calidad y pruebas, despliegan en Cloud Run automáticamente. Añade [skip deploy] al mensaje de un commit para ejecutar CI sin desplegar. Los marcadores nativos de GitHub [skip ci], [ci skip], [no ci], [skip actions] y [actions skip] omiten el flujo de trabajo por completo, lo que puede dejar comprobaciones obligatorias pendientes.

La configuración única del operador usa el script de despliegue (idempotente; SVC_NAME en .env nombra el servicio, la imagen y las cuentas de servicio derivadas):

just deploy bootstrap                                  # first full run
just deploy upload-cv                                   # publish personal CV data
just deploy wif                                        # one-time GitHub OIDC wiring

Para una versión de código normal, haz push de un cambio en verde a main; no ejecutes las fases de build/deploy/verify manualmente. El trabajo de verificación de CD imprime la URL desplegada. También es visible en Google Cloud Console en Cloud Run, el servicio y luego URL. La búsqueda por CLI usa el SVC_NAME y GCP_REGION actuales; los IDs de las cuentas de servicio no forman parte de la URL.

Stack

FastAPI · FastMCP v3 · WeasyPrint · Jinja2 · Compatible con Cloud Run (sin estado, consciente de $PORT)

Related MCP Connectors

Related MCP Servers

  • F
    license
    Not graded
    quality
    B
    maintenance
    Provides MCP tools for managing a CV as structured content, including a SQLite-backed snippet library with tools to list, create, update, and match job postings, compose role-tailored CV variants, and manage drafts.
    -
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI assistants to query a person's CV and portfolio content via MCP tools and resources, returning grounded answers from local markdown data instead of relying on resume parsing.
    -
  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI agents to create, retrieve, update, delete, and export CVs as PDFs through MCP, sharing documents with the web editor.
    MIT