Skip to main content
Glama
LinkedIn MCP Server

LinkedIn MCP Server

by felipfr

🌐 LinkedIn MCP Server

A powerful Model Context Protocol server for LinkedIn API integration

📋 Overview

LinkedIn MCP Server brings the power of the LinkedIn API to your AI assistants through the Model Context Protocol (MCP). This TypeScript server empowers AI agents to interact with LinkedIn data, search profiles, find jobs, and even send messages.

MCP (Model Context Protocol) is an open protocol that standardizes how applications provide context to LLMs - think of it as a USB-C port for AI applications, connecting models to external data sources and tools.

Related MCP server: LinkedIn Sales & Navigator MCP Server

✨ Features

🔍 LinkedIn API Tools

  • Profile Search - Find LinkedIn profiles with advanced filters

  • Profile Retrieval - Get detailed information about LinkedIn profiles

  • Job Search - Discover job opportunities with customized criteria

  • Messaging - Send messages to LinkedIn connections

  • Network Stats - Access connection statistics and analytics

🛠️ Technical Highlights

  • TypeScript - Built with modern TypeScript for type safety and developer experience

  • Dependency Injection - Uses TSyringe for clean, testable architecture

  • Structured Logging - Comprehensive logging with Pino for better observability

  • MCP Integration - Implements the Model Context Protocol for seamless AI assistant connectivity

  • REST Client - Axios-powered API client with automatic token management

🚀 Development

Prerequisites

  • Node.js 20+

  • npm/yarn

Setup

# Install dependencies
npm install

# Run the development server
npm run start:dev

# Build the server
npm run build

📦 Installation

To use with Claude Desktop or other MCP-compatible AI assistants:

Configuration

  • macOS: ~/Library/Application Support/Claude/claude_desktop_config.json

  • Windows: %APPDATA%/Claude/claude_desktop_config.json

{
  "mcpServers": {
    "linkedin-mcp-server": {
      "command": "/path/to/linkedin-mcp-server/build/index.js"
    }
  }
}

🔧 Debugging

MCP servers communicate over stdio which can make debugging challenging. Use the integrated MCP Inspector:

# Debug with MCP Inspector
npm run inspector

The Inspector provides a browser-based interface for monitoring requests and responses.

🔒 Security

This server handles sensitive LinkedIn authentication credentials. Review the token management system to ensure it meets your security requirements.

📜 License

This project is licensed under the MIT License. See the LICENSE file for details.

Available Tools

28 tools
accept_connection_requestA

Accept incoming connection requests to grow your network

Inputs: requestId (required).

authenticate_linkedinA

Authenticate with LinkedIn OAuth - works with standard LinkedIn Developer Application

Inputs: no named parameters.

comment_on_postA

Add a thoughtful comment to a LinkedIn post

Inputs: postId (required), comment (required).

create_postB

Create a LinkedIn post with text content and visibility settings

Inputs: content (required), visibility.

get_company_infoC

Get basic company information - limited access, may require Marketing Solutions partnership in future

Inputs: companyId (required).

get_company_profileC

Get detailed company profile information - limited access, may require Marketing Solutions partnership in future

Inputs: companyId (required).

get_connection_requestsB

View and manage pending incoming connection requests

Inputs: no named parameters.

get_connectionsB

Retrieve your complete LinkedIn connections list

Inputs: no named parameters.

get_conversationsA

Access your LinkedIn conversation threads and chat history

Inputs: no named parameters.

get_feedB

Access your LinkedIn feed with posts from your network

Inputs: count.

get_jobB

Get comprehensive details about a specific LinkedIn job posting

Inputs: jobId (required).

get_job_applicationsB

Track status and details of your job applications

Inputs: no named parameters.

get_messagesB

Retrieve messages from a specific conversation thread

Inputs: conversationId (required).

get_my_postsA

Retrieve your published LinkedIn posts with engagement metrics

Inputs: count.

get_my_profileA

Get my LinkedIn profile information using OpenID Connect - works with standard OAuth scopes

Inputs: no named parameters.

get_post_analyticsB

Get detailed analytics and engagement data for your posts

Inputs: postId (required).

get_profileB

Access detailed LinkedIn profile information for any user

Inputs: profileId (required).

get_profile_analyticsC

Access comprehensive profile performance and engagement metrics

Inputs: no named parameters.

get_saved_jobsA

Retrieve all your saved and bookmarked job listings

Inputs: no named parameters.

like_postC

Like a LinkedIn post to show appreciation

Inputs: postId (required).

revoke_linkedin_authA

Revoke LinkedIn authentication and clear stored tokens

Inputs: no named parameters.

save_jobA

Bookmark a job for later review and application

Inputs: jobId (required).

search_jobsB

Search LinkedIn jobs with advanced filters and criteria

Inputs: keywords, location, company, experienceLevel, +5 more.

search_peopleC

Search LinkedIn professionals with advanced filters and criteria

Inputs: keywords, firstName, lastName, companyName, +4 more.

send_connection_requestB

Send personalized connection requests to LinkedIn users

Inputs: profileId (required), message.

send_messageA

Send direct messages to your LinkedIn connections

Inputs: recipientId (required), subject (required), body (required).

share_postC

Share a LinkedIn post with optional commentary

Inputs: postId (required), commentary.

update_partnershipsA

Update LinkedIn API partnership access settings when you get approved for special access

Inputs: communityManagement, talentSolutions, salesSolutions, marketingSolutions.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    TDQS

    B3.2/5.0

    Scored across 28 tools

    Disambiguation4/5

    Most tools have distinct purposes, but there is slight overlap between get_my_profile and get_profile, and between get_company_info and get_company_profile. These are minor and descriptions help.

    Naming Consistency5/5

    All tools use a consistent snake_case verb_noun pattern (e.g., accept_connection_request, search_jobs). No mixed conventions or unclear names.

    Tool Count2/5

    At 28 tools, the count exceeds the 25+ threshold for 'too many' per the rubric. While each tool has a clear role, the server would benefit from consolidation or pruning.

    Completeness3/5

    Covers many core LinkedIn actions (search, post, message, connect), but lacks update/delete for posts, profile editing, and connection management beyond accept. Notable gaps for a full-lifecycle tool.

    Maintenance

    ActivityNo data
    ResponsivenessOutdated data

    Related MCP Connectors

    Related MCP Servers

    • F
      license
      Not graded
      quality
      D
      maintenance
      A comprehensive Model Context Protocol server that enables AI assistants to interact with LinkedIn APIs for profile management, content creation, networking, messaging, and analytics.
      2
      -
    • F
      license
      A
      quality
      Not graded
      maintenance
      Enables AI assistants to interact with LinkedIn and LinkedIn Sales Navigator for searching profiles, managing leads, and handling messaging via cookie-based authentication. It supports professional networking tasks such as sending connection requests and retrieving account details through the Model Context Protocol.
      22
      1
      -
    • A
      license
      A
      quality
      B
      maintenance
      Released 3.0.0: 22 MCP tools, guided offline setup, local stdio, Chrome and manual login. No hosted deployment or job-research brief. Writes need opt-in, reviewed preview and human approval. Unofficial; provider compatibility, first-use cohorts, coordinated erasure and Windows privacy proof remain unverified. No mandatory paid service.
      22
      393 npm
      12
      MIT
    • A
      license
      Not graded
      quality
      D
      maintenance
      Enables AI assistants to connect to LinkedIn, accessing profiles and companies, searching for jobs and people, managing saved jobs, updating job-search profile settings, and inspecting analytics.
      1
      Apache 2.0