The full upstream README, mirrored here for reference. Install config, tool schemas, adoption signals, and an original overview live on the LinkedIn MCP Server listing page.
Disclaimer: LinkedIn is a registered trademark of LinkedIn Corporation and its affiliates. LinkedIn MCP Server is an independent, unofficial project and is not affiliated with, endorsed by, sponsored by, or associated with LinkedIn Corporation or its affiliates.
A LinkedIn MCP server to find jobs, search people, research companies, manage your network, publish and engage with posts, and read or send messages.
Restart Claude Code. A dedicated browser window opens automatically—sign in to LinkedIn and complete any required verification.
[!NOTE] Your session is saved locally and reused automatically.
The server runs natively on Windows, macOS, and Linux. CI executes the complete offline suite on Windows, macOS, Linux x86-64, and Linux ARM64. Browser and OS version requirements follow the official Playwright Python system requirements.
[!TIP] Verified means the tool passed an end-to-end live compatibility test against LinkedIn's visible web UI on the date shown.
| Area | Function | MCP tool | LinkedIn UI compatibility | What it does |
|---|---|---|---|---|
| Jobs | Search jobs | linkedin.jobs.search | Search by keywords, location, distance, date, workplace, experience, employment type, company, industry, function, title, benefits, Easy Apply, verification, applicant count, network, and other visible filters. | |
| Read job details | linkedin.jobs.get | Read the complete job description, company, application method, and visible hiring team. | ||
| People | Search people | linkedin.people.search | Search by keywords, connection degree, hiring status, location, current or past company, title, school, industry, services, language, connections, and followers. | |
| Read profiles | linkedin.people.get | Read the complete visible profile or request selected sections such as About, experience, education, skills, projects, certifications, and recommendations. | ||
| Companies | Search companies | linkedin.companies.search | Search by keywords, headquarters, industry, size, available jobs, and first-degree connections. | |
| Read company details | linkedin.companies.get | Read Overview and About information, including website, headquarters, size, type, founding year, and specialties. | ||
| Posts | Search posts | linkedin.posts.search | Search by keywords, date, content type, author, company, relationship, mentions, author industry, and other visible filters. | |
| Read posts | linkedin.posts.get | Read complete content, media, links, mentions, hashtags, reactions, and engagement. | ||
| Read discussions | linkedin.posts.comments.list | Read paginated comments, replies, attachments, and reactions. | ||
| Publish posts | linkedin.posts.create | Publish supported personal text, link, image, video, document, poll, celebration, event, hiring, and expert-request posts. | ||
| Comment | linkedin.posts.comment | Add text, links, emoji, mentions, photos, or GIFs to posts. | ||
| React | linkedin.posts.react | Add, change, or remove reactions on posts. | ||
| Network | List connections | linkedin.connections.list | Browse established first-degree connections with sorting and pagination. | |
| Search connections | linkedin.connections.search | Search existing connections using applicable People filters. | ||
| List invitations | linkedin.invitations.list | Browse received and sent invitations using LinkedIn's visible filters. | ||
| Send invitations | linkedin.invitations.send | Send connection requests with optional notes. | ||
| Accept invitations | linkedin.invitations.accept | Accept incoming connection requests. | ||
| Ignore invitations | linkedin.invitations.ignore | Ignore incoming connection requests. | ||
| Messaging | Search messages | linkedin.messaging.search | Search by recipient or message text using inbox categories and filters. | |
| Read conversations | linkedin.messaging.conversation.get | Read message history, replies, edits, reactions, and attachments. | ||
| Send messages | linkedin.messaging.send | Send or reply in one-to-one conversations with text, links, emoji, files, images, and GIFs. | ||
| Server | Check runtime | linkedin.server.status | Inspect the shared runtime, queue, and active browser operation. | |
| Check LinkedIn session | linkedin.session.status | Inspect browser-profile, authentication, login, and pause state. | ||
| List capabilities | linkedin.capabilities.list | Inspect available capabilities, versions, read/write effects, and required LinkedIn surfaces. |
NOT CHECKED tools remain covered by the offline simulator on every pull request.
See the capability matrix for exact filters, supported formats, inputs, outputs, limits, and unsupported features.
Check it with claude mcp list. See the
Claude Code MCP documentation.
Download the .mcpb file, then open Settings → Extensions → Advanced
settings → Install Extension.
See Claude Desktop's extension documentation.
Check it with codex mcp list. Codex CLI, the Codex IDE extension, and ChatGPT
Desktop share this local configuration. Restart the client after adding it. See
the Codex MCP documentation.
For manual setup, open Cursor Settings → MCP →
Add new MCP server, set the command to uvx, and set the arguments to
--from linkedin-mcp-local linkedin-mcp serve --transport stdio.
See the Cursor MCP documentation.
In ~/.gemini/settings.json, add a local server named linkedin-mcp under
mcpServers with command uvx and arguments
--from linkedin-mcp-local linkedin-mcp serve --transport stdio, then run
gemini mcp list.
See the Gemini CLI MCP documentation.
Open Settings → AI → Manage MCP Servers, or add a local server named
linkedin-mcp to ~/.codeium/windsurf/mcp_config.json with command uvx and
arguments --from linkedin-mcp-local linkedin-mcp serve --transport stdio.
See the Windsurf MCP documentation.
Open MCP Servers → Configure, then add a local server named linkedin-mcp
with command uvx and arguments
--from linkedin-mcp-local linkedin-mcp serve --transport stdio.
See the Cline MCP documentation.
Open Roo Code's MCP settings and add a local server named linkedin-mcp to the
global file or .roo/mcp.json, using command uvx and arguments
--from linkedin-mcp-local linkedin-mcp serve --transport stdio.
See the Roo Code MCP documentation.
Or add a custom stdio extension with command uvx and arguments
--from linkedin-mcp-local linkedin-mcp serve --transport stdio, or start one
CLI session with:
See the Goose documentation.
Open Settings → Tools → AI Assistant → Model Context Protocol (MCP), click
Add, set the command to uvx, and set the arguments to
--from linkedin-mcp-local linkedin-mcp serve --transport stdio.
See the JetBrains MCP documentation.
Create .continue/mcpServers/linkedin-mcp.json with a local server named
linkedin-mcp, command uvx, and arguments
--from linkedin-mcp-local linkedin-mcp serve --transport stdio.
See the Continue MCP documentation.
Open Settings → AI → Manage MCP Servers → Add, name the server
linkedin-mcp, set the command to uvx, and set the arguments to
--from linkedin-mcp-local linkedin-mcp serve --transport stdio.
See the Warp MCP documentation.
Everything runs locally. There is no hosted backend, telemetry, database, external queue, LangGraph runtime, or credential service. Browser cookies live only in the local Playwright profile. The first client starts one shared local runtime; later clients attach to it, and fair scheduling gives each client a turn between complete tool calls. Operation state lasts only for that runtime. Read the full architecture and privacy policy.
The server has no maintainer-operated backend, analytics, advertising, or telemetry. LinkedIn receives normal visible-UI requests, and the invoking MCP client receives tool results under its own data policy; the project sends nothing to the maintainer. Read the complete privacy policy for processing, storage, sharing, retention, and deletion details.
Use of this software is at your own risk. You are solely responsible for complying with LinkedIn's User Agreement, applicable laws, and third-party rights. LinkedIn may limit or restrict accounts that use prohibited automation. The maintainers do not authorize spam, unauthorized data collection, privacy violations, or circumvention of access controls.
See SECURITY.md and the security design.
If LinkedIn MCP Server is useful to you:
Have feedback or an idea for LinkedIn MCP Server?
Licensed under the Apache License 2.0.