LinkedIn MCP Zero
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@LinkedIn MCP Zerosearch for remote data scientist jobs"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
██╗ ██╗███╗ ██╗██╗ ██╗███████╗██████╗ ██╗███╗ ██╗
██║ ██║████╗ ██║██║ ██╔╝██╔════╝██╔══██╗██║████╗ ██║
██║ ██║██╔██╗ ██║█████╔╝ █████╗ ██║ ██║██║██╔██╗ ██║
██║ ██║██║╚██╗██║██╔═██╗ ██╔══╝ ██║ ██║██║██║╚██╗██║
███████╗██║██║ ╚████║██║ ██╗███████╗██████╔╝██║██║ ╚████║
╚══════╝╚═╝╚═╝ ╚═══╝╚═╝ ╚═╝╚══════╝╚═════╝ ╚═╝╚═╝ ╚═══╝
MCP ZERO - public-first LinkedIn intelligenceLinkedIn MCP Zero
32 MCP tools for jobs, resumes, matching, alerts, exports, and optional read-only browser intelligence.
No Docker required · Public-first · Low-RAM friendly · FastMCP · PyPI published
The Promise
LinkedIn MCP Zero gives AI agents useful LinkedIn intelligence while staying honest about risk:
Principle | What it means |
Public-first | Job search/details use public LinkedIn guest endpoints. No account required. |
Read-only | No automated posting, applying, connecting, or messaging. |
Local by default | Resume parsing, alerts, matching, exports, and state live on your machine. |
Lazy browser | Chrome/CDP tools load only when called, then auto-unload after idle time. |
Low-spec friendly | The server detects RAM/disk and recommends |
Easy install | Claude Code, Claude Desktop, Cursor, and custom MCP clients work with one command. |
Related MCP server: LinkedIn-Posts-Hunter-MCP-Server
Install In 10 Seconds
Check your system:
uvx mcp-server-linkedin-zero --doctorRun as an MCP server:
uvx mcp-server-linkedin-zeroUse the latest GitHub source instead of PyPI:
uvx --from git+https://github.com/SanthaKumar-K-2004/linkedin-mcp-zero mcp-server-linkedin-zero --doctorOne-Line Agent Setup
Claude Code:
claude mcp add linkedin-zero -- uvx mcp-server-linkedin-zeroClaude Desktop:
uvx mcp-server-linkedin-zero --install-client claude-desktopCursor, run inside the project where you want .cursor/mcp.json:
uvx mcp-server-linkedin-zero --install-client cursorCustom MCP clients:
uvx mcp-server-linkedin-zeroStreamable HTTP:
uvx mcp-server-linkedin-zero --transport streamable-http --host 127.0.0.1 --port 8000GitHub-source agent setup:
claude mcp add linkedin-zero -- uvx --from git+https://github.com/SanthaKumar-K-2004/linkedin-mcp-zero mcp-server-linkedin-zeroSafe Auto Config
The installer does not overwrite your whole MCP config. It:
Finds the right config path for Claude Desktop or Cursor.
Creates missing folders.
Reads existing JSON.
Preserves every other MCP server.
Adds or updates only
linkedin-zero.Creates a timestamped
.bakbackup before saving.Writes JSON atomically.
Manual config:
{
"mcpServers": {
"linkedin-zero": {
"command": "uvx",
"args": ["mcp-server-linkedin-zero"]
}
}
}Print the config without editing files:
uvx mcp-server-linkedin-zero --print-configPlatform Matrix
Platform | Command |
Claude Code |
|
Claude Desktop |
|
Cursor |
|
Custom stdio client |
|
HTTP client |
|
Docker | Not required |
Low-spec laptop | Supported, browser tools stay lazy |
What --doctor Checks
uvx mcp-server-linkedin-zero --doctorIt detects:
OS and Python version.
Python executable.
CPU count.
Total and available RAM.
Free disk.
Local data directory.
Chrome, Chromium, Brave, or Edge.
CDP URL.
Docker/display state.
Optional packages: JobSpy, PyMuPDF, Playwright, Patchright.
Recommended mode:
full,balanced, orlean.
Example:
{
"python": "3.12.13",
"cpu_count": 8,
"ram_total_mb": 7135,
"ram_available_mb": 2539,
"chrome": "/usr/bin/google-chrome",
"mode": "full",
"notes": ["Browser tools need `uv sync --extra browser`."]
}Tool Inventory
# | Tool | Engine | Risk | What it does |
1 |
| E1 | Zero | Search LinkedIn jobs |
2 |
| E1 | Zero | Search LinkedIn, Indeed, Google, ZipRecruiter, Glassdoor |
3 |
| E1 | Zero | Full public job details |
4 |
| E1 | Zero | Public jobs at a company |
5 |
| E1 | Zero | Company signals from public jobs |
6 |
| E1 | Zero | Company search from job signals |
7 |
| E1 | Zero | Salary extraction |
8 |
| E1 | Zero | Role/location trend summary |
9 |
| E1 | Zero | Industry job insights |
10 |
| E1 | Zero | Search with filters |
11 |
| RE | Zero | Parse TXT, MD, DOCX, optional PDF |
12 |
| RE | Zero | Skill gaps and suggestions |
13 |
| ME | Zero | Rank jobs against resume |
14 |
| ME | Zero | Compare 2-5 jobs |
15 |
| LO | Zero | CSV/JSON export |
16 |
| ST | Zero | Save recurring search |
17 |
| ST | Zero | List alerts |
18 |
| E1+ST | Zero | Run alerts and find new matches |
19 |
| E2 | Minimal | Read your profile through Chrome CDP |
20 |
| E2 | Minimal | Read a public/person profile |
21 |
| E2 | Minimal | LinkedIn people search |
22 |
| E2 | Minimal | Read connection list |
23 |
| E2 | Minimal | Read inbox list |
24 |
| E2 | Minimal | Read one thread |
25 |
| E2 | Minimal | Read home feed |
26 |
| E2 | Minimal | Read notifications |
27 |
| E2 | Minimal | Read sidebar suggestions |
28 |
| E2 | Low | Read company people page |
29 |
| E2 | Minimal | Check Chrome/CDP readiness |
30 |
| System | Zero | Runtime and engine status |
31 |
| System | Zero | Tool documentation |
32 |
| E3 | Low | Gated off by default |
Architecture
Claude / Cursor / Custom Agent
|
| MCP stdio or Streamable HTTP
v
┌──────────────────────────────────────────────────────────────┐
│ LinkedIn MCP Zero │
│ │
│ FastMCP tool layer -> 32 compact tools │
│ | │
│ +-- E1 Public APIs LinkedIn guest jobs │
│ +-- Resume Engine local TXT/MD/DOCX/PDF │
│ +-- Matching Engine local scoring │
│ +-- Storage SQLite + exports │
│ +-- E2 Browser real Chrome via CDP │
│ +-- E3 Voyager off by default │
│ │
│ Shared: cache, rate limit, config, autodetect, logging │
└──────────────────────────────────────────────────────────────┘Hidden Gems Wired
Hidden gem | Used for |
LinkedIn Guest Jobs API | Zero-login public job search/details |
JobSpy | Optional 5-board job search |
JSON-LD Schema.org | Stable salary, skills, dates, job detail parsing |
FastMCP | MCP server, schemas, stdio/HTTP transports |
Chrome DevTools Protocol | Real Chrome read-only profile/feed/inbox tools |
Patchright | Opt-in fallback when CDP is unavailable |
python-docx + PyMuPDF | Local resume parsing |
pydantic-settings | Type-safe environment config |
structlog | Structured logs |
Full-Power Local Mode
Clone and install everything:
git clone https://github.com/SanthaKumar-K-2004/linkedin-mcp-zero.git
cd linkedin-mcp-zero
uv sync --extra dev --extra multi --extra pdf --extra browserRun checks:
uv run pytest
uv run ruff check .
uv run linkedin-mcp-zero --doctorRun server:
uv run linkedin-mcp-zeroBrowser Tools
Start Chrome with CDP:
google-chrome --remote-debugging-port=9222Then call:
check_session
get_my_profile
search_people
get_feed
get_inboxOpt-in Patchright fallback:
LINKEDIN_MCP_ENABLE_PATCHRIGHT_FALLBACK=true uvx mcp-server-linkedin-zeroLow-Spec Mode
No Docker. No always-on browser. No heavy services.
If RAM or disk is low, the server still works:
Public job tools keep running.
Resume tools stay local.
Alerts use SQLite.
Browser tools wait until called.
Browser auto-unloads after idle time.
Optional extras are skipped unless installed.
Quality is not reduced; only engine loading is smarter.
Development And Release
Build:
uv buildPublish a new version:
uv publishRun from PyPI:
uvx mcp-server-linkedin-zeroRun from GitHub source:
uvx --from git+https://github.com/SanthaKumar-K-2004/linkedin-mcp-zero mcp-server-linkedin-zeroSafety
This project intentionally avoids automated write actions. It does not apply to jobs, send messages, create posts, connect with people, or modify your LinkedIn account. Browser tools are read-only and require your own Chrome session.
Voyager is gated off by default because it is riskier than public APIs or real browser reading.
License
Apache 2.0. See LICENSE.
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
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/SanthaKumar-K-2004/linkedin-mcp-zero'
If you have feedback or need assistance with the MCP directory API, please join our Discord server