CV Recruitment Assistant

CV Recruitment Assistant

Provides digitally-signed access to Brayan Smith Cordova Tasayco's CV data through 15 specialized tools for candidate evaluation, technical skills assessment, job matching, and portfolio analysis.

Category
Visit Server

README

CV Recruitment Assistant - Servidor MCP con Firma Digital

Este es un servidor MCP (Model Context Protocol) avanzado que funciona como asistente de reclutamiento para el CV de Brayan Smith Cordova Tasayco. Todas las respuestas están firmadas digitalmente para garantizar autenticidad e integridad.

🚀 Características Principales

  • 15 herramientas MCP especializadas para análisis de CV
  • Firma digital de todas las respuestas (RSA + SHA-256)
  • Verificación de integridad y autenticidad
  • Desarrollo local y producción con manejo seguro de claves
  • Tests automatizados para validar firmas digitales

🔧 Configuración Inicial

Para Desarrollo Local

  1. Generar claves criptográficas:

    npm run setup-keys
    
  2. Iniciar servidor de desarrollo:

    npm run dev
    
  3. Ejecutar tests (incluyendo validación de firmas):

    npm test
    

Para Producción (Cloudflare Workers)

  1. Configurar secrets en Cloudflare:

    # Primero genera las claves localmente con npm run setup-keys
    # Luego copia las claves de .env.local y ejecuta:
    wrangler secret put MCP_PRIVATE_KEY
    wrangler secret put MCP_PUBLIC_KEY  
    wrangler secret put MCP_SERVER_ID
    
  2. Desplegar:

    npm run deploy
    

Tu servidor estará disponible en: https://your-worker-name.your-account.workers.dev

🔐 Formato de Respuestas Firmadas

Todas las herramientas MCP devuelven respuestas en el siguiente formato firmado digitalmente:

{
  "data": {
    // Datos originales de la herramienta MCP
  },
  "hash": "sha256_hash_de_los_datos",
  "signature": "firma_digital_en_base64",
  "timestamp": "2025-01-15T10:00:00Z",
  "publicKey": "-----BEGIN PUBLIC KEY-----\n...",
  "serverId": "cv-brayan-cordova-server",
  "version": "1.0"
}

Verificación de Firmas

Usa la herramienta verify_response_signature para verificar cualquier respuesta:

// Ejemplo de verificación desde un cliente MCP
const response = await mcpClient.callTool('get_candidate_profile');
const verifyResult = await mcpClient.callTool('verify_response_signature', {
    signedResponse: response.content[0].text
});

🛠️ Herramientas MCP Disponibles

Información Básica (8 herramientas)

  • get_candidate_profile - Perfil personal y resumen profesional
  • get_work_experience - Experiencia laboral detallada
  • get_education_background - Formación académica
  • get_certifications - Certificaciones profesionales
  • get_technical_skills - Habilidades técnicas categorizadas
  • get_soft_skills - Habilidades blandas y idiomas
  • get_languages_interests - Idiomas e intereses personales
  • search_candidate_info - Búsqueda por palabras clave

Presencia Online (3 herramientas)

  • get_portfolio_website - Sitio web personal y portfolio
  • get_github_profile - Información de perfil GitHub
  • get_social_networks - Redes sociales y presencia online

Análisis Avanzado (4 herramientas)

  • evaluate_tech_stack - Evalúa compatibilidad con tecnologías
  • assess_leadership_experience - Analiza experiencia de liderazgo
  • calculate_experience_years - Calcula años de experiencia por tecnología
  • match_job_requirements - Matching contra requisitos de trabajo

Debugging (2 herramientas)

  • verify_response_signature - Verifica firmas digitales
  • get_server_public_key - Obtiene clave pública del servidor

🌐 Conexiones y Uso

Cloudflare AI Playground

  1. Ve a https://playground.ai.cloudflare.com/
  2. Ingresa la URL de tu servidor: https://your-worker-name.your-account.workers.dev/sse
  3. Nota: Todas las respuestas estarán firmadas digitalmente. Los datos originales están en el campo data de cada respuesta.

Claude Desktop

Conecta tu servidor MCP a Claude Desktop usando el mcp-remote proxy:

  1. Sigue la Guía de Anthropic
  2. En Claude Desktop: Settings > Developer > Edit Config
  3. Usa esta configuración:
{
  "mcpServers": {
    "cv-recruitment-assistant": {
      "command": "npx",
      "args": [
        "mcp-remote",
        "http://localhost:8787/sse"  // Local
        // "https://your-worker-name.your-account.workers.dev/sse"  // Producción
      ]
    }
  }
}
  1. Reinicia Claude Desktop

Importante: Claude recibirá todas las respuestas firmadas digitalmente. Para acceder a los datos, usa response.data en lugar de response directamente.

🧪 Testing y Validación

  • npm test - Ejecuta todos los tests incluyendo validación de firmas
  • npm run test:crypto - Solo tests criptográficos
  • npm run test:mcp - Solo tests de herramientas MCP

📁 Estructura del Proyecto

src/
├── index.ts              # Servidor MCP principal con 17 herramientas
├── crypto.ts             # Sistema de firma digital
└── candidate-data.json   # Datos del CV estructurados

scripts/
└── generate-keys.js      # Generador de claves para desarrollo

tests/
├── run-tests.js          # Suite completa de tests
├── crypto.test.js        # Tests específicos de criptografía
└── mcp-tools.test.js     # Tests de herramientas MCP

🔒 Seguridad y Cumplimiento

Este servidor implementa las mejores prácticas de seguridad:

  • Firma digital RSA-2048 de todas las respuestas
  • Verificación SHA-256 de integridad de datos
  • Claves privadas seguras en Cloudflare Workers secrets
  • Trazabilidad completa con timestamps y server IDs
  • Preparado para regulaciones (GDPR, AI Act)

📄 Documentación Adicional

  • CLAUDE.md - Instrucciones específicas para Claude Code
  • TESTING.md - Documentación detallada de testing
  • docs/ - Documentación técnica del proyecto

Recommended Servers

playwright-mcp

playwright-mcp

A Model Context Protocol server that enables LLMs to interact with web pages through structured accessibility snapshots without requiring vision models or screenshots.

Official
Featured
TypeScript
Magic Component Platform (MCP)

Magic Component Platform (MCP)

An AI-powered tool that generates modern UI components from natural language descriptions, integrating with popular IDEs to streamline UI development workflow.

Official
Featured
Local
TypeScript
Audiense Insights MCP Server

Audiense Insights MCP Server

Enables interaction with Audiense Insights accounts via the Model Context Protocol, facilitating the extraction and analysis of marketing insights and audience data including demographics, behavior, and influencer engagement.

Official
Featured
Local
TypeScript
VeyraX MCP

VeyraX MCP

Single MCP tool to connect all your favorite tools: Gmail, Calendar and 40 more.

Official
Featured
Local
graphlit-mcp-server

graphlit-mcp-server

The Model Context Protocol (MCP) Server enables integration between MCP clients and the Graphlit service. Ingest anything from Slack to Gmail to podcast feeds, in addition to web crawling, into a Graphlit project - and then retrieve relevant contents from the MCP client.

Official
Featured
TypeScript
Kagi MCP Server

Kagi MCP Server

An MCP server that integrates Kagi search capabilities with Claude AI, enabling Claude to perform real-time web searches when answering questions that require up-to-date information.

Official
Featured
Python
E2B

E2B

Using MCP to run code via e2b.

Official
Featured
Neon Database

Neon Database

MCP server for interacting with Neon Management API and databases

Official
Featured
Exa Search

Exa Search

A Model Context Protocol (MCP) server lets AI assistants like Claude use the Exa AI Search API for web searches. This setup allows AI models to get real-time web information in a safe and controlled way.

Official
Featured
Qdrant Server

Qdrant Server

This repository is an example of how to create a MCP server for Qdrant, a vector search engine.

Official
Featured