linkedin-mcp-server
Servidor MCP de LinkedIn
Un servidor de producción listo para el Protocolo de Contexto de Modelo (MCP) que conecta agentes de IA (Google Gemini Spark, OpenAI Codex, Claude Desktop, Cursor, Windsurf) con la API REST de LinkedIn oficial.
Permite a los agentes de IA redactar y publicar actualizaciones de texto de forma autónoma, compartir vistas previas de enlaces enriquecidos, subir imágenes, crear encuestas interactivas, gestionar publicaciones existentes e interactuar con reacciones y comentarios en hilos.
https://github.com/user-attachments/assets/cda965be-d6a2-4a37-8d3c-29a68a9959e1
Características
Transporte MCP de Modo Dual:
Eventos enviados por el servidor (SSE) a través de
GET /mcpyPOST /messagespara clientes como Google Gemini Spark y Claude.HTTP Streamable a través de
POST /mcppara entornos de ejecución modernos de línea de comandos y agentes como OpenAI Codex (rmcp).
12 Herramientas Integrales:
Creación de Contenido: Actualizaciones de texto, tarjetas de vista previa de enlaces de artículos, subidas de imágenes binarias (pipeline de 3 pasos) y encuestas de múltiples opciones.
Gestión de Contenido: Eliminar publicaciones por URN, obtener estadísticas de participación (me gusta, comentarios, compartidos) y verificar conexiones de perfil de cuenta.
Interacción Social: Añadir reacciones (
LIKE,CELEBRATE,LOVE,INSIGHTFUL,FUNNY,EMPATHY), eliminar reacciones, añadir comentarios, responder en hilos y eliminar comentarios.
Validación Robusta: Impulsada por esquemas Zod para todos los parámetros de entrada de las herramientas.
Preparado para la Empresa: Conjunto automatizado de pruebas unitarias y de integración con cobertura del 100% de los endpoints.
Related MCP server: @isteam/linkedin-mcp
Referencia de Herramientas
Herramienta | Categoría | Descripción | Parámetros |
| Contenido | Publicar una publicación de texto estándar en tu feed de LinkedIn |
|
| Contenido | Publicar una publicación con una tarjeta de vista previa en la que se puede hacer clic |
|
| Contenido | Descargar una imagen desde una URL, subirla a LinkedIn y publicarla |
|
| Contenido | Crear una encuesta con duración personalizable |
|
| Gestión | Eliminar una publicación usando su URN de publicación |
|
| Gestión | Recuperar los detalles del perfil autenticado (nombre, ID de miembro) | Ninguno |
| Gestión | Obtener métricas de participación (me gusta, comentarios, compartidos) |
|
| Interacción | Añadir una reacción a una publicación |
|
| Interacción | Eliminar tu reacción de una publicación |
|
| Interacción | Añadir un comentario de nivel superior en una publicación |
|
| Interacción | Eliminar un comentario que hiciste |
|
| Interacción | Publicar una respuesta en hilo a un comentario existente |
|
Configuración y Autenticación
1. Configuración del Portal de Desarrolladores de LinkedIn
Crea una aplicación de LinkedIn en el Portal de Desarrolladores de LinkedIn.
En la pestaña Productos, solicita acceso a:
Compartir en LinkedIn (proporciona el permiso
w_member_social)Iniciar sesión con LinkedIn usando OpenID Connect (proporciona los permisos
openidyprofile)
En la pestaña Auth, añade una URL de redirección (por ejemplo,
https://httpbin.org/geto tu dominio).
2. Generar un Token de Acceso de Usuario
Construye la URL de autorización en tu navegador:
https://www.linkedin.com/oauth/v2/authorization?response_type=code&client_id=YOUR_CLIENT_ID&redirect_uri=YOUR_REDIRECT_URI&scope=openid%20profile%20w_member_socialAutoriza la aplicación y copia el parámetro de consulta
codede la URL de redirección.Intercambia el código por un token de acceso de 60 días:
curl -X POST https://www.linkedin.com/oauth/v2/accessToken \ -d "grant_type=authorization_code" \ -d "code=YOUR_AUTHORIZATION_CODE" \ -d "client_id=YOUR_CLIENT_ID" \ -d "client_secret=YOUR_CLIENT_SECRET" \ -d "redirect_uri=YOUR_REDIRECT_URI"Obtén tu ID de miembro:
curl -H "Authorization: Bearer YOUR_ACCESS_TOKEN" https://api.linkedin.com/v2/userinfoEl campo
subes tu identificador de miembro (por ejemplo,urn:li:person:<sub_id>).
Configuración
Copia el archivo de entorno de ejemplo:
cp .env.example .envConfigura tus variables de entorno .env:
LINKEDIN_ACCESS_TOKEN=your_oauth2_access_token
LINKEDIN_AUTHOR_URN=urn:li:person:your_member_sub_id
PORT=3000Ejecución Local
# Install dependencies
npm install
# Run unit and integration tests
npm test
# Start the server
npm start
# Start in development mode (with live reload)
npm run devIntegración con Clientes
OpenAI Codex CLI
Añade el servidor usando la CLI de Codex:
codex mcp add linkedin --url https://your-server-domain.com/mcpO añádelo directamente a ~/.codex/config.toml:
[mcp_servers.linkedin]
url = "https://your-server-domain.com/mcp"Claude Desktop
Añádelo a tu claude_desktop_config.json:
{
"mcpServers": {
"linkedin": {
"command": "node",
"args": ["/path/to/linkedin-mcp-server/server.js"],
"env": {
"LINKEDIN_ACCESS_TOKEN": "your_access_token",
"LINKEDIN_AUTHOR_URN": "urn:li:person:your_sub_id"
}
}
}
}Google Gemini Spark
En la configuración de tus aplicaciones personalizadas de Gemini Spark, introduce la URL de tu endpoint SSE público:
https://your-server-domain.com/mcpDespliegue
Desplegar en Railway
Instala la CLI de Railway:
npm i -g @railway/cliVincula o crea un proyecto:
railway init railway upEstablece las variables de entorno:
railway variable set LINKEDIN_ACCESS_TOKEN="your_token" LINKEDIN_AUTHOR_URN="urn:li:person:your_sub_id"Genera un dominio público:
railway domain
Desarrollo y Pruebas
El conjunto de pruebas incluye 62 pruebas unitarias y de integración automatizadas que cubren el cliente de la API de LinkedIn, las 12 herramientas de registro y ejecución, y los transportes SSE y HTTP Streamable.
# Run tests once
npm test
# Run tests in watch mode
npm run test:watchLicencia
Este proyecto está licenciado bajo la Licencia MIT.
This server cannot be installed
Maintenance
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
- AlicenseAqualityCmaintenanceFully featured MCP server that provides automation tools for LinkedIn, supporting browser-based scraping and API-based operations for content management, media uploads, and reactions.63MIT
- AlicenseAqualityDmaintenanceMCP server for LinkedIn that enables AI agents to post, comment, like, and manage content on LinkedIn.1061MIT
- AlicenseAqualityDmaintenanceHigh-performance autonomous MCP server that turns LinkedIn into an API for AI workflows, enabling profile management, job search, content posting, and document generation.141MIT
- Alicense-qualityCmaintenanceAI-powered LinkedIn automation server for content generation, profile/company data extraction, and connection request automation, integrating with MCP clients like Claude Desktop.MIT
Related MCP Connectors
Managed LinkedIn MCP server for AI agents: search, connect, message and enrich on accounts you own.
MCP server for LeadDelta — manage LinkedIn connections and CRM data via AI assistants.
MCP server for AI agents to plan, verify, and deploy Cloudflare-native apps.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
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/vahabcore/linkedin-mcp-server'
If you have feedback or need assistance with the MCP directory API, please join our Discord server