Skip to main content
Glama
handaas

recruitment-mcp-server

by handaas

Servicio de Big Data de Reclutamiento

Este servicio MCP ofrece capacidades de análisis de búsqueda de empresas por palabras clave, búsqueda de puestos de trabajo, perfil de reclutamiento del empleador, necesidades de talento, salarios de los puestos y tendencias de contratación, para ayudar a los usuarios a realizar estudios del mercado de talento, análisis de empleadores y decisiones de contratación.

Funciones principales

  • 🏢 Búsqueda de empresas por nombre abreviado y palabras clave

  • 🔍 Búsqueda de puestos de trabajo publicados por la empresa

  • 🏢 Análisis del perfil de reclutamiento del empleador

  • 👥 Análisis de las necesidades de talento de la empresa

  • 💰 Consulta de salarios de los puestos de trabajo

  • 📈 Visión general de la tendencia de contratación de la empresa

Related MCP server: PayHub MCP Server

Notas de diseño del servicio

  • El servicio ofrece 6 Tools según los escenarios de negocio reales, en lugar de exponer una herramienta por cada API upstream.

  • Cuando el usuario solo proporciona el nombre abreviado de la empresa, use primero recruitment_enterprise_search para obtener el nombre completo o un ID estable.

  • Los dos Product ID, el de detalle de reclutamiento y el de estadísticas de reclutamiento, son reutilizados por Tools de distintos escenarios.

  • recruitment_demand_analysis selecciona el detalle o las estadísticas mediante view y solo accede a un Product ID por llamada.

  • La capa externa de negocio de los resultados paginados solo contiene total y resultList; pageSize tiene un máximo de 50.

  • Las listas largas del perfil y de las estadísticas se limitan mediante listLimit, con un valor predeterminado de 50 y un máximo de 200.

  • recruitment_trend solo devuelve el número de contrataciones, las estadísticas de los últimos tres meses, la frecuencia de actualización y el salario medio, para evitar devolver repetidamente las listas largas del perfil.

Requisitos del entorno

  • Python 3.10+

  • Dependencias: python-dotenv, requests, mcp

Inicio rápido local

1. Entrar en el directorio del proyecto

cd recruitment-mcp-server

2. Crear un entorno virtual e instalar las dependencias

python3 -m venv mcp_env
source mcp_env/bin/activate
pip install -r requirements.txt

3. Configurar las variables de entorno

Copie la plantilla de variables de entorno:

cp .env.example .env

Edite el archivo .env:

INTEGRATOR_ID=your_integrator_id
SECRET_ID=your_secret_id
SECRET_KEY=your_secret_key
HANDAAS_REQUEST_TIMEOUT=30

HANDAAS_REQUEST_TIMEOUT es una configuración opcional, expresada en segundos, con un valor predeterminado de 30.

4. Iniciar el servicio Streamable HTTP

python server/mcp_server.py streamable-http

La dirección predeterminada del servicio es http://localhost:8000/mcp.

También puede utilizar el script de inicio:

./start_mcp_server.sh streamable-http

Admite tres modos de inicio: stdio, sse y streamable-http.

5. Configuración de MCP en Cursor / Cherry Studio

{
  "mcpServers": {
    "recruitment-mcp-server": {
      "type": "streamableHttp",
      "url": "http://127.0.0.1:8000/mcp"
    }
  }
}

Instalación y despliegue de la versión STDIO

Reemplace {workdir} por la ruta absoluta de recruitment-mcp-server:

{
  "mcpServers": {
    "recruitment-mcp-server": {
      "command": "{workdir}/mcp_env/bin/python",
      "args": [
        "{workdir}/server/mcp_server.py",
        "stdio"
      ]
    }
  }
}

INTEGRATOR_ID, SECRET_ID y SECRET_KEY se obtienen tras registrarse en HandaaS y activar el conector. Las credenciales reales solo deben guardarse en el .env local o en los secretos de despliegue.

Herramientas disponibles y Product ID

MCP Tool

Función o vista

Product ID

recruitment_enterprise_search

Búsqueda de empresas por nombre abreviado, marca o palabras clave de producto

675cea1f0e009a9ea37edaa1

recruitment_job_search

Detalle de los puestos de trabajo publicados por la empresa

66b338e274bf098447db7f09

recruitment_employer_profile

Perfil y estadísticas de reclutamiento de la empresa

66b338e274bf098447db7f1b

recruitment_demand_analysis

view=details Detalle de necesidades de talento

66b338e274bf098447db7f09

recruitment_demand_analysis

view=statistics Estadísticas de necesidades de talento

66b338e274bf098447db7f1b

recruitment_salary

Detalle del rango salarial de los puestos

66b338e274bf098447db7f09

recruitment_trend

Número de contrataciones, estadísticas de los últimos tres meses, frecuencia de actualización y salario medio

66b338e274bf098447db7f1b

1. recruitment_enterprise_search

Función: Busca empresas candidatas por nombre abreviado, marca, producto u otras palabras clave.

Parámetros principales: matchKeyword es obligatorio; pageIndex por defecto 1; pageSize por defecto 10, máximo 50.

Devuelve: total/resultList de empresas candidatas. Tras confirmar un candidato, pase el nombre completo de la empresa, el ID de la empresa o el código de crédito social unificado a las Tools de reclutamiento.

2. recruitment_job_search

Función: Consulta el detalle de los puestos de trabajo publicados por una empresa determinada.

Parámetros principales:

  • matchKeyword (obligatorio): nombre de la empresa, ID de la empresa, número de registro o código de crédito social unificado.

  • keywordType (opcional): tipo de identificador de empresa; admite name, nameId, regNumber y socialCreditCode.

  • pageIndex (opcional): número de página, a partir de 1.

  • pageSize (opcional): número de elementos por página, por defecto 50, máximo 50.

Devuelve: total y resultList; el detalle del puesto puede incluir campos como nombre del puesto, ciudad, nivel de estudios, salario, años de experiencia, fecha de publicación y dirección de trabajo.

3. recruitment_employer_profile

Función: Consulta el perfil de reclutamiento de la empresa, incluidos beneficios, ciudades de contratación, palabras clave de los puestos y salario medio.

Parámetros principales:

  • matchKeyword (obligatorio): nombre de la empresa, ID de la empresa, número de registro o código de crédito social unificado.

  • keywordType (opcional): tipo de identificador de la empresa.

  • listLimit (opcional): número máximo de elementos que devuelven los campos de lista del perfil, por defecto 50, máximo 200.

Devuelve: estadísticas y perfil de reclutamiento de la empresa; cuando se truncan listas, devuelve truncatedFields.

4. recruitment_demand_analysis

Función: Analiza las necesidades de talento de la empresa; permite elegir entre la vista de detalle de puestos o la vista de estadísticas de la empresa.

Parámetros principales:

  • matchKeyword (obligatorio): identificador de la empresa.

  • view (opcional): details para el detalle de puestos; statistics para las estadísticas de la empresa. Por defecto statistics.

  • keywordType (opcional): tipo de identificador de la empresa.

  • pageIndex, pageSize (opcionales): solo se utilizan en la vista details; pageSize tiene un máximo de 50.

  • listLimit (opcional): solo se utiliza en la vista statistics; por defecto 50, máximo 200.

Devuelve: la vista de detalle devuelve total y resultList; la vista de estadísticas devuelve el perfil de reclutamiento de la empresa y los campos estadísticos.

5. recruitment_salary

Función: Consulta el rango salarial de los puestos de trabajo publicados por la empresa, para comparar salarios entre puestos y en el mercado de talento.

Parámetros principales:

  • matchKeyword (obligatorio): nombre de la empresa, ID de la empresa, número de registro o código de crédito social unificado.

  • keywordType (opcional): tipo de identificador de la empresa.

  • pageIndex (opcional): número de página, a partir de 1.

  • pageSize (opcional): número de elementos por página, por defecto 50, máximo 50.

Devuelve: total y resultList; workingSalary puede incluir la moneda, el salario mínimo y el salario máximo.

6. recruitment_trend

Función: Consulta una visión general de la tendencia de reclutamiento de la empresa; no devuelve series temporales mensuales.

Parámetros principales:

  • matchKeyword (obligatorio): nombre de la empresa, ID de la empresa, número de registro o código de crédito social unificado.

  • keywordType (opcional): tipo de identificador de la empresa.

Devuelve:

  • recruitingCurrentCount: número actual de contrataciones.

  • recruitingLastThreeMonthCount: número de contrataciones en los últimos tres meses.

  • recruitingLastThreeMonthNo: número de puestos publicados en los últimos tres meses.

  • recruitingAvgUpdate: frecuencia media de actualización de los puestos.

  • recruitingAvgWorkingSalary: salario medio de contratación.

Casos de uso

  1. Identificación de empresas: Confirme el nombre completo y el identificador estable de la empresa mediante el nombre abreviado o la palabra de marca.

  2. Investigación de necesidades de talento: Consulte los puestos que la empresa objetivo está contratando y sus líneas de talento.

  3. Análisis de empleadores: Conozca las ciudades de contratación, los beneficios, las palabras clave de los puestos y la actividad de reclutamiento de la empresa.

  4. Comparación salarial: Compare los rangos salariales de distintas empresas o puestos.

  5. Evaluación de tendencias de contratación: Analice el volumen de contratación actual y de los últimos tres meses, así como la frecuencia media de actualización.

  6. Inteligencia competitiva: Deduzca la dirección de expansión del negocio de la empresa a partir de los cambios en sus necesidades de contratación.

Notas de uso

  1. Nombres abreviados: Cuando el nombre abreviado de la empresa no pueda consultarse directamente, llame primero a recruitment_enterprise_search.

  2. Identificador de empresa: Tras confirmar un candidato, se recomienda utilizar el ID de la empresa o el código de crédito social unificado.

  3. Límites de paginación: pageIndex empieza en 1 y pageSize debe estar entre 1 y 50.

  4. Límites de listas: listLimit debe estar entre 1 y 200.

  5. Selección de vista: Utilice view=details cuando necesite registros de puestos; utilice view=statistics cuando necesite el perfil resumido.

  6. Alcance de la tendencia: recruitment_trend es una visión general actual y de los últimos tres meses, no una serie temporal mensual.

Ejemplos de preguntas de uso

recruitment_enterprise_search (búsqueda de empresas por palabras clave)

  1. ¿A qué empresa corresponde "小米"?

  2. Busque el nombre exacto y el ID de la empresa mediante "京东".

recruitment_job_search (búsqueda de puestos de trabajo)

  1. ¿Qué puestos está contratando actualmente 小米科技有限责任公司?

  2. Consulte los puestos de trabajo más recientes de 北京京东世纪贸易有限公司.

recruitment_employer_profile (perfil de reclutamiento del empleador)

  1. Analice las ciudades de contratación, los beneficios y el perfil de puestos de 小米科技有限责任公司.

  2. ¿Cómo es el salario medio de contratación de 珠海格力电器股份有限公司?

recruitment_demand_analysis (análisis de necesidades de contratación)

  1. Resuma la estructura de necesidades de talento de una empresa.

  2. Enumere las necesidades concretas de puestos de la empresa objetivo.

recruitment_salary (consulta de salarios de puestos)

  1. Consulte el rango salarial de los puestos de trabajo de 小米科技有限责任公司.

  2. ¿Cuál es el nivel salarial de los puestos de 珠海格力电器股份有限公司?

recruitment_trend (visión general de la tendencia de contratación)

  1. ¿Cómo es la actividad de contratación actual y la tendencia de los últimos tres meses de 小米科技有限责任公司?

  2. Consulte el número de contrataciones, el número de puestos y el salario medio recientes de 京东.

Pruebas y verificación

python -m py_compile server/mcp_server.py
python -m unittest discover -s tests -v

Las pruebas unitarias utilizan respuestas HTTP simuladas (Mock) y no llaman a la API real de reclutamiento de HandaaS.

Related MCP Connectors

Related MCP Servers

  • A
    license
    A
    quality
    C
    maintenance
    Provides job search, local resume parsing, and resume-to-job matching via official APIs and local file processing.
    5
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables querying real disclosed salary data across 20 regions, with tools to search jobs, retrieve salary statistics, and find similar roles.
    -
  • A
    license
    A
    quality
    B
    maintenance
    Enables searching live job postings, aggregating labour-market slices, and reporting how long listings have been open, with filters for titles, location, salary, and more.
    4
    301 npm
    MIT
  • F
    license
    Not graded
    quality
    C
    maintenance
    Enables AI-powered job search and resume matching with strict skill verification, resume parsing, and configurable user preferences, plus MCP tools for job search, Excel export, and email dispatch.
    -