Linkedin MCP server
LinkedIn for AI assistants — search, profiles, jobs, feed, messaging, and gated writes.
10 stars103 downloads/wk
Reviews
Write oneNobody has reviewed Linkedin yet.
If you have run it, two minutes of your experience saves the next person an afternoon.
Linkedin tools (22, 4 write)
write = sends, deletes, buys or postsRead from the package source without running it. The installed server may list more.
close_sessionClose the browser context and release resources (kills the Chrome process).
comment_on_postwrite action[ALPHA, write] Comment on a post. Gated: requires confirm:true. Returns a structured status.
connect_with_person[ALPHA, write] Send a connection request. Gated: requires confirm:true. Returns a structured status (ok | duplicate | already_connected | restricted | quota_exhausted | failed). Counts against the daily connect cap.
create_postwrite action[ALPHA, write] Publish a text post to your feed. Gated: requires confirm:true. Returns a structured status.
get_companyGet a company by its LinkedIn URL slug (e.g. "google", "microsoft"). Returns name, description, website, industry, size, HQ.
get_company_employeesList employees LinkedIn surfaces for a company (by URL slug). Returns name, headline, and public identifier (feed the slug to get_profile). Prospecting core.
get_company_postsGet a company's recent posts by its LinkedIn URL slug (e.g. "google"). Returns post text + a short meta line.
get_conversationRead messages in a LinkedIn conversation by its URN (get the URN from get_inbox).
get_feedGet recent posts from your LinkedIn home feed (author + post text).
get_inboxList your recent LinkedIn messaging conversations (title, last activity, unread count).
get_job_detailsGet full details for a job posting by its numeric id (the digits in /jobs/view/<id> or from search_jobs jobUrn).
get_my_profileGet the authenticated user's own LinkedIn profile (experience, education, headline, summary).
get_notificationsGet your recent LinkedIn notifications (headline, time, read state).
get_pending_invitationsList your pending connection invitations \u2014 received (inbound, with the urn/sharedSecret to accept later) and sent (outbound). Read-only.
get_profileGet a LinkedIn profile by public identifier (the slug in the profile URL, e.g. "satyanadella").
health_checkDeep health check: cookie login state, a LIVE Voyager probe (confirms the API actually answers, not just that a cookie exists), and today's safety-budget headroom (per-action used/cap/remaining + pending invites).
react_to_postwrite action[ALPHA, write] React to a post. Gated: requires confirm:true. Returns a structured status.
search_companiesSearch LinkedIn companies by keywords. Returns name + universalName slug (pass that to get_company for full details).
search_jobsSearch LinkedIn jobs by keywords (and optional location). Returns title, location, posted time.
search_peopleSearch LinkedIn people by keywords. Returns name, headline, location, and public identifier (pass that to get_profile for full details).
send_messagewrite action[ALPHA, write] Send a message. Pass thread_id / conversation_urn to REPLY into an existing conversation (verified); otherwise a new thread is started to recipient_urn (best-known). Gated: requires confirm:true. Returns a structured status. Counts against the daily message cap.
whoamiReport server version, browser/login status, and capabilities.
Public scan report
scanner v0.1.9 · 2026-09-26 · same rubric, same numbers if you re-run it
- Code scan2 source files scanned25/25
- –Live reliabilityno gateway calls yet and no remote to proben/a
- –Tool poisoningtools not inspected (local package is not executed); not countedn/a
- Auth qualitylocal package, no credentials required12/15
- Maintenancelast push 30 days ago12/15
- Maintainer identityregistry namespace matches repository owner; GitHub account older than a year8/10
What the publisher says
From the Linkedin repository's README, as published. We do not edit it. Read it on GitHub
🔗 LinkedIn MCP
LinkedIn for AI assistants — structured data via a real, stealth browser session
Give Claude, Cursor, and any MCP client access to LinkedIn — profiles, people/job/company search, feed, messaging, and your network — as clean structured JSON.
22 tools · reads + gated writes (connect, message, post, react, comment) · a real safety layer (daily caps, human pacing, circuit breaker) · 166 tests.
⚠️ Automating LinkedIn violates its User Agreement and can get an account restricted. No tool is ban-proof — and this one says so up front. Use a secondary account; read Account safety and DISCLAIMER.md first.
Why this exists
LinkedIn's internal Voyager API (the one its own web app uses) returns rich, structured JSON — but it sits behind Cloudflare bot-management, which rejects plain HTTP requests (a stateless fetch or curl gets stuck in an endless redirect, even with a valid cookie). The only reliable way to read LinkedIn data programmatically in 2026 is from inside a real browser that clears the challenge.
This project's approach:
- Drive a real Chrome via patchright (an undetected Playwright fork) so Cloudflare's challenge is solved with a genuine browser fingerprint.
- Query Voyager from inside the authenticated page — same-origin, the exact network path LinkedIn's own SPA uses → structured JSON, not scraped DOM text.
That last point is the edge over DOM-scraping tools: in-page API calls are locale-independent and resilient to UI redesigns, so they don't break on a moved CSS selector or a translated label.
✨ What's good here
How it compares
Shortened. The full README is on GitHub.
Nothing above is checked by us. What we check is on the safety report.
Install directly
Runs npx -y linkedin-mcp-tools on your machine. Read the scan report first; the gateway never runs local packages.
claude mcp add linkedin-mcp -- npx -y linkedin-mcp-tools
Linkedin: common questions
- Is Linkedin MCP server safe?
- Yes, by our scan: it is graded A (88/100). Read the Linkedin safety report
- How do I install Linkedin?
- It runs on your machine. Copy the Claude Code, Claude Desktop or Cursor config from the install section.
- Does Linkedin need an API key?
- Not as far as the registry entry and our scan can tell: no credentials are declared or required.
- Is Linkedin maintained?
- The last commit was 31 days ago (2026-08-27). The latest release is v2.0.3.
- What can I use instead of Linkedin?
- Servers from other publishers that do the same job: Linkedin Data MCP server, ZOOQ - LinkedIn Data for AI Agents MCP server and LinkedIn Toolkit MCP server. Compare all Linkedin alternatives.
Alternatives to Linkedin
Same job from other publishers: the closest match first, then the best rated.
Linkedin DataLinkedIn data for AI agents: profiles, companies, jobs, posts, search. Sales research, recruiting.not reviewedGrowingA
ZOOQ - LinkedIn Data for AI AgentsLive LinkedIn data for AI agents: profiles, companies, jobs, posts, email finding. No account risk.not reviewedGrowingA- LinkedIn ToolkitLinkedIn for AI agents from your own Chrome session: search, profiles, lists, outreach queue.not reviewedGrowingA
LinkedIn MCP Server (Salesbot)Human-in-the-loop LinkedIn outreach and a built-in sales CRM for AI agents. Safety-gated, anti-spam.not reviewedGrowingB- LinkedIn MCP ServerFind LinkedIn jobs and people, research companies, manage network, posts, and messages with MCP.not reviewedGrowingA