LinkedIn MCP Server

Capacidades MCP locales, tipadas y con políticas aplicadas, sobre la interfaz web visible de LinkedIn.

Documentación

LinkedIn MCP Server

CI CodeQL PyPI Python 3.12–3.13 License: Apache-2.0 MCP Registry Glama OpenSSF Scorecard PyPI provenance Container provenance and SBOM

Aviso legal: LinkedIn es una marca comercial registrada de LinkedIn Corporation y sus afiliados. LinkedIn MCP Server es un proyecto independiente y no oficial y no está afiliado, respaldado, patrocinado ni asociado con LinkedIn Corporation o sus afiliados.

Un servidor MCP de LinkedIn para encontrar empleos, buscar personas, investigar empresas, gestionar tu red, publicar e interactuar con publicaciones, y leer o enviar mensajes.

Herramientas

ÁreaFunciónHerramienta MCPCompatibilidad con la interfaz de LinkedInQué hace
EmpleosBuscar empleoslinkedin.jobs.searchCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Busca por palabras clave, ubicación, distancia, fecha, lugar de trabajo, experiencia, tipo de empleo, empresa, industria, función, cargo, beneficios, Easy Apply, verificación, número de solicitantes, red y otros filtros visibles.
Leer detalles del empleolinkedin.jobs.getCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Lee la descripción completa del empleo, la empresa, el método de solicitud y el equipo de contratación visible.
PersonasBuscar personaslinkedin.people.searchCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Busca por palabras clave, grado de conexión, estado de contratación, ubicación, empresa actual o anterior, cargo, escuela, industria, servicios, idioma, conexiones y seguidores.
Leer perfileslinkedin.people.getCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Lee el perfil visible completo o solicita secciones seleccionadas como Acerca de, experiencia, educación, habilidades, proyectos, certificaciones y recomendaciones.
EmpresasBuscar empresaslinkedin.companies.searchCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Busca por palabras clave, sede central, industria, tamaño, empleos disponibles y conexiones de primer grado.
Leer detalles de la empresalinkedin.companies.getCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Lee la información de Descripción general y Acerca de, incluidos sitio web, sede central, tamaño, tipo, año de fundación y especialidades.
PublicacionesBuscar publicacioneslinkedin.posts.searchCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Busca por palabras clave, fecha, tipo de contenido, autor, empresa, relación, menciones, industria del autor y otros filtros visibles.
Leer publicacioneslinkedin.posts.getCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Lee el contenido completo, medios, enlaces, menciones, hashtags, reacciones e interacción.
Leer discusioneslinkedin.posts.comments.listCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Lee comentarios paginados, respuestas, archivos adjuntos y reacciones.
Publicar publicacioneslinkedin.posts.createCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Publica publicaciones personales de texto, enlace, imagen, video, documento, encuesta, celebración, evento, contratación y solicitud de experto compatibles.
Comentarlinkedin.posts.commentCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Agrega texto, enlaces, emojis, menciones, fotos o GIF a las publicaciones.
Reaccionarlinkedin.posts.reactCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Agrega, cambia o elimina reacciones en las publicaciones.
RedListar conexioneslinkedin.connections.listCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Explora las conexiones de primer grado establecidas con ordenación y paginación.
Buscar conexioneslinkedin.connections.searchCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Busca conexiones existentes utilizando los filtros de Personas aplicables.
Listar invitacioneslinkedin.invitations.listCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Explora las invitaciones recibidas y enviadas utilizando los filtros visibles de LinkedIn.
Enviar invitacioneslinkedin.invitations.sendNo verificadoEnvía solicitudes de conexión con notas opcionales.
Aceptar invitacioneslinkedin.invitations.acceptNo verificadoAcepta solicitudes de conexión entrantes.
Ignorar invitacioneslinkedin.invitations.ignoreNo verificadoIgnora solicitudes de conexión entrantes.
MensajeríaBuscar mensajeslinkedin.messaging.searchCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Busca por destinatario o texto del mensaje utilizando categorías y filtros de la bandeja de entrada.
Leer conversacioneslinkedin.messaging.conversation.getCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Lee el historial de mensajes, respuestas, ediciones, reacciones y archivos adjuntos.
Enviar mensajeslinkedin.messaging.sendCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Envía o responde en conversaciones uno a uno con texto, enlaces, emojis, archivos, imágenes y GIF.
ServidorVerificar tiempo de ejecuciónlinkedin.server.statusCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Inspecciona el tiempo de ejecución compartido, la cola y la operación activa del navegador.
Verificar sesión de LinkedInlinkedin.session.statusCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Inspecciona el perfil del navegador, la autenticación, el inicio de sesión y el estado de pausa.
Listar capacidadeslinkedin.capabilities.listCompatibilidad con la interfaz de LinkedIn
Fecha de verificación de compatibilidad
Inspecciona las capacidades disponibles, versiones, efectos de lectura/escritura y superficies de LinkedIn requeridas.

Las NOT CHECKED herramientas restantes están cubiertas por el simulador sin conexión en cada solicitud de extracción.

Cada herramienta que modifica la cuenta realiza una acción completa. Los clientes MCP pueden usar la anotación destructiva de la herramienta para solicitar confirmación o aplicar su propia política de aprobación duradera por herramienta. Cada capacidad es específica de una tarea; el servidor no expone acceso sin restricciones al navegador, clics, navegación, JavaScript o red.

Consulta la matriz de capacidades para conocer los filtros exactos, formatos compatibles, entradas, salidas, límites y funciones no compatibles.

Instalación

VS Code y GitHub Copilot

Install in VS Code Install in VS Code Insiders

O agrega esto a .vscode/mcp.json:

{
  "servers": {
    "linkedin-mcp": {
      "command": "uvx",
      "args": ["--from", "linkedin-mcp-local", "linkedin-mcp", "serve", "--transport", "stdio"]
    }
  }
}

Consulta la documentación de MCP para VS Code.

Codex y ChatGPT Desktop

Agrega esto a ~/.codex/config.toml:

[mcp_servers."linkedin-mcp"]
command = "uvx"
args = ["--from", "linkedin-mcp-local", "linkedin-mcp", "serve", "--transport", "stdio"]
startup_timeout_sec = 60
tool_timeout_sec = 900
default_tools_approval_mode = "auto"

Codex CLI, la extensión de IDE de Codex y ChatGPT Desktop comparten esta configuración local. Reinicia el cliente después de guardarla. Consulta la documentación de MCP para Codex.

Claude Code
claude mcp add --scope user --transport stdio linkedin-mcp -- \
  uvx --from linkedin-mcp-local linkedin-mcp serve --transport stdio

Verifícalo con claude mcp list. Consulta la documentación de MCP para Claude Code.

Claude Desktop

Download for Claude Desktop

Descarga el archivo .mcpb y luego abre Configuración → Extensiones → Configuración avanzada → Instalar extensión. Consulta la documentación de extensiones de Claude Desktop.

Cursor

Install in Cursor

Para la configuración manual, abre Configuración de Cursor → MCP → Agregar nuevo servidor MCP, establece el comando en uvx y los argumentos en --from linkedin-mcp-local linkedin-mcp serve --transport stdio. Consulta la documentación de MCP para Cursor.

Gemini CLI

En ~/.gemini/settings.json, agrega un servidor local llamado linkedin-mcp en mcpServers con el comando uvx y los argumentos --from linkedin-mcp-local linkedin-mcp serve --transport stdio, luego ejecuta gemini mcp list. Consulta la documentación de MCP para Gemini CLI.

Windsurf

Abre Configuración → IA → Administrar servidores MCP, o agrega un servidor local llamado linkedin-mcp a ~/.codeium/windsurf/mcp_config.json con el comando uvx y los argumentos --from linkedin-mcp-local linkedin-mcp serve --transport stdio. Consulta la documentación de MCP para Windsurf.

Cline

Abre Servidores MCP → Configurar, luego agrega un servidor local llamado linkedin-mcp con el comando uvx y los argumentos --from linkedin-mcp-local linkedin-mcp serve --transport stdio. Consulta la documentación de MCP para Cline.

Roo Code

Abre la configuración de MCP de Roo Code y agrega un servidor local llamado linkedin-mcp al archivo global o a .roo/mcp.json, usando el comando uvx y los argumentos --from linkedin-mcp-local linkedin-mcp serve --transport stdio. Consulta la documentación de MCP para Roo Code.

Zed

Agrega esto a la configuración de Zed:

{
  "context_servers": {
    "linkedin-mcp": {
      "command": "uvx",
      "args": ["--from", "linkedin-mcp-local", "linkedin-mcp", "serve", "--transport", "stdio"]
    }
  }
}

Consulta la documentación de MCP para Zed.

Goose

Install in Goose

O agrega una extensión stdio personalizada con el comando uvx y los argumentos --from linkedin-mcp-local linkedin-mcp serve --transport stdio, o inicia una sesión CLI con:

goose session --with-extension \
  "uvx --from linkedin-mcp-local linkedin-mcp serve --transport stdio"

Consulta la documentación de Goose.

OpenCode

Para OpenCode v2, agrega esto a opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "servers": {
      "linkedin-mcp": {
        "type": "local",
        "command": ["uvx", "--from", "linkedin-mcp-local", "linkedin-mcp", "serve", "--transport", "stdio"]
      }
    }
  }
}

Consulta la documentación de OpenCode MCP.

JetBrains AI Assistant

Abre Configuración → Herramientas → AI Assistant → Model Context Protocol (MCP), haz clic en Agregar, establece el comando en uvx y los argumentos en --from linkedin-mcp-local linkedin-mcp serve --transport stdio. Consulta la documentación de JetBrains MCP.

Continue

Crea .continue/mcpServers/linkedin-mcp.json con un servidor local llamado linkedin-mcp, comando uvx y argumentos --from linkedin-mcp-local linkedin-mcp serve --transport stdio. Consulta la documentación de Continue MCP.

Warp

Abre Configuración → AI → Administrar servidores MCP → Agregar, nombra el servidor linkedin-mcp, establece el comando en uvx y los argumentos en --from linkedin-mcp-local linkedin-mcp serve --transport stdio. Consulta la documentación de Warp MCP.

Uso

Inicio de sesión por primera vez en LinkedIn

Después de la instalación, reinicia tu cliente MCP. El servidor abre LinkedIn en una ventana del navegador donde puedes iniciar sesión y completar MFA o cualquier punto de control. En este primer uso, crea automáticamente su propio perfil persistente de Chromium. Tu sesión se guarda en ese perfil y se reutiliza entre reinicios.

Si aún no has iniciado el servidor y deseas iniciar sesión manualmente, crea primero el perfil dedicado:

uvx --from linkedin-mcp-local linkedin-mcp profile create
uvx --from linkedin-mcp-local linkedin-mcp login

El servidor nunca solicita ni almacena tu contraseña de LinkedIn.

Controles de sesión local

Usa estos comandos sin localizar PIDs ni eliminar archivos de bloqueo manualmente:

# Show or gracefully stop the process that owns this account
uvx --from linkedin-mcp-local linkedin-mcp status
uvx --from linkedin-mcp-local linkedin-mcp stop

# Inspect the dedicated Chromium profile or sign out visibly
uvx --from linkedin-mcp-local linkedin-mcp profile status
uvx --from linkedin-mcp-local linkedin-mcp logout

Para un perfil limpio, ejecuta linkedin-mcp profile reset. El comando solicita confirmación, archiva el perfil anterior y crea un reemplazo. Consulta Configuración para el ciclo de vida completo.

Pruébalo

Pregunta a tu cliente MCP de forma natural:

Buscar empleos

Encuentra empleos remotos de ingeniería de software en India publicados esta semana con Easy Apply.

Investigar personas

Encuentra gerentes de ingeniería en Stripe en India y muéstrame su experiencia relevante.

Investigar empresas

Encuentra empresas fintech en Bengaluru con 51–200 empleados y resume cada empresa.

Explorar publicaciones

Encuentra publicaciones recientes de LinkedIn sobre agentes de IA y resume las discusiones más útiles.

Gestionar tu red

Muestra mis últimas solicitudes de conexión recibidas.

Envía una solicitud de conexión a <profile URL> con la nota <note>.

Enviar mensajes

Envía <message> a <profile URL>.

Aprobación de acciones

Las herramientas que modifican la cuenta están marcadas como destructivas. La aprobación está controlada completamente por el cliente MCP: puede solicitar, rechazar o aprobar de forma duradera una herramienta exacta. El servidor no mantiene un segundo ámbito ni sistema de permisos. Para permitir que una tarea programada de Codex publique publicaciones sin supervisión mientras que cualquier otra acción de LinkedIn mantiene su comportamiento normal del cliente, aprueba solo la herramienta de publicación directa:

[mcp_servers."linkedin-mcp".tools."linkedin.posts.create"]
approval_mode = "approve"

Reinicia Codex después de cambiar su configuración. La herramienta sigue resolviendo el objetivo visible exacto, valida cualquier ruta de archivo adjunto local, tipo y tamaño, realiza una acción de interfaz de usuario específica y verifica la condición posterior visible. Evita aprobar todo el servidor cuando solo se necesita una acción. Consulta Configuración para el modelo completo.

Arquitectura

%%{init: {"flowchart": {"nodeSpacing": 55, "rankSpacing": 65}, "themeVariables": {"fontSize": "20px"}}}%%
flowchart LR
    A["MCP Clients<br/>Codex · Claude · Cursor"] --> B["stdio bridges or<br/>loopback HTTP"]
    B --> C["Shared Local Runtime<br/>Typed LinkedIn Tools"]
    C --> D["Fair Per-Client Queue"]
    D --> E["One Atomic Browser Operation<br/>Fresh Page · Global Pacing"]
    E -->|"Visible UI only"| F["LinkedIn"]
    E <--> G["One Chromium Context<br/>Persistent Profile"]
    C -. "Tool annotations and results" .-> A

Todo se ejecuta localmente. No hay backend alojado, telemetría, base de datos, cola externa, tiempo de ejecución de LangGraph ni servicio de credenciales. Las cookies del navegador viven solo en el perfil local de Playwright. El primer cliente inicia un tiempo de ejecución local compartido; los clientes posteriores se conectan a él, y la programación justa le da a cada cliente un turno entre llamadas de herramienta completas. El estado de la operación dura solo para ese tiempo de ejecución. Lee la arquitectura completa y la política de privacidad.

Configuración

La configuración común controla:

  • el perfil persistente del navegador y la operación con interfaz gráfica o sin interfaz;
  • el directorio local de archivos adjuntos;
  • el ritmo interno, la capacidad de la cola y el recorrido acotado de la colección; y
  • transporte HTTP Streamable solo de stdio o loopback.

La disponibilidad y aprobación de herramientas se configuran en el cliente MCP. Consulta Configuración para cada variable de entorno del servidor, guía de políticas del cliente, uso compartido de HTTP local e imagen de contenedor.

Política de privacidad

El servidor no tiene backend operado por el mantenedor, análisis, publicidad ni telemetría. LinkedIn recibe solicitudes normales de interfaz visible, y el cliente MCP que invoca recibe resultados de herramientas bajo su propia política de datos; el proyecto no envía nada al mantenedor. Lee la política de privacidad completa para obtener detalles sobre procesamiento, almacenamiento, uso compartido, retención y eliminación.

Seguridad

El uso de este software es bajo tu propio riesgo. Eres el único responsable de cumplir con el Acuerdo de usuario de LinkedIn, las leyes aplicables y los derechos de terceros. LinkedIn puede limitar o restringir cuentas que utilicen automatización prohibida. Los mantenedores no autorizan spam, recopilación de datos no autorizada, violaciones de privacidad ni la evasión de controles de acceso.

  • Usa solo cuentas y actividades que estés autorizado a operar.
  • El servidor se pausa ante la expiración de autenticación, puntos de control, páginas de restricción, fallos de permisos y errores de configuración.
  • No implementa evasión de CAPTCHA, rotación de proxies, suplantación de huellas digitales, recopilación de credenciales, complementos sigilosos ni endpoints privados de LinkedIn.
  • Nunca confirmes ni compartas el perfil persistente del navegador ni los activos locales.

Consulta SECURITY.md y el diseño de seguridad.

Más documentación

Apoya el proyecto

Si LinkedIn MCP Server te resulta útil:

Conectemos

¿Tienes comentarios o una idea para LinkedIn MCP Server?

Licencia

Licenciado bajo la Licencia Apache 2.0.