Skip to main content
Glama
prakharagarwal-dev

LinkedIn MCP Server

LinkedIn MCP Server

CI CodeQL PyPI Python 3.12–3.13 License: Apache-2.0

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.

Features

Area

Function

What it does

Jobs

Search jobs

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

Read the complete job description, company, application method, and visible hiring team.

People

Search people

Search by keywords, connection degree, hiring status, location, current or past company, title, school, industry, services, language, connections, and followers.

Read profiles

Read the complete visible profile or request selected sections such as About, experience, education, skills, projects, certifications, and recommendations.

Companies

Search companies

Search by keywords, headquarters, industry, size, available jobs, and first-degree connections.

Read company details

Read Overview and About information, including website, headquarters, size, type, founding year, and specialties.

Posts

Search posts

Search by keywords, date, content type, author, company, relationship, mentions, author industry, and other visible filters.

Read posts

Read complete content, media, links, mentions, hashtags, reactions, and engagement.

Read discussions

Read paginated comments, replies, attachments, and reactions.

Publish posts

Publish supported personal text, link, image, video, document, poll, celebration, event, hiring, and expert-request posts.

Comment and reply

Add text, links, emoji, mentions, photos, or GIFs to posts and discussion threads.

React

Add, change, or remove reactions on posts and comments.

Network

List connections

Browse established first-degree connections with sorting and pagination.

Search connections

Search existing connections using applicable People filters.

List invitations

Browse received and sent invitations using LinkedIn's visible filters.

Manage invitations

Send connection requests with optional notes and accept or ignore incoming requests.

Messaging

Search messages

Search by recipient or message text using inbox categories and filters.

Read conversations

Read message history, replies, edits, reactions, and attachments.

Send messages

Send or reply in one-to-one conversations with text, links, emoji, files, images, and GIFs.

Actions that change LinkedIn require confirmation before execution. Every capability is task-specific; the server does not expose unrestricted browser, click, navigation, JavaScript, or network access.

See the capability matrix for exact filters, supported formats, inputs, outputs, limits, and unsupported features.

Related MCP server: LinkedIn MCP Pro Max

Installation

Install in VS Code Install in VS Code Insiders

Or add this to .vscode/mcp.json:

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

See the VS Code MCP documentation.

Add this to ~/.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

Codex CLI, the Codex IDE extension, and ChatGPT Desktop share this local configuration. Restart the client after saving it. See the Codex MCP documentation.

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

Check it with claude mcp list. See the Claude Code MCP documentation.

Download for Claude Desktop

Download the .mcpb file, then open Settings → Extensions → Advanced settings → Install Extension. See Claude Desktop's extension documentation.

Install in Cursor

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.

Add to Kiro

Or add a local server named linkedin-mcp to ~/.kiro/settings/mcp.json with command uvx and arguments --from linkedin-mcp-local linkedin-mcp serve --transport stdio. See the Kiro MCP documentation.

Add this to Zed settings:

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

See the Zed MCP documentation.

Add to LM Studio

Or open Program → Install → Edit mcp.json and add a local server named linkedin-mcp with command uvx and arguments --from linkedin-mcp-local linkedin-mcp serve --transport stdio. See the LM Studio MCP documentation.

Install in Goose

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:

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

See the Goose documentation.

For OpenCode v2, add this to 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"]
      }
    }
  }
}

See the OpenCode MCP 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.

Usage

First-time LinkedIn login

After installation, restart your MCP client. The server opens LinkedIn in a browser window where you can sign in and complete MFA or any checkpoint. Your session is saved locally and reused across restarts.

If the window does not open, run:

uvx --from linkedin-mcp-local linkedin-mcp login

The server never asks for or stores your LinkedIn password.

Try it

Ask your MCP client naturally:

Find jobs

Find remote software engineering jobs in India posted this week with Easy Apply.

Research people

Find engineering managers at Stripe in India and show me their relevant experience.

Research companies

Find fintech companies in Bengaluru with 51–200 employees and summarize each company.

Explore posts

Find recent LinkedIn posts about AI agents and summarize the most useful discussions.

Manage your network

Show my latest received connection requests.

Send a connection request to <profile URL> with the note <note>.

Send messages

Send <message> to <profile URL>.

Actions that change LinkedIn are shown for confirmation before they run.

Architecture

%%{init: {"flowchart": {"nodeSpacing": 55, "rankSpacing": 65}, "themeVariables": {"fontSize": "20px"}}}%%
flowchart LR
    A["MCP Client<br/>Codex · Claude · Cursor"] --> B["LinkedIn MCP Server"]
    B --> C["Typed LinkedIn Tools"]
    C --> D["Bounded Local Queue"]
    D --> E["Single Playwright Worker"]
    E -->|"Visible UI only"| F["LinkedIn"]

    E <--> G["Persistent Browser Profile"]
    B -. "Confirmation previews" .-> A

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; operation state lives only until the server process exits. Read the full architecture and privacy policy.

Configuration

Common settings control:

  • enabled LinkedIn surfaces, capability scopes, and effect classes;

  • the persistent browser profile and headed/headless operation;

  • the local attachment directory;

  • internal pacing, queue capacity, and bounded collection traversal; and

  • stdio or loopback-only Streamable HTTP transport.

See Configuration for ready-made permission presets, every environment variable, local HTTP sharing, and the container image.

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.

Safety

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.

  • Use only accounts and activity you are authorized to operate.

  • The server pauses on authentication expiry, checkpoints, restriction pages, permission failures, and configuration errors.

  • It does not implement CAPTCHA bypass, proxy rotation, fingerprint spoofing, credential harvesting, stealth plugins, or private LinkedIn endpoints.

  • Never commit or share the persistent browser profile or local assets.

See SECURITY.md and the security design.

More documentation

Support the project

If LinkedIn MCP Server is useful to you:

Let's connect

Have feedback or an idea for LinkedIn MCP Server?

License

Licensed under the Apache License 2.0.

A
license - permissive license
-
quality - not tested
A
maintenance

Maintenance

Maintainers
Response time
0dRelease cycle
4Releases (12mo)
Commit activity

Related MCP Servers

  • A
    license
    -
    quality
    D
    maintenance
    High-performance autonomous MCP server that turns LinkedIn into an API for AI workflows, enabling profile management, job search, content posting, and document generation.
    Last updated
    1
    MIT
  • A
    license
    -
    quality
    D
    maintenance
    MCP server for LinkedIn automation that enables AI agents to perform LinkedIn actions (search, inbox, feed, jobs, etc.) safely with human-like evasion and two-phase commit preview.
    Last updated
    9
    2
    MIT
  • A
    license
    -
    quality
    C
    maintenance
    MCP server for programmable LinkedIn automation via Playwright, offering 20 tools for profile management, messaging, feed interaction, and job searching through real browser automation.
    Last updated
    27
    MIT

View all related MCP servers

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.

  • Give AI agents the LinkedIn tools to find, qualify, engage, and follow up with prospects.

View all MCP Connectors

Latest Blog Posts

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/prakharagarwal-dev/linkedin-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server