linkedin-profile-scraper
Lakome LinkedIn MCP Server
Un servidor ligero del Model Context Protocol (MCP) que ofrece a los agentes de IA capacidades de extracción de perfiles de LinkedIn en tiempo real, impulsado por la Lakome API.
Este servidor actúa como puente entre los clientes LLM (como Claude Desktop, Cursor, Cline, Roo Code y agentes de IA personalizados) y el endpoint de inteligencia de LinkedIn de Lakome.
⚡ Características
Transporte stdio estándar: compatible con cualquier cliente MCP estándar.
Una única herramienta especializada: expone
extract_linkedin_profilepara extraer todos los detalles estructurados del perfil (experiencia laboral, educación, aptitudes, titular, resumen, información de contacto y más).Procesamiento en lotes: permite consultar una o varias URL de perfiles de LinkedIn en una única solicitud.
Gestión de errores: valida las claves de autenticación y devuelve mensajes de error formateados.
Related MCP server: SalesTouch
📋 Requisitos previos
Node.js v18.0.0 o superior
Una clave de API de Lakome (consigue la tuya en mcp.lakome.in)
🔑 Configuración de tu LAKOME_API_KEY
El servidor necesita tu LAKOME_API_KEY para autenticar las solicitudes con el endpoint de Lakome API.
En macOS / Linux
export LAKOME_API_KEY="your_actual_lakome_api_key_here"En Windows (PowerShell)
$env:LAKOME_API_KEY="your_actual_lakome_api_key_here"En Windows (Command Prompt)
set LAKOME_API_KEY=your_actual_lakome_api_key_here🚀 Instalación y configuración del cliente
1. Configuración de Claude Desktop
Añade la configuración del servidor a tu claude_desktop_config.json:
macOS:
~/Library/Application Support/Claude/claude_desktop_config.jsonWindows:
%APPDATA%\Claude\claude_desktop_config.json
{
"mcpServers": {
"lakome-linkedin": {
"command": "node",
"args": [
"/absolute/path/to/mcp-server/index.js"
],
"env": {
"LAKOME_API_KEY": "your_actual_lakome_api_key_here"
}
}
}
}Nota para usuarios de Windows: reemplaza
/absolute/path/to/mcp-server/index.jspor tu ruta absoluta de Windows (p. ej.,D:\\extensions and projects\\lakome API project\\mcp-server\\index.js).
2. Configuración de Cursor IDE
Añade lo siguiente al .cursor/mcp.json de tu proyecto o a la configuración global de MCP:
{
"mcpServers": {
"lakome-linkedin": {
"command": "node",
"args": [
"./mcp-server/index.js"
],
"env": {
"LAKOME_API_KEY": "your_actual_lakome_api_key_here"
}
}
}
}3. CLI de Smithery.ai
Puedes instalar y ejecutar el servidor automáticamente mediante Smithery:
npx -y @smithery/cli install @lakome/linkedin-mcp --client claude🛠️ Referencia de herramientas
extract_linkedin_profile
Extrae datos e inteligencia de perfil completos y estructurados de una o varias URL de perfiles de LinkedIn.
Parámetros
Nombre | Tipo | Obligatorio | Descripción |
|
| Sí | Un array de URL de perfiles de LinkedIn para extraer (p. ej., |
Ejemplo de invocación
{
"profileUrls": [
"https://www.linkedin.com/in/williamhgates",
"https://www.linkedin.com/in/satyanadella"
]
}Ejemplo de respuesta de salida
[
{
"url": "https://www.linkedin.com/in/williamhgates",
"data": {
"fullName": "Bill Gates",
"headline": "Co-chair, Bill & Melinda Gates Foundation",
"location": "Seattle, Washington, United States",
"summary": "Co-chair of the Bill & Melinda Gates Foundation. Founder of Breakthrough Energy...",
"experiences": [
{
"title": "Co-chair",
"company": "Bill & Melinda Gates Foundation",
"dateRange": "2000 - Present"
}
],
"education": [
{
"schoolName": "Harvard University",
"degreeName": "Honorary Doctorate",
"fieldOfStudy": "Law"
}
],
"skills": ["Philanthropy", "Software Development", "Global Health"]
},
"status": "success"
}
]🧪 Pruebas locales y desarrollo
Instala las dependencias:
cd mcp-server npm installEjecuta el servidor en local:
LAKOME_API_KEY="your_api_key" node index.jsInspecciona con MCP Inspector:
npx @modelcontextprotocol/inspector node index.js
📄 Licencia
Licencia MIT © Lakome
Available Tools
1 toolextract_linkedin_profileA
Extracts comprehensive, structured profile data and intelligence from one or more LinkedIn profile URLs using the Lakome API.
| Name | Required | Description | Default |
|---|---|---|---|
| profileUrls | Yes | Array of full LinkedIn profile URLs to extract (e.g. ["https://www.linkedin.com/in/williamhgates"]) |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
When annotations are absent, the description carries the full disclosure burden. It only says 'extracts' and 'using the Lakome API', but leaves out whether network access is required, whether authentication is needed, whether any state changes occur, and what 'intelligence' entails.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence conveys the action, resource, input cardinality, and backend API. There is no fluff, and the key detail that this is a batch-style URL extraction is front-loaded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
The core purpose is clear, but the absence of an output schema and behavioral notes means the agent lacks information about the structure of the returned data, failure behavior, or what data is actually considered 'intelligence'. For such a simple tool, the bare-bones description is minimal but still has noticeable gaps.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema already documents the single parameter (profileUrls) with an example, giving 100% coverage. The description adds no new parameter-level information beyond restating the one-or-more constraint.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb ('extract') and identifies the resource clearly: comprehensive structured profile data and intelligence from LinkedIn profile URLs via the Lakome API. It distinguishes the tool's scope immediately, including the ability to handle one or more URLs.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The usage context is explicit: call this tool when you need structured LinkedIn profile data from the given profile URLs. No exclusions or alternative tools exist in the provided context, so the clear scenario description is sufficient.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
1 tool update
v1.0.0- First observed
extract_linkedin_profile
TDQS
Scored across 1 tool
Only one tool exists, so there is zero ambiguity between tools. The tool's purpose is clearly defined and distinct.
The single tool follows a clear verb_noun pattern (extract_linkedin_profile), which is consistent and descriptive.
A single tool is borderline for a server, but for a focused LinkedIn profile scraper it is not unreasonable. Still, the surface is minimal and offers no auxiliary capabilities.
The tool's description indicates it extracts comprehensive structured profile data from one or more URLs, which fully covers the server's stated purpose. No obvious gaps in the domain of LinkedIn profile scraping.
Maintenance
Related MCP Connectors
Managed LinkedIn MCP server for AI agents: search, connect, message and enrich on accounts you own.
Live LinkedIn data for AI agents: profiles, companies, jobs, posts, email finding. No account risk.
LinkedIn jobs, companies and people for AI agents, plus messages and invites via your own account.
A hosted LinkedIn MCP server for your own account. Paste one address into Claude, ChatGPT, Cursor or n8n to read your inbox, send messages and invitations, and search people. Free to start. Not made by LinkedIn.
Related MCP Servers
- 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
- AlicenseNot gradedqualityCmaintenanceMCP server for AI-native LinkedIn prospecting. It enables lead research, audience building, conversation management, and controlled outreach actions such as messaging and publishing through an OAuth-protected remote endpoint.2MIT
- AlicenseAqualityDmaintenanceAn MCP server that lets AI assistants like Claude read LinkedIn data through your own logged-in browser session. Access profiles and companies, search for jobs, or get job details.19Apache 2.0
- AlicenseAqualityDmaintenanceAn MCP server that lets AI assistants like Claude read LinkedIn data through your own logged-in browser session. Access profiles and companies, search for jobs, or get job details.17Apache 2.0