Skip to main content
Glama
felipfr

LinkedIn MCP Server

by felipfr
README.md
# 🌐 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.

## ✨ 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

```bash
# 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`

```bash
{
  "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:

```bash
# 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](LICENSE) file for details.

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

ActivityInactive
ResponsivenessNo issues