Skip to main content
Glama
esinecan

instaffo-mcp-server

by esinecan

instaffo-mcp-server

Un servidor MCP que le da a un asistente de IA acceso a tu propia cuenta de candidato de Instaffo, autenticada con tu propia sesión del navegador. Herramienta personal de búsqueda de empleo. Se ejecuta completamente en local.

Instaffo es un mercado de reclutamiento bidireccional (los candidatos se emparejan con empresas). Este servidor expone el lado del candidato: lee tu perfil y sugerencias de empleo, lee conversaciones y realiza acciones de escritura reversibles, desde un cliente MCP.

Cómo funciona

Instaffo no tiene una API pública de candidatos, por lo que el servidor se autentica con una sesión real iniciada. Su aplicación web de candidatos se comunica con una API JSON limpia bajo app.instaffo.com/candidate/api/v1/*, autenticada únicamente por la cookie de sesión (sin token de portador). Por lo tanto, el servidor es un cliente httpx delgado autenticado por cookie, no un scraper. Un navegador (a través de patchright) se usa solo una vez, para generar la sesión al iniciar sesión.

MCP client ── stdio ──> instaffo-mcp-server ──cookie──> app.instaffo.com JSON API
                              │
                     storage-state.json  (cookies, written 0600, git-ignored)
                              ▲
                     instaffo-mcp --login  (one-time browser sign-in)

Related MCP server: Chrome MCP Server

Configuración

uv sync
uv run patchright install chromium     # one-time, for login only
uv run instaffo-mcp --login            # opens a browser; sign in once
uv run instaffo-mcp --auth-status      # confirm the session is stored

Regístralo con tu cliente MCP (stdio):

{
  "command": "uv",
  "args": ["run", "--directory", "/path/to/instaffo-mcp-server", "instaffo-mcp"]
}

Herramientas

Lecturas (sin efectos secundarios):

Herramienta

Lo que devuelve

instaffo_whoami

tu identidad (nombre, correo electrónico, puesto de trabajo)

instaffo_get_profile

tu perfil: antigüedad, ubicación, habilidades, resumen del CV

instaffo_list_job_suggestions

tus coincidencias actuales, con contadores

instaffo_get_job_suggestion

un rol completo: descripción, requisitos, salario, preguntas de selección

instaffo_list_conversations

solicitudes de empresas (interés entrante) y tus postulaciones

instaffo_auth_status

si hay una sesión presente (--deep la valida en vivo)

instaffo_search_skills

buscar uuids de habilidades en el vocabulario cerrado de Instaffo

Escrituras (cada herramienta de escritura requiere confirm; sin él no se realiza ninguna llamada de red y recibes la carga útil exacta que se enviaría):

Herramienta

Efecto

Endpoint

instaffo_save_job / instaffo_unsave_job

marcar una sugerencia como favorita

POST|DELETE .../job_suggestions/{uuid}/favorite

instaffo_set_about

reemplazar el texto Acerca de mí

POST .../profile/about

instaffo_set_skills

reemplazar el conjunto de habilidades

POST .../profile/skills

instaffo_set_languages

reemplazar la lista de idiomas

POST .../profile/languages

instaffo_set_industries

reemplazar la experiencia en la industria

POST .../profile/industries

instaffo_set_links

reemplazar enlaces sociales

POST .../profile/links

instaffo_set_seniority

establecer el nivel de experiencia laboral

POST .../profile/professional_background

instaffo_set_salary

expectativa salarial anual

PATCH .../factors/salary

instaffo_set_job_roles

roles objetivo (impulsa la coincidencia)

PATCH .../factors/job_roles

instaffo_set_job_seeking_activity

activo / pasivo

PATCH .../factors/job_seeking_activity

instaffo_add_cv_station

añadir una entrada de trabajo o educación

POST .../cv

instaffo_update_cv_station

editar una entrada en su lugar

PATCH .../cv/{uuid}

instaffo_delete_cv_station

eliminar una entrada (irreversible)

DELETE .../cv/{uuid}

instaffo_set_skill_experience

años por habilidad

POST .../experience_durations/bulk_save

Todos los endpoints son observados, nunca adivinados. El contrato del que se construyeron es docs/API.md, fechado y derivado de una captura registrada.

Por qué cada escritura lee de vuelta

Esta API devuelve un simple {"success": true} para cada escritura, y valida solo parcialmente — un PATCH con campos obligatorios omitidos, o con valores de tipo incorrecto, también devuelve {"success": true}. Por lo tanto, la respuesta no puede decirte qué se almacenó. Cada herramienta de escritura vuelve a leer GET /profile e informa verified más value_now; confía en esos, no en la respuesta.

Dos trampas de campo que vale la pena conocer antes de llamar a cualquier cosa:

  • instaffo_set_skills vuelve a derivar topSkills del lado del servidor. No hay ningún campo topSkills para enviar ni ningún control de UI para ello. Un guardado con el conjunto de habilidades sin cambios aún movió las tres principales.

  • Skills cap at 23 (skills 20 + topSkills 3). Excederlo devuelve "maximum is 20 characters" — el mensaje dice characters, la unidad son elementos.

Supervisado, a propósito: postular y enviar mensajes

Dos acciones están intencionalmente no implementadas como herramientas de lanzar y olvidar: postular a un empleo y enviar un mensaje a un reclutador.

Postular no es una sola solicitud. Es un asistente de varios pasos que escribe representaciones personales duraderas en tu perfil real antes de enviarlo:

  1. una autoevaluación de habilidades (controles deslizantes de años por habilidad requerida, p. ej., 0-5), que se guarda automáticamente en tu perfil a través de experience_durations/bulk_save,

  2. tu expectativa salarial (prellenada desde tu perfil),

  3. una selección múltiple de "herramientas de IA que usas" y "habilidades de IA",

  4. un envío final que crea la postulación y abre un chat con el reclutador.

Debido a que esas son elecciones reales y visibles sobre cómo te presentas, y el endpoint de envío final solo aparece una vez que se completa todo el flujo, las herramientas de postular y enviar mensajes se dejan para una sesión supervisada donde el propietario de la cuenta aprueba las entradas. No están construidas contra un endpoint adivinado. Los subpasos observados y la forma del asistente se registran aquí para que esa sesión sea rápida.

Comandos

instaffo-mcp                 # run the MCP server (stdio)
instaffo-mcp --login         # headed manual login, persist the session
instaffo-mcp --capture       # record app API traffic to a JSONL (diagnostics)
instaffo-mcp --auth-status [--deep]

Seguridad y privacidad

  • El material de sesión (profile/, storage-state.json, captures/, .env) reside en ~/.instaffo-mcp, se escribe con permisos 0600 y está en git-ignore. Nunca se confirma.

  • Las herramientas de escritura están protegidas por confirmación y solo tocan superficies reversibles.

  • Esta es una herramienta personal y local para tu propia cuenta. No almacena datos de nadie más y solo se comunica con Instaffo con tu propia sesión.

Trabajo previo

Los patrones de captura de sesión y navegador están adaptados en espíritu de stickerdaniel/linkedin-mcp-server (Apache-2.0), que autentica una sesión personal de LinkedIn de la misma manera.

Install Server
A
license - permissive license
A
quality
C
maintenance

Maintenance

Maintainers
Response time
Release cycle
Releases (12mo)
Commit activity

Resources

Unclaimed servers have limited discoverability.

Looking for Admin?

If you are the server author, to access and configure the admin panel.

Related MCP Servers

  • A
    license
    Not graded
    quality
    B
    maintenance
    Enables AI assistants to control and automate your Chrome browser directly, leveraging existing login states and configurations for tasks like content analysis, semantic search across tabs, screenshots, network monitoring, and interactive operations.
    10
    MIT
  • A
    license
    Not graded
    quality
    C
    maintenance
    Lets AI assistants control your real Chrome browser to perform web tasks like reading pages, taking screenshots, clicking, and typing, using your existing logged-in sessions.
    131
    MIT
  • A
    license
    Not graded
    quality
    A
    maintenance
    Enables AI assistants to access and search local browser history, bookmarks, open tabs, and downloads for personalized context.
    MIT

View all related MCP servers

Related MCP Connectors

  • Give AI agents the LinkedIn tools to find, qualify, engage, and follow up with prospects.

  • Run LinkedIn outreach from your AI chat: find leads, launch campaigns, send, and reply.

  • Let ChatGPT, Claude & Cursor use your Mac: email, calendar, iMessage, Teams, files. Local, free.

View all MCP Connectors

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/esinecan/instaffo-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server