mcpField
L
LinkedIn MCP Server

LinkedIn MCP Server

本地服务
github.com社交媒体710 周前更新

关于 LinkedIn MCP Server

LinkedIn MCP Server 向 MCP 客户端提供 LinkedIn 职位、人员、公司、帖子、人脉和消息操作。它使用本地保存的浏览器会话搜索和读取信息,也支持发布帖子、发送消息等操作。

主要功能

  1. 01搜索职位、人员和公司
  2. 02读取个人资料和职位详情
  3. 03搜索并管理帖子
  4. 04浏览联系人和邀请
  5. 05读取和发送消息
  6. 06检查会话与服务器状态

适用场景

  1. 01按地点和职位条件查找工作
  2. 02调研人员和公司
  3. 03发布帖子并参与讨论
  4. 04管理邀请和对话

MCP 相关

该服务向 MCP 客户端提供 LinkedIn 搜索、读取、发布、联系人、邀请和消息工具。通过浏览器登录进行身份验证,会话保存在本地以供后续使用。

配置

本地服务的配置在各客户端中通用,复制后粘贴到客户端的 MCP 配置文件即可。

mcp.json · 通用配置
{
"mcpServers": {
"prakharagarwal-dev-linkedin": {
"command": "docker",
"args": [
"run",
"-i",
"--rm",
"ghcr.io/prakharagarwal-dev/linkedin-mcp-server:0.16.0"
]
}
}
}
启动命令docker run -i --rm ghcr.io/prakharagarwal-dev/linkedin-mcp-server:0.16.0

本地服务需要在你的电脑上安装运行环境(如 Node.js 18+)。各客户端的配置文件位置不同,请参考客户端文档。

安装包
ocighcr.io/prakharagarwal-dev/linkedin-mcp-server:0.16.0

工具

还没有获取到工具列表

本地服务需要在你的电脑上运行后才能读取工具,维护者暂未提供工具列表。

详细介绍

LinkedIn MCP 服务

CI CodeQL PyPI Python 3.12–3.14 License: Apache-2.0 MCP Registry Glama OpenSSF Scorecard PyPI provenance Container provenance and SBOM

**免责声明:**LinkedIn 是 LinkedIn Corporation 及其关联公司的注册商标。LinkedIn MCP Server 是一个独立的非官方项目,与 LinkedIn Corporation 及其关联公司无关,也未获得其认可或赞助。

LinkedIn MCP 服务可用于查找职位、搜索人物、调查公司、管理人脉、发布帖子并与帖子互动,以及读取或发送消息。

⚡ 快速开始

1. 连接 Claude Code
claude mcp add --scope user --transport stdio linkedin-mcp -- \
  uvx --from linkedin-mcp-local linkedin-mcp serve --transport stdio
2. 登录 LinkedIn

重启 Claude Code。系统会自动打开一个专用浏览器窗口,请登录 LinkedIn 并完成所需的验证。

说明

您的会话会保存在本地,并自动重复使用。

支持的平台

此服务可在 Windows、macOS 和 Linux 上原生运行。CI 会在 Windows、macOS、Linux x86-64 和 Linux ARM64 上运行完整的离线测试套件。浏览器和操作系统版本要求遵循官方 Playwright Python 系统要求。

3. 试试您的第一个请求
Find remote software engineering jobs in India posted on LinkedIn this week.

🛠️ 工具

提示

已验证表示该工具在所示日期通过了针对 LinkedIn 可见 Web 界面的端到端实时兼容性测试。 | 区域 | 功能 | MCP 工具 | 与 LinkedIn UI 的兼容性 | 功能说明 | | --- | --- | --- | --- | --- | | 职位 | 搜索职位 | linkedin.jobs.search | ![LinkedIn UI 兼容性][status-linkedin-jobs-search]
![兼容性检查日期][status-checked-on] | 按关键词、地点、距离、日期、工作场所、经验、雇佣类型、公司、行业、职能、职位名称、福利、Easy Apply、验证状态、申请人数、人脉及其他可见筛选条件搜索。 | | | 查看职位详情 | linkedin.jobs.get | ![LinkedIn UI 兼容性][status-linkedin-jobs-get]
![兼容性检查日期][status-checked-on] | 查看完整职位描述、公司、申请方式和可见的招聘团队。 | | 人员 | 搜索人员 | linkedin.people.search | ![LinkedIn UI 兼容性][status-linkedin-people-search]
![兼容性检查日期][status-checked-on] | 按关键词、人脉关系级别、招聘状态、地点、当前或过往公司、职位名称、学校、行业、服务、语言、人脉和关注者搜索。 | | | 查看个人资料 | linkedin.people.get | ![LinkedIn UI 兼容性][status-linkedin-people-get]
![兼容性检查日期][status-checked-on] | 查看完整的可见个人资料,或请求“关于”、工作经历、教育经历、技能、项目、认证和推荐等指定部分。 | | 公司 | 搜索公司 | linkedin.companies.search | ![LinkedIn UI 兼容性][status-linkedin-companies-search]
![兼容性检查日期][status-checked-on] | 按关键词、总部所在地、行业、规模、可用职位和一级人脉搜索。 | | | 查看公司详情 | linkedin.companies.get | ![LinkedIn UI 兼容性][status-linkedin-companies-get]
![兼容性检查日期][status-checked-on] | 查看概览和关于信息,包括网站、总部所在地、规模、类型、创立年份和专长。 | | 帖子 | 搜索帖子 | linkedin.posts.search | ![LinkedIn UI 兼容性][status-linkedin-posts-search]
![兼容性检查日期][status-checked-on] | 按关键词、日期、内容类型、作者、公司、关系、提及对象、作者行业及其他可见筛选条件搜索。 | | | 查看帖子 | linkedin.posts.get | ![LinkedIn UI 兼容性][status-linkedin-posts-get]
![兼容性检查日期][status-checked-on] | 查看完整内容、媒体、链接、提及对象、话题标签、表情回应和互动情况。 | | | 查看讨论 | linkedin.posts.comments.list | ![LinkedIn UI 兼容性][status-linkedin-posts-comments-list]
![兼容性检查日期][status-checked-on] | 查看分页评论、回复、附件和表情回应。 | | | 发布帖子 | linkedin.posts.create | ![LinkedIn UI 兼容性][status-linkedin-posts-create]
![兼容性检查日期][status-checked-on] | 发布受支持的个人文字、链接、图片、视频、文档、投票、庆祝活动、活动、招聘和专家征询帖子。 | | | 评论 | linkedin.posts.comment | ![LinkedIn UI 兼容性][status-linkedin-posts-comment]
![兼容性检查日期][status-checked-on] | 在帖子中添加文字、链接、表情符号、提及对象、照片或 GIF。 | | | 表情回应 | linkedin.posts.react | ![LinkedIn UI 兼容性][status-linkedin-posts-react]
![兼容性检查日期][status-checked-on] | 添加、更改或移除帖子上的表情回应。 | | 人脉网络 | 列出联系人 | linkedin.connections.list | ![LinkedIn UI 兼容性][status-linkedin-connections-list]
![兼容性检查日期][status-checked-on] | 浏览已建立的一级联系人,并支持排序和分页。 | | | 搜索联系人 | linkedin.connections.search | ![LinkedIn UI 兼容性][status-linkedin-connections-search]
![兼容性检查日期][status-checked-on] | 使用适用的人员筛选条件搜索现有联系人。 | | | 列出邀请 | linkedin.invitations.list | ![LinkedIn UI 兼容性][status-linkedin-invitations-list]
![兼容性检查日期][status-checked-on] | 使用 LinkedIn 可见筛选条件浏览收到和发出的邀请。 | | | 发送邀请 | linkedin.invitations.send | ![未检查][status-not-checked] | 发送联系人邀请,并可附上备注。 | | | 接受邀请 | linkedin.invitations.accept | ![未检查][status-not-checked] | 接受收到的联系人邀请。 | | | 忽略邀请 | linkedin.invitations.ignore | ![未检查][status-not-checked] | 忽略收到的联系人邀请。 | | 消息 | 搜索消息 | linkedin.messaging.search | ![LinkedIn UI 兼容性][status-linkedin-messaging-search]
![兼容性检查日期][status-checked-on] | 使用收件箱类别和筛选条件,按收件人或消息文本搜索。 | | | 查看对话 | linkedin.messaging.conversation.get | ![LinkedIn UI 兼容性][status-linkedin-messaging-conversation-get]
![兼容性检查日期][status-checked-on] | 查看消息历史记录、回复、编辑内容、表情回应和附件。 | | | 发送消息 | linkedin.messaging.send | ![LinkedIn UI 兼容性][status-linkedin-messaging-send]
![兼容性检查日期][status-checked-on] | 在一对一对话中发送消息或回复,支持文字、链接、表情符号、文件、图片和 GIF。 | | 服务 | 检查运行时 | linkedin.server.status | ![LinkedIn UI 兼容性][status-linkedin-server-status]
![兼容性检查日期][status-checked-on] | 检查共享运行时、队列和当前活动的浏览器操作。 | | | 检查 LinkedIn 会话 | linkedin.session.status | ![LinkedIn UI 兼容性][status-linkedin-session-status]
![兼容性检查日期][status-checked-on] | 检查浏览器配置文件、身份验证、登录和暂停状态。 | | | 列出功能 | linkedin.capabilities.list | ![LinkedIn UI 兼容性][status-linkedin-capabilities-list]
![兼容性检查日期][status-checked-on] | 检查可用功能、版本、读写效果以及所需的 LinkedIn 页面。 | NOT CHECKED 工具仍会在每个拉取请求中由离线模拟器进行覆盖。 [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [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= [status-not-checked]: https://img.shields.io/badge/status-not_checked-lightgrey?label=

查看能力矩阵,了解确切的筛选条件、支持的格式、输入、输出、限制和不支持的功能。

📦 安装

Claude Code
claude mcp add --scope user --transport stdio linkedin-mcp -- \
  uvx --from linkedin-mcp-local linkedin-mcp serve --transport stdio

使用 claude mcp list 检查。请参阅 Claude Code MCP 文档。

Claude Desktop

下载到 Claude Desktop

下载 .mcpb 文件,然后打开 Settings → Extensions → Advanced settings → Install Extension。 请参阅 Claude Desktop 扩展文档。

Codex 和 ChatGPT Desktop
codex mcp add linkedin-mcp -- \
  uvx --from linkedin-mcp-local linkedin-mcp serve --transport stdio

使用 codex mcp list 检查。Codex CLI、Codex IDE 扩展和 ChatGPT Desktop 共用此本地配置。添加后请重启客户端。请参阅 Codex MCP 文档。

VS Code 和 GitHub Copilot

在 VS Code 中安装 在 VS Code Insiders 中安装

也可以将以下内容添加到 .vscode/mcp.json:

{
  "servers": {
    "linkedin-mcp": {
      "command": "uvx",
      "args": ["--from", "linkedin-mcp-local", "linkedin-mcp", "serve", "--transport", "stdio"]
    }
  }
}

请参阅 VS Code MCP 文档。

Cursor

在 Cursor 中安装

如需手动设置,请打开 Cursor Settings → MCP → Add new MCP server,将命令设为 uvx,并将参数设为 --from linkedin-mcp-local linkedin-mcp serve --transport stdio。 请参阅 Cursor MCP 文档。

Gemini CLI

在 ~/.gemini/settings.json 中,于 mcpServers 下添加一个名为 linkedin-mcp 的本地服务,命令设为 uvx,参数设为 --from linkedin-mcp-local linkedin-mcp serve --transport stdio,然后运行 gemini mcp list。 请参阅 Gemini CLI MCP 文档。

Windsurf

打开 Settings → AI → Manage MCP Servers,或在 ~/.codeium/windsurf/mcp_config.json 中添加一个名为 linkedin-mcp 的本地服务,命令设为 uvx,参数设为 --from linkedin-mcp-local linkedin-mcp serve --transport stdio。 请参阅 Windsurf MCP 文档。

Cline

打开 MCP Servers → Configure,然后添加一个名为 linkedin-mcp 的本地服务,命令设为 uvx,参数设为 --from linkedin-mcp-local linkedin-mcp serve --transport stdio。 请参阅 Cline MCP 文档。

Roo Code

打开 Roo Code 的 MCP 设置,并将名为 linkedin-mcp 的本地服务添加到全局文件或 .roo/mcp.json,使用命令 uvx 和参数 --from linkedin-mcp-local linkedin-mcp serve --transport stdio。 请参阅 Roo Code MCP 文档。

Zed

将以下内容添加到 Zed 设置中:

{
  "context_servers": {
    "linkedin-mcp": {
      "command": "uvx",
      "args": ["--from", "linkedin-mcp-local", "linkedin-mcp", "serve", "--transport", "stdio"]
    }
  }
}

请参阅 Zed MCP 文档。

Goose

在 Goose 中安装

也可以添加自定义 stdio 扩展,命令设为 uvx,参数设为 --from linkedin-mcp-local linkedin-mcp serve --transport stdio;或者启动一个 CLI 会话:

goose session --with-extension \
  "uvx --from linkedin-mcp-local linkedin-mcp serve --transport stdio"

请参阅 Goose 文档。

OpenCode

对于 OpenCode v2,将以下内容添加到 opencode.json:

{
  "$schema": "https://opencode.ai/config.json",
  "mcp": {
    "servers": {
      "linkedin-mcp": {
        "type": "local",
        "command": ["uvx", "--from", "linkedin-mcp-local", "linkedin-mcp", "serve", "--transport", "stdio"]
      }
    }
  }
}

请参阅 OpenCode MCP 文档。

JetBrains AI Assistant

打开 Settings → Tools → AI Assistant → Model Context Protocol (MCP),点击 Add,将命令设为 uvx,并将参数设为 --from linkedin-mcp-local linkedin-mcp serve --transport stdio。 请参阅 JetBrains MCP 文档。

Continue

创建 .continue/mcpServers/linkedin-mcp.json,其中包含名为 linkedin-mcp 的本地服务,命令为 uvx,参数为 --from linkedin-mcp-local linkedin-mcp serve --transport stdio。 请参阅 Continue MCP 文档。

Warp

打开 Settings → AI → Manage MCP Servers → Add,将服务命名为 linkedin-mcp,将命令设为 uvx,并将参数设为 --from linkedin-mcp-local linkedin-mcp serve --transport stdio。 请参阅 Warp MCP 文档。

💡 示例

查找职位
Find remote software engineering jobs in India posted on LinkedIn this week with Easy Apply.
调研人物
Find LinkedIn profiles for engineering managers at Stripe in India and show me their relevant experience.
调研公司
Find fintech companies in Bengaluru on LinkedIn with 51–200 employees and summarize each company.
浏览帖子
Find recent LinkedIn posts about AI agents and summarize the most useful discussions.
管理人脉
Show my latest received connection requests on LinkedIn.
Send a LinkedIn connection request to <profile URL> with the note <note>.
发送消息
Send <message> on LinkedIn to <profile URL>.

🏗️ 架构

[Claude | Codex | Cursor | ...]
               |
       stdio / loopback HTTP
               v
      [Typed MCP boundary]
               |
               v
       [Fair queue + pacing]
               |
      one operation at a time
               v
[Capability executor] ---> [Process-local calls, cursors, evidence]
               |
               v
      [Capability page objects]
               |
               v
[Browser manager: fresh page per call] <--> [Persistent auth profile]
               |
        visible web UI only
               v
           [LinkedIn]

所有操作都在本地运行。没有托管后端、遥测、数据库、外部队列、LangGraph 运行时或凭据服务。浏览器 Cookie 仅保存在本地 Playwright 配置文件中。第一个客户端会启动一个共享的本地运行时;后续客户端会连接到该运行时,并通过公平调度让每个客户端在完整的工具调用之间轮流执行。操作状态仅在该运行时的生命周期内保留。请阅读完整的架构说明和隐私政策。

🔒 隐私政策

该服务没有由维护者运营的后端、分析、广告或遥测。LinkedIn 会收到正常的可见界面请求,发起调用的 MCP 客户端会根据自身的数据政策接收工具结果;本项目不会向维护者发送任何信息。有关数据处理、存储、共享、保留和删除的详情,请阅读完整的隐私政策。

🛡️ 安全

使用本软件的风险由你自行承担。你有责任遵守 LinkedIn 用户协议、 适用法律和第三方权利。使用被禁止的自动化的账号可能会受到 LinkedIn 的限制或约束。 维护者不授权发送垃圾信息、未经授权收集数据、侵犯隐私或绕过访问控制。

  • 仅使用你获准操作的账号并开展获准的活动。
  • 遇到身份验证过期、验证关卡、限制页面、权限失败和配置错误时,服务会暂停。
  • 服务不会实现 CAPTCHA 绕过、代理轮换、指纹伪造、凭据窃取、隐身插件或 LinkedIn 私有端点。
  • 切勿提交或分享持久化浏览器配置文件或本地资源。

请参阅 SECURITY.md 和安全设计。

📚 更多文档

❤️ 支持项目

如果 LinkedIn MCP Server 对你有帮助:

🌐 联系我们

对 LinkedIn MCP Server 有反馈或想法吗?

⚖️ 许可证

根据 Apache License 2.0 授权。

评论

支持 Markdown

第一次接触 MCP?

从协议是什么,到在客户端里装上第一个服务,这几条回答覆盖了大多数入门问题。

一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。