
How to add LinkedIn MCP Server to Cursor
Lets agents read LinkedIn profiles, companies, jobs and messages through your own logged-in browser session. Paste the config into ~/.cursor/mcp.json and restart Cursor.
Last updated June 14, 2026 · 2.6k★ · stdio · no auth
Cursor config for LinkedIn MCP Server
uvx mcp-server-linkedin@latest{
"mcpServers": {
"linkedin-mcp-server": {
"command": "uvx",
"args": [
"mcp-server-linkedin@latest"
],
"env": {
"UV_HTTP_TIMEOUT": "300"
}
}
}
}Requires `uv` (the Python package runner). Install it from https://docs.astral.sh/uv/ if `uvx` is not found.
Setup steps
- 1Open Cursor → Settings → MCP → Add new MCP server (or edit ~/.cursor/mcp.json directly).
- 2Paste the LinkedIn MCP Server config below into the "mcpServers" object.
- 3Fill in placeholder secrets, then save.
- 4Cursor reloads MCP servers automatically — check Settings → MCP for a green status dot.
- 5Ask Cursor to use one of LinkedIn MCP Server's tools to confirm it's connected.
Before you start
- uv installed (provides uvx): `curl -LsSf https://astral.sh/uv/install.sh | sh`
- A LinkedIn account you're willing to use with automation (ToS risk is on you)
- First run downloads the Patchright Chromium browser cache automatically; Docker users must create a login profile on the host first
What LinkedIn MCP Server can do in Cursor
get_person_profileGet a person's profile with explicit section selection (experience, education, skills, posts, contact info and more)
get_my_profileGet the authenticated user's own LinkedIn profile
connect_with_personSend or accept a connection request, with optional note (known open issues)
get_sidebar_profilesExtract profile URLs from sidebar recommendation sections on a profile page
get_inboxList recent conversations from the LinkedIn messaging inbox
get_conversationRead a specific messaging conversation by username or thread ID
search_conversationsSearch messages by keyword
send_messageSend a message to a LinkedIn user (requires confirmation)
Security
Drives a real logged-in browser session stored under ~/.linkedin-mcp/ — treat that profile directory like a credential. Automated access violates LinkedIn's User Agreement and accounts can be restricted or banned; the README says this explicitly and recommends sparing, personal use. No API keys are stored in your MCP config.
LinkedIn MCP Server + Cursor FAQ
Where is the Cursor config file?
Cursor reads MCP servers from ~/.cursor/mcp.json. Paste the LinkedIn MCP Server config there under the "mcpServers" key and restart the client.
Is LinkedIn MCP Server safe to use with Cursor?
Drives a real logged-in browser session stored under ~/.linkedin-mcp/ — treat that profile directory like a credential. Automated access violates LinkedIn's User Agreement and accounts can be restricted or banned; the README says this explicitly and recommends sparing, personal use. No API keys are stored in your MCP config.
Is linkedin-mcp-server safe — will I get banned?
There is real risk: LinkedIn's User Agreement prohibits automated access, and the README states accounts using automation can be restricted or banned, with no safety guarantee. It mitigates detection by driving a real browser session (Patchright) rather than hitting private APIs, but use it sparingly and on an account you accept risk for.
Does it need a LinkedIn API key?
No. It works through your own logged-in browser session — you sign in once in a real browser window (or import cookies from Chrome/Brave/Edge/Arc), and the session persists under ~/.linkedin-mcp/. That's also why there are no env credentials in the config.
Why does the config use @latest instead of a pinned version?
Because LinkedIn changes its page structure frequently and scraper fixes ship in frequent releases. The maintainer explicitly warns that pinning a version makes the server quietly rot and return empty or wrong data; uvx re-resolves @latest from PyPI on each client launch.