Laddro Career
Personaliza currículos para ofertas de trabajo, genera cartas de presentación y exporta PDFs a través de agentes de IA.
Documentación
@laddro/career-mcp
Servidor MCP para la API de Laddro Career. Brinda a los agentes de IA acceso a la personalización de currículums, generación de cartas de presentación, exportación a PDF y exploración de plantillas.
Configuración
Claude Desktop
Agrega a tu claude_desktop_config.json:
{
"mcpServers": {
"laddro-career": {
"command": "npx",
"args": ["@laddro/career-mcp"],
"env": {
"LADDRO_API_KEY": "laddro_live_..."
}
}
}
}
Claude Code
claude mcp add laddro-career -- npx @laddro/career-mcp
Establece la variable de entorno LADDRO_API_KEY antes de ejecutar.
HTTP remoto
Usa el endpoint HTTP Streamable alojado:
https://mcp.laddro.com/mcp
Envía tu clave de API de Laddro en la solicitud de inicialización de MCP:
Authorization: Bearer laddro_live_...
o:
x-api-key: laddro_live_...
Herramientas disponibles
| Herramienta | Descripción |
|---|---|
laddro.templates.list | Explorar las 22 plantillas de currículum |
laddro.templates.get | Obtener colores y fuentes de plantillas |
laddro.fonts.list | Todas las familias de fuentes disponibles |
laddro.languages.list | Los 14 idiomas compatibles |
laddro.resumes.list | Currículums del usuario |
laddro.resumes.get | Metadatos del currículum |
laddro.resumes.render | Re-renderizar con nueva configuración de plantilla |
laddro.resumes.tailor | Personalizar currículum con IA para un empleo |
laddro.resumes.export | Exportar como PDF |
laddro.coverLetters.list | Cartas de presentación del usuario |
laddro.coverLetters.get | Metadatos de la carta de presentación |
laddro.coverLetters.create | Crear manualmente |
laddro.coverLetters.generate | Generar con IA desde currículum + empleo |
laddro.coverLetters.render | Renderizar con configuración de plantilla |
Modo conector (OAuth)
Detrás de la bandera MCP_CONNECTOR_ENABLED (desactivada por defecto). Cuando está habilitada y una solicitud
lleva Authorization: Bearer lad_at_* (un token de acceso OAuth de Laddro), el servidor
ejecuta una sesión de conector OAuth que reenvía el token a laddro-backend
(service.laddro.com) en lugar de career-api. También sirve
GET /.well-known/oauth-protected-resource (RFC 9728) y responde a llamadas
/mcp no autenticadas con 401 + WWW-Authenticate: Bearer resource_metadata=... para que los clientes
OAuth puedan descubrir el servidor de autorización. Con la bandera desactivada, el comportamiento es
sin cambios (sin ruta de descubrimiento, sin aplicación de 401, las 18 herramientas vía career-api).
Herramientas del conector (solo sesiones OAuth): "Tú escribes el contenido. Laddro lo almacena y renderiza el PDF."
| Herramienta | Alcance | Descripción |
|---|---|---|
laddro.resume.schema | — | JSON Schema para contenido de currículum |
laddro.resume.create | resumes:write | Crear un currículum, devuelve { resumeId } |
laddro.resume.update | resumes:write | Reemplazo completo de un currículum, devuelve { resumeId, updatedAt } |
laddro.coverLetter.schema | — | JSON Schema para contenido de carta de presentación |
Variables de entorno
| Variable | Requerida | Descripción |
|---|---|---|
LADDRO_API_KEY | Sí para stdio; opcional como respaldo para HTTP | Tu clave de API de Laddro |
LADDRO_BASE_URL | No | Anular URL de API (predeterminado: https://api.laddro.com) |
MCP_CONNECTOR_ENABLED | No | true habilita el modo conector OAuth (desactivado por defecto) |
LADDRO_BACKEND_URL | No | URL base del backend para herramientas del conector (predeterminado: https://service.laddro.com) |
MCP_PUBLIC_URL | No | URL pública de este servidor para metadatos OAuth (si no, se deriva de los encabezados reenviados) |
Desarrollo
npm ci
npm test
npm test compila el paquete TypeScript y ejecuta pruebas de contrato MCP para el manejo de autenticación, metadatos de herramientas y enrutamiento de manejadores.
Lanzamientos
Este paquete usa Changesets y SemVer.
- Parche: correcciones de errores, documentación, pruebas, endurecimiento interno.
- Menor: nuevas herramientas o capacidades MCP compatibles con versiones anteriores.
- Mayor: nombres de herramientas, esquemas, autenticación o comportamiento de transporte con cambios incompatibles.
Cada PR que modifique el paquete publicado debe incluir un changeset:
npm run changeset
Después de que el PR se fusione en main, GitHub Actions abre un PR de lanzamiento con el aumento de versión y el registro de cambios. Fusionar ese PR de lanzamiento publica el paquete en npm y crea el lanzamiento de GitHub. El flujo de trabajo de implementación de Cloud Run también se ejecuta en main, por lo que el MCP alojado se actualiza automáticamente después de los lanzamientos.
Registro MCP
Este servidor está listado en el registro oficial de MCP como com.laddro/career. server.json es el manifiesto del registro; scripts/sync-version-metadata.mjs mantiene su versión sincronizada con el paquete npm en cada lanzamiento.
La publicación está automatizada: .github/workflows/publish-registry.yml se ejecuta cada vez que un lanzamiento cambia server.json en main y envía la nueva versión al registro. La autenticación se basa en DNS: la clave pública Ed25519 vive en el registro TXT laddro.com, y la clave privada correspondiente (hex) se almacena como el secreto del repositorio MCP_PUBLISHER_ED25519_KEY.
Para publicar (o ponerse al día) manualmente:
MCP_PUBLISHER_ED25519_KEY=<hex-private-key> ./scripts/publish-registry.sh
Enlaces
Licencia
MIT