{
  "markdown": "# LinkedIn MCP Server\n\n<!-- mcp-name: io.github.prakharagarwal-dev/linkedin-mcp-server -->\n\n[![CI](https://github.com/prakharagarwal-dev/linkedin-mcp-server/actions/workflows/ci.yml/badge.svg)](https://github.com/prakharagarwal-dev/linkedin-mcp-server/actions/workflows/ci.yml)\n[![CodeQL](https://github.com/prakharagarwal-dev/linkedin-mcp-server/actions/workflows/codeql.yml/badge.svg)](https://github.com/prakharagarwal-dev/linkedin-mcp-server/actions/workflows/codeql.yml)\n[![PyPI](https://img.shields.io/pypi/v/linkedin-mcp-local.svg)](https://pypi.org/project/linkedin-mcp-local/)\n[![Python 3.12–3.14](https://img.shields.io/badge/Python-3.12%E2%80%933.14-3776AB.svg?logo=python&logoColor=white)](https://www.python.org/)\n[![License: Apache-2.0](https://img.shields.io/badge/License-Apache--2.0-blue.svg)](LICENSE)\n[![MCP Registry](https://img.shields.io/badge/MCP_Registry-listed-5A67D8.svg)](https://registry.modelcontextprotocol.io/v0.1/servers?search=io.github.prakharagarwal-dev%2Flinkedin-mcp-server)\n[![Glama](https://glama.ai/mcp/servers/prakharagarwal-dev/linkedin-mcp-server/badges/score.svg)](https://glama.ai/mcp/servers/prakharagarwal-dev/linkedin-mcp-server)\n[![OpenSSF Scorecard](https://api.scorecard.dev/projects/github.com/prakharagarwal-dev/linkedin-mcp-server/badge)](https://scorecard.dev/viewer/?uri=github.com/prakharagarwal-dev/linkedin-mcp-server)\n[![PyPI provenance](https://img.shields.io/badge/PyPI-provenance_attested-3775A9.svg?logo=pypi&logoColor=white)](https://pypi.org/project/linkedin-mcp-local/#files)\n[![Container provenance and SBOM](https://img.shields.io/badge/Container-provenance_%2B_SBOM-2496ED.svg?logo=docker&logoColor=white)](https://github.com/prakharagarwal-dev/linkedin-mcp-server/attestations)\n\n> **Disclaimer:** LinkedIn is a registered trademark of LinkedIn Corporation\n> and its affiliates. LinkedIn MCP Server is an independent, unofficial project\n> and is not affiliated with, endorsed by, sponsored by, or associated with\n> LinkedIn Corporation or its affiliates.\n\nA LinkedIn MCP server to find jobs, search people, research companies, manage\nyour network, publish and engage with posts, and read or send messages.\n\n## ⚡ Quickstart\n\n### 1. Connect Claude Code\n\n```bash\nclaude mcp add --scope user --transport stdio linkedin-mcp -- \\\n  uvx --from linkedin-mcp-local linkedin-mcp serve --transport stdio\n```\n\n### 2. Sign in to LinkedIn\n\nRestart Claude Code. A dedicated browser window opens automatically—sign in to\nLinkedIn and complete any required verification.\n\n> [!NOTE]\n> Your session is saved locally and reused automatically.\n\n### Supported platforms\n\nThe server runs natively on Windows, macOS, and Linux. CI executes the complete\noffline suite on Windows, macOS, Linux x86-64, and Linux ARM64. Browser and OS\nversion requirements follow the official\n[Playwright Python system requirements](https://playwright.dev/python/docs/intro#system-requirements).\n\n### 3. Try your first request\n\n```text\nFind remote software engineering jobs in India posted on LinkedIn this week.\n```\n\n## 🛠️ Tools\n\n> [!TIP]\n> **Verified** means the tool passed an end-to-end live compatibility test against LinkedIn's visible web UI on the date shown.\n\n| Area | Function | MCP tool | LinkedIn UI compatibility | What it does |\n| --- | --- | --- | --- | --- |\n| **Jobs** | Search jobs | `linkedin.jobs.search` | ![LinkedIn UI compatibility][status-linkedin-jobs-search]<br>![Compatibility check date][status-checked-on] | Search by keywords, location, distance, date, workplace, experience, employment type, company, industry, function, title, benefits, Easy Apply, verification, applicant count, network, and other visible filters. |\n|  | Read job details | `linkedin.jobs.get` | ![LinkedIn UI compatibility][status-linkedin-jobs-get]<br>![Compatibility check date][status-checked-on] | Read the complete job description, company, application method, and visible hiring team. |\n| **People** | Search people | `linkedin.people.search` | ![LinkedIn UI compatibility][status-linkedin-people-search]<br>![Compatibility check date][status-checked-on] | Search by keywords, connection degree, hiring status, location, current or past company, title, school, industry, services, language, connections, and followers. |\n|  | Read profiles | `linkedin.people.get` | ![LinkedIn UI compatibility][status-linkedin-people-get]<br>![Compatibility check date][status-checked-on] | Read the complete visible profile or request selected sections such as About, experience, education, skills, projects, certifications, and recommendations. |\n| **Companies** | Search companies | `linkedin.companies.search` | ![LinkedIn UI compatibility][status-linkedin-companies-search]<br>![Compatibility check date][status-checked-on] | Search by keywords, headquarters, industry, size, available jobs, and first-degree connections. |\n|  | Read company details | `linkedin.companies.get` | ![LinkedIn UI compatibility][status-linkedin-companies-get]<br>![Compatibility check date][status-checked-on] | Read Overview and About information, including website, headquarters, size, type, founding year, and specialties. |\n| **Posts** | Search posts | `linkedin.posts.search` | ![LinkedIn UI compatibility][status-linkedin-posts-search]<br>![Compatibility check date][status-checked-on] | Search by keywords, date, content type, author, company, relationship, mentions, author industry, and other visible filters. |\n|  | Read posts | `linkedin.posts.get` | ![LinkedIn UI compatibility][status-linkedin-posts-get]<br>![Compatibility check date][status-checked-on] | Read complete content, media, links, mentions, hashtags, reactions, and engagement. |\n|  | Read discussions | `linkedin.posts.comments.list` | ![LinkedIn UI compatibility][status-linkedin-posts-comments-list]<br>![Compatibility check date][status-checked-on] | Read paginated comments, replies, attachments, and reactions. |\n|  | Publish posts | `linkedin.posts.create` | ![LinkedIn UI compatibility][status-linkedin-posts-create]<br>![Compatibility check date][status-checked-on] | Publish supported personal text, link, image, video, document, poll, celebration, event, hiring, and expert-request posts. |\n|  | Comment | `linkedin.posts.comment` | ![LinkedIn UI compatibility][status-linkedin-posts-comment]<br>![Compatibility check date][status-checked-on] | Add text, links, emoji, mentions, photos, or GIFs to posts. |\n|  | React | `linkedin.posts.react` | ![LinkedIn UI compatibility][status-linkedin-posts-react]<br>![Compatibility check date][status-checked-on] | Add, change, or remove reactions on posts. |\n| **Network** | List connections | `linkedin.connections.list` | ![LinkedIn UI compatibility][status-linkedin-connections-list]<br>![Compatibility check date][status-checked-on] | Browse established first-degree connections with sorting and pagination. |\n|  | Search connections | `linkedin.connections.search` | ![LinkedIn UI compatibility][status-linkedin-connections-search]<br>![Compatibility check date][status-checked-on] | Search existing connections using applicable People filters. |\n|  | List invitations | `linkedin.invitations.list` | ![LinkedIn UI compatibility][status-linkedin-invitations-list]<br>![Compatibility check date][status-checked-on] | Browse received and sent invitations using LinkedIn's visible filters. |\n|  | Send invitations | `linkedin.invitations.send` | ![Not checked][status-not-checked] | Send connection requests with optional notes. |\n|  | Accept invitations | `linkedin.invitations.accept` | ![Not checked][status-not-checked] | Accept incoming connection requests. |\n|  | Ignore invitations | `linkedin.invitations.ignore` | ![Not checked][status-not-checked] | Ignore incoming connection requests. |\n| **Messaging** | Search messages | `linkedin.messaging.search` | ![LinkedIn UI compatibility][status-linkedin-messaging-search]<br>![Compatibility check date][status-checked-on] | Search by recipient or message text using inbox categories and filters. |\n|  | Read conversations | `linkedin.messaging.conversation.get` | ![LinkedIn UI compatibility][status-linkedin-messaging-conversation-get]<br>![Compatibility check date][status-checked-on] | Read message history, replies, edits, reactions, and attachments. |\n|  | Send messages | `linkedin.messaging.send` | ![LinkedIn UI compatibility][status-linkedin-messaging-send]<br>![Compatibility check date][status-checked-on] | Send or reply in one-to-one conversations with text, links, emoji, files, images, and GIFs. |\n| **Server** | Check runtime | `linkedin.server.status` | ![LinkedIn UI compatibility][status-linkedin-server-status]<br>![Compatibility check date][status-checked-on] | Inspect the shared runtime, queue, and active browser operation. |\n|  | Check LinkedIn session | `linkedin.session.status` | ![LinkedIn UI compatibility][status-linkedin-session-status]<br>![Compatibility check date][status-checked-on] | Inspect browser-profile, authentication, login, and pause state. |\n|  | List capabilities | `linkedin.capabilities.list` | ![LinkedIn UI compatibility][status-linkedin-capabilities-list]<br>![Compatibility check date][status-checked-on] | Inspect available capabilities, versions, read/write effects, and required LinkedIn surfaces. |\n\n`NOT CHECKED` tools remain covered by the offline simulator on every pull request.\n\n[status-linkedin-jobs-search]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.jobs.search.json&label=\n[status-linkedin-jobs-get]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.jobs.get.json&label=\n[status-linkedin-people-search]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.people.search.json&label=\n[status-linkedin-people-get]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.people.get.json&label=\n[status-linkedin-companies-search]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.companies.search.json&label=\n[status-linkedin-companies-get]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.companies.get.json&label=\n[status-linkedin-posts-search]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.posts.search.json&label=\n[status-linkedin-posts-get]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.posts.get.json&label=\n[status-linkedin-posts-comments-list]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.posts.comments.list.json&label=\n[status-linkedin-posts-create]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.posts.create.json&label=\n[status-linkedin-posts-comment]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.posts.comment.json&label=\n[status-linkedin-posts-react]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.posts.react.json&label=\n[status-linkedin-connections-list]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.connections.list.json&label=\n[status-linkedin-connections-search]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.connections.search.json&label=\n[status-linkedin-invitations-list]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.invitations.list.json&label=\n[status-linkedin-messaging-search]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.messaging.search.json&label=\n[status-linkedin-messaging-conversation-get]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.messaging.conversation.get.json&label=\n[status-linkedin-messaging-send]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.messaging.send.json&label=\n[status-linkedin-server-status]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.server.status.json&label=\n[status-linkedin-session-status]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.session.status.json&label=\n[status-linkedin-capabilities-list]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Flinkedin.capabilities.list.json&label=\n[status-checked-on]: https://img.shields.io/endpoint?url=https%3A%2F%2Fraw.githubusercontent.com%2Fprakharagarwal-dev%2Flinkedin-mcp-server%2Ftool-status%2Fbadges%2Fchecked-on.json&label=\n[status-not-checked]: https://img.shields.io/badge/status-not_checked-lightgrey?label=\n\nSee the [capability matrix](docs/CAPABILITY_MATRIX.md) for exact filters,\nsupported formats, inputs, outputs, limits, and unsupported features.\n\n## 📦 Installation\n\n<details open>\n<summary>Claude Code</summary>\n\n```bash\nclaude mcp add --scope user --transport stdio linkedin-mcp -- \\\n  uvx --from linkedin-mcp-local linkedin-mcp serve --transport stdio\n```\n\nCheck it with `claude mcp list`. See the\n[Claude Code MCP documentation](https://code.claude.com/docs/en/mcp).\n\n</details>\n\n<details>\n<summary>Claude Desktop</summary>\n\n[![Download for Claude Desktop](https://img.shields.io/badge/Claude_Desktop-Download_.mcpb-D97757?style=flat-square)](https://github.com/prakharagarwal-dev/linkedin-mcp-server/releases/latest)\n\nDownload the `.mcpb` file, then open **Settings → Extensions → Advanced\nsettings → Install Extension**.\nSee [Claude Desktop's extension documentation](https://support.claude.com/en/articles/10949351-getting-started-with-local-mcp-servers-on-claude-desktop).\n\n</details>\n\n<details>\n<summary>Codex and ChatGPT Desktop</summary>\n\n```bash\ncodex mcp add linkedin-mcp -- \\\n  uvx --from linkedin-mcp-local linkedin-mcp serve --transport stdio\n```\n\nCheck it with `codex mcp list`. Codex CLI, the Codex IDE extension, and ChatGPT\nDesktop share this local configuration. Restart the client after adding it. See\nthe [Codex MCP documentation](https://learn.chatgpt.com/docs/extend/mcp).\n\n</details>\n\n<details>\n<summary>VS Code and GitHub Copilot</summary>\n\n[![Install in VS Code](https://img.shields.io/badge/VS_Code-Install_Server-0098FF?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect?url=vscode%3Amcp%2Finstall%3F%257B%2522name%2522%253A%2522linkedin-mcp%2522%252C%2522command%2522%253A%2522uvx%2522%252C%2522args%2522%253A%255B%2522--from%2522%252C%2522linkedin-mcp-local%2522%252C%2522linkedin-mcp%2522%252C%2522serve%2522%252C%2522--transport%2522%252C%2522stdio%2522%255D%257D)\n[![Install in VS Code Insiders](https://img.shields.io/badge/VS_Code_Insiders-Install_Server-24bfa5?style=flat-square&logo=visualstudiocode&logoColor=white)](https://insiders.vscode.dev/redirect?url=vscode-insiders%3Amcp%2Finstall%3F%257B%2522name%2522%253A%2522linkedin-mcp%2522%252C%2522command%2522%253A%2522uvx%2522%252C%2522args%2522%253A%255B%2522--from%2522%252C%2522linkedin-mcp-local%2522%252C%2522linkedin-mcp%2522%252C%2522serve%2522%252C%2522--transport%2522%252C%2522stdio%2522%255D%257D)\n\nOr add this to `.vscode/mcp.json`:\n\n```json\n{\n  \"servers\": {\n    \"linkedin-mcp\": {\n      \"command\": \"uvx\",\n      \"args\": [\"--from\", \"linkedin-mcp-local\", \"linkedin-mcp\", \"serve\", \"--transport\", \"stdio\"]\n    }\n  }\n}\n```\n\nSee the [VS Code MCP documentation](https://code.visualstudio.com/docs/agent-customization/mcp-servers).\n\n</details>\n\n<details>\n<summary>Cursor</summary>\n\n[![Install in Cursor](https://cursor.com/deeplink/mcp-install-dark.svg)](https://cursor.com/en/install-mcp?name=LinkedIn%20MCP&config=eyJjb21tYW5kIjoidXZ4IC0tZnJvbSBsaW5rZWRpbi1tY3AtbG9jYWwgbGlua2VkaW4tbWNwIHNlcnZlIC0tdHJhbnNwb3J0IHN0ZGlvIn0%3D)\n\nFor manual setup, open **Cursor Settings → MCP →\nAdd new MCP server**, set the command to `uvx`, and set the arguments to\n`--from linkedin-mcp-local linkedin-mcp serve --transport stdio`.\nSee the [Cursor MCP documentation](https://docs.cursor.com/en/tools/mcp).\n\n</details>\n\n<details>\n<summary>Gemini CLI</summary>\n\nIn `~/.gemini/settings.json`, add a local server named `linkedin-mcp` under\n`mcpServers` with command `uvx` and arguments\n`--from linkedin-mcp-local linkedin-mcp serve --transport stdio`, then run\n`gemini mcp list`.\nSee the [Gemini CLI MCP documentation](https://github.com/google-gemini/gemini-cli/blob/main/docs/tools/mcp-server.md).\n\n</details>\n\n<details>\n<summary>Windsurf</summary>\n\nOpen **Settings → AI → Manage MCP Servers**, or add a local server named\n`linkedin-mcp` to `~/.codeium/windsurf/mcp_config.json` with command `uvx` and\narguments `--from linkedin-mcp-local linkedin-mcp serve --transport stdio`.\nSee the [Windsurf MCP documentation](https://docs.windsurf.com/windsurf/cascade/mcp).\n\n</details>\n\n<details>\n<summary>Cline</summary>\n\nOpen **MCP Servers → Configure**, then add a local server named `linkedin-mcp`\nwith command `uvx` and arguments\n`--from linkedin-mcp-local linkedin-mcp serve --transport stdio`.\nSee the [Cline MCP documentation](https://docs.cline.bot/mcp/mcp-overview).\n\n</details>\n\n<details>\n<summary>Roo Code</summary>\n\nOpen Roo Code's MCP settings and add a local server named `linkedin-mcp` to the\nglobal file or `.roo/mcp.json`, using command `uvx` and arguments\n`--from linkedin-mcp-local linkedin-mcp serve --transport stdio`.\nSee the [Roo Code MCP documentation](https://docs.roocode.com/features/mcp/using-mcp-in-roo).\n\n</details>\n\n<details>\n<summary>Zed</summary>\n\nAdd this to Zed settings:\n\n```json\n{\n  \"context_servers\": {\n    \"linkedin-mcp\": {\n      \"command\": \"uvx\",\n      \"args\": [\"--from\", \"linkedin-mcp-local\", \"linkedin-mcp\", \"serve\", \"--transport\", \"stdio\"]\n    }\n  }\n}\n```\n\nSee the [Zed MCP documentation](https://zed.dev/docs/ai/mcp).\n\n</details>\n\n<details>\n<summary>Goose</summary>\n\n[![Install in Goose](https://block.github.io/goose/img/extension-install-dark.svg)](https://block.github.io/goose/extension?cmd=uvx&arg=--from&arg=linkedin-mcp-local&arg=linkedin-mcp&arg=serve&arg=--transport&arg=stdio&id=linkedin-mcp&name=LinkedIn%20MCP&description=A%20LinkedIn%20MCP%20server%20to%20find%20jobs%2C%20search%20people%2C%20research%20companies%2C%20manage%20your%20network%2C%20publish%20and%20engage%20with%20posts%2C%20and%20read%20or%20send%20messages.)\n\nOr add a custom stdio extension with command `uvx` and arguments\n`--from linkedin-mcp-local linkedin-mcp serve --transport stdio`, or start one\nCLI session with:\n\n```bash\ngoose session --with-extension \\\n  \"uvx --from linkedin-mcp-local linkedin-mcp serve --transport stdio\"\n```\n\nSee the [Goose documentation](https://block.github.io/goose/).\n\n</details>\n\n<details>\n<summary>OpenCode</summary>\n\nFor OpenCode v2, add this to `opencode.json`:\n\n```json\n{\n  \"$schema\": \"https://opencode.ai/config.json\",\n  \"mcp\": {\n    \"servers\": {\n      \"linkedin-mcp\": {\n        \"type\": \"local\",\n        \"command\": [\"uvx\", \"--from\", \"linkedin-mcp-local\", \"linkedin-mcp\", \"serve\", \"--transport\", \"stdio\"]\n      }\n    }\n  }\n}\n```\n\nSee the [OpenCode MCP documentation](https://opencode.ai/v2/docs/mcp-servers).\n\n</details>\n\n<details>\n<summary>JetBrains AI Assistant</summary>\n\nOpen **Settings → Tools → AI Assistant → Model Context Protocol (MCP)**, click\n**Add**, set the command to `uvx`, and set the arguments to\n`--from linkedin-mcp-local linkedin-mcp serve --transport stdio`.\nSee the [JetBrains MCP documentation](https://www.jetbrains.com/help/ai-assistant/mcp.html).\n\n</details>\n\n<details>\n<summary>Continue</summary>\n\nCreate `.continue/mcpServers/linkedin-mcp.json` with a local server named\n`linkedin-mcp`, command `uvx`, and arguments\n`--from linkedin-mcp-local linkedin-mcp serve --transport stdio`.\nSee the [Continue MCP documentation](https://docs.continue.dev/customize/deep-dives/mcp).\n\n</details>\n\n<details>\n<summary>Warp</summary>\n\nOpen **Settings → AI → Manage MCP Servers → Add**, name the server\n`linkedin-mcp`, set the command to `uvx`, and set the arguments to\n`--from linkedin-mcp-local linkedin-mcp serve --transport stdio`.\nSee the [Warp MCP documentation](https://docs.warp.dev/agent-platform/capabilities/mcp).\n\n</details>\n\n## 💡 Examples\n\n### Find jobs\n\n```text\nFind remote software engineering jobs in India posted on LinkedIn this week with Easy Apply.\n```\n\n### Research people\n\n```text\nFind LinkedIn profiles for engineering managers at Stripe in India and show me their relevant experience.\n```\n\n### Research companies\n\n```text\nFind fintech companies in Bengaluru on LinkedIn with 51–200 employees and summarize each company.\n```\n\n### Explore posts\n\n```text\nFind recent LinkedIn posts about AI agents and summarize the most useful discussions.\n```\n\n### Manage your network\n\n```text\nShow my latest received connection requests on LinkedIn.\n```\n\n```text\nSend a LinkedIn connection request to <profile URL> with the note <note>.\n```\n\n### Send messages\n\n```text\nSend <message> on LinkedIn to <profile URL>.\n```\n\n## 🏗️ Architecture\n\n```text\n[Claude | Codex | Cursor | ...]\n               |\n       stdio / loopback HTTP\n               v\n      [Typed MCP boundary]\n               |\n               v\n       [Fair queue + pacing]\n               |\n      one operation at a time\n               v\n[Capability executor] ---> [Process-local calls, cursors, evidence]\n               |\n               v\n      [Capability page objects]\n               |\n               v\n[Browser manager: fresh page per call] <--> [Persistent auth profile]\n               |\n        visible web UI only\n               v\n           [LinkedIn]\n```\n\nEverything runs locally. There is no hosted backend, telemetry, database,\nexternal queue, LangGraph runtime, or credential service. Browser cookies live\nonly in the local Playwright profile. The first client starts one shared local\nruntime; later clients attach to it, and fair scheduling gives each client a\nturn between complete tool calls. Operation state lasts only for that runtime.\nRead the full [architecture](docs/ARCHITECTURE.md) and [privacy policy](PRIVACY.md).\n\n## 🔒 Privacy Policy\n\nThe server has no maintainer-operated backend, analytics, advertising, or\ntelemetry. LinkedIn receives normal visible-UI requests, and the invoking MCP\nclient receives tool results under its own data policy; the project sends\nnothing to the maintainer. Read the complete [privacy policy](PRIVACY.md) for\nprocessing, storage, sharing, retention, and deletion details.\n\n## 🛡️ Safety\n\nUse of this software is at your own risk. You are solely responsible for\ncomplying with [LinkedIn's User Agreement](https://www.linkedin.com/legal/user-agreement),\napplicable laws, and third-party rights. LinkedIn may limit or restrict accounts\nthat use [prohibited automation](https://www.linkedin.com/help/linkedin/answer/a1341387/).\nThe maintainers do not authorize spam, unauthorized data collection, privacy\nviolations, or circumvention of access controls.\n\n- Use only accounts and activity you are authorized to operate.\n- The server pauses on authentication expiry, checkpoints, restriction pages,\n  permission failures, and configuration errors.\n- It does not implement CAPTCHA bypass, proxy rotation, fingerprint spoofing,\n  credential harvesting, stealth plugins, or private LinkedIn endpoints.\n- Never commit or share the persistent browser profile or local assets.\n\nSee [SECURITY.md](SECURITY.md) and [the security design](docs/SECURITY.md).\n\n## 📚 More documentation\n\n- [Configuration](docs/CONFIGURATION.md)\n- [Capability matrix](docs/CAPABILITY_MATRIX.md)\n- [Architecture](docs/ARCHITECTURE.md)\n- [Testing](docs/TESTING.md)\n- [Collection verification](docs/COLLECTION_VERIFICATION_PROCESS.md)\n- [Distribution and registry coverage](docs/DISTRIBUTION.md)\n- [Publishing](docs/PUBLISHING.md)\n- [Changelog](CHANGELOG.md)\n\n## ❤️ Support the project\n\nIf LinkedIn MCP Server is useful to you:\n\n- [Star the repository](https://github.com/prakharagarwal-dev/linkedin-mcp-server)\n- [Sponsor continued development](https://github.com/sponsors/prakharagarwal-dev)\n\n## 🌐 Let's connect\n\nHave feedback or an idea for LinkedIn MCP Server?\n\n- [Connect with me on LinkedIn](https://www.linkedin.com/in/prakhar-agarwal-byte/)\n- [Follow me on GitHub](https://github.com/prakharagarwal-dev)\n- [Report a bug or request a feature](https://github.com/prakharagarwal-dev/linkedin-mcp-server/issues)\n\n## ⚖️ License\n\nLicensed under the [Apache License 2.0](LICENSE).\n",
  "bytes": 25761,
  "sha": "4b7cd92cec8a49bb056c1f2196257d5d7d53d2741e317db2fae64d494e254626",
  "repo_slug": "prakharagarwal-dev/linkedin-mcp-server",
  "fonte": "repo",
  "truncated": false,
  "api": "https://agentalog.com/api/listings/mcp_io_github_prakharagarwal_dev_linkedin_mc_8f77b0d8/readme"
}