MCP Hub
Back to servers

LinkedIn MCP Server

An MCP server for LinkedIn automation that enables users to search for jobs, retrieve profile details, manage connections, and read or send messages. It leverages Playwright and Browserbase to interact with LinkedIn through an existing authenticated browser session.

glama
Updated
Mar 14, 2026

@striderlabs/mcp-linkedin

A Model Context Protocol (MCP) server for LinkedIn automation, powered by Playwright and Browserbase.

Features

ToolDescription
get_profileGet a LinkedIn user profile (name, headline, experience, education)
search_jobsSearch job listings by title, location, and company
get_job_detailsGet full details of a specific job posting
get_connectionsList your LinkedIn connections with optional name filter
get_messagesGet recent messages and InMail conversations
send_connection_requestSend a connection request with an optional personalised note

Requirements

  • Node.js 18+
  • A Browserbase account with a CDP-enabled session URL
  • LinkedIn account (the browser session must already be logged in to LinkedIn)

Installation

npm install @striderlabs/mcp-linkedin

Or install from a local tarball:

npm install ./striderlabs-mcp-linkedin-1.0.0.tgz

Configuration

Set the following environment variable before starting the server:

VariableRequiredDescription
BROWSERBASE_CDP_URLYesBrowserbase CDP WebSocket endpoint URL

Getting your Browserbase CDP URL

  1. Create a session in the Browserbase dashboard or via their API.
  2. The session will expose a CDP WebSocket URL, typically in the format:
    wss://connect.browserbase.com?apiKey=YOUR_API_KEY&sessionId=SESSION_ID
    
  3. Ensure the browser session is logged into LinkedIn before invoking LinkedIn tools.

Usage

Running the MCP server

BROWSERBASE_CDP_URL="wss://connect.browserbase.com?apiKey=..." npx @striderlabs/mcp-linkedin

Claude Desktop configuration

Add to your claude_desktop_config.json:

{
  "mcpServers": {
    "linkedin": {
      "command": "npx",
      "args": ["-y", "@striderlabs/mcp-linkedin"],
      "env": {
        "BROWSERBASE_CDP_URL": "wss://connect.browserbase.com?apiKey=YOUR_KEY&sessionId=YOUR_SESSION"
      }
    }
  }
}

Tool Reference

get_profile

Fetch a LinkedIn profile summary.

{
  "profile_url": "https://www.linkedin.com/in/username"
}

Omit profile_url to fetch the currently logged-in user's own profile.


search_jobs

Search for job listings.

{
  "title": "Software Engineer",
  "location": "San Francisco",
  "company": "Anthropic",
  "limit": 10
}

All fields are optional. limit defaults to 10 (max 25).


get_job_details

Get full details of a job posting.

{
  "job_url": "https://www.linkedin.com/jobs/view/1234567890"
}

get_connections

List your connections.

{
  "limit": 20,
  "search": "Alice"
}

search is optional. limit defaults to 20 (max 50).


get_messages

Get recent message conversations.

{
  "limit": 10
}

limit defaults to 10 (max 20).


send_connection_request

Send a connection request.

{
  "profile_url": "https://www.linkedin.com/in/username",
  "note": "Hi! I'd love to connect and discuss opportunities."
}

note is optional and must be 300 characters or fewer (LinkedIn limit).

Important Notes

  • Authentication: This server does not handle LinkedIn login. Your Browserbase session must already be authenticated with LinkedIn.
  • Rate limits: LinkedIn may rate-limit or flag automated activity. Use responsibly.
  • Selectors: LinkedIn frequently updates its UI. If scraping breaks, the CSS selectors in src/index.ts may need updating.
  • LinkedIn ToS: Automated access to LinkedIn may violate their Terms of Service. Use for personal productivity and authorised use cases only.

Development

# Install dependencies
npm install

# Build TypeScript
npm run build

# Run in development mode
npm run dev

License

MIT — Copyright (c) 2024 Strider Labs

Reviews

No reviews yet

Sign in to write a review