Skip to main content
Glama
Jucamhc

mcp-workatastartup

by Jucamhc

construir-perfil-maestro

Builds a master candidate profile from a LinkedIn URL or CV PDF, extracting text and returning the standard schema and JSON rules; it does not save the profile.

Instructions

Crea el perfil maestro (fuente única de tus datos para todos los MCP de empleo) cuando aún no existe. Sin argumentos, indica qué pedirle al usuario: la URL de su LinkedIn, o su CV en PDF y su foto. Con un PDF devuelve el texto extraído, el esquema estándar y las reglas para armar el JSON; con solo la URL de LinkedIn explica cómo exportar el perfil a PDF. No guarda nada: eso lo hace guardar-perfil-maestro tras la confirmación del usuario.

Input Schema

NameRequiredDescriptionDefault
fotoNoRuta de la foto de perfil (JPG, PNG, GIF o WEBP).
textoNoContenido del perfil ya obtenido por otra herramienta (p. ej. un MCP de LinkedIn).
cv_pdfNoRuta (o rutas) de CV en PDF, incluido el PDF exportado de LinkedIn.
linkedin_urlNoURL del perfil de LinkedIn (https://www.linkedin.com/in/usuario/).

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.6/5.0
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

With no annotations, the description carries the load and does well: it discloses the crucial non-side-effect ('No guarda nada') and the persistence path via a sibling. It explains return behavior per input mode. Minor gap: no mention of permissions or failure modes (e.g., unreadable PDF).

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness4/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Dense but front-loaded: the core purpose and the no-save caveat come early, and the per-mode details follow logically. Slightly packed into one paragraph, but no sentence is filler.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

No output schema exists, yet the description describes what is returned for each invocation mode, and it clarifies the persistence boundary relative to a sibling. An agent has everything needed to call it correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters4/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, so baseline is 3; the description adds value by explaining the effect of each input type—a PDF yields extracted text plus schema and JSON rules, while a LinkedIn URL only triggers export instructions. This meaningfully augments the schema prose.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

States a specific verb (creates) and resource (master profile), with inline definition of what that profile is ('fuente única de tus datos'). It explicitly distinguishes itself from guardar-perfil-maestro by noting that this tool does not persist anything.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines5/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Explicitly scopes usage to 'when it doesn't yet exist' and clearly routes the follow-up action to guardar-perfil-maestro after confirmation. It also spells out three invocation modes (no args, PDF, LinkedIn URL) so the agent knows what each input yields.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.