Skip to main content
Glama
MCP-Layer

linkedin-mcp-server

by MCP-Layer

LinkedIn MCP 服务器

许可证: MIT Node.js 版本 MCP 版本 测试

一个生产就绪的 模型上下文协议 (MCP) 服务器,将 AI 代理(Google Gemini Spark、OpenAI Codex、Claude Desktop、Cursor、Windsurf)连接到官方的 LinkedIn REST API。

使 AI 代理能够自主撰写和发布文本更新、分享丰富的链接预览、上传图片、创建互动投票、管理现有帖子,以及参与反应和线程评论。

https://github.com/user-attachments/assets/cda965be-d6a2-4a37-8d3c-29a68a9959e1


功能

  • 双模式 MCP 传输:

    • 服务器发送事件 (SSE) 通过 GET /mcp 和 POST /messages,适用于 Google Gemini Spark 和 Claude 等客户端。

    • 可流式 HTTP 通过 POST /mcp,适用于 OpenAI Codex (rmcp) 等现代命令行和代理运行时。

  • 12 个全面工具:

    • 内容创作:文本更新、文章链接预览卡片、二进制图片上传(3 步流程)和多选项投票。

    • 内容管理:按 URN 删除帖子、获取互动统计(点赞、评论、分享)以及验证账户资料连接。

    • 社交互动:添加反应(LIKE、CELEBRATE、LOVE、INSIGHTFUL、FUNNY、EMPATHY)、删除反应、添加评论、在线程中回复以及删除评论。

  • 强大的验证:所有工具输入参数均使用 Zod 模式驱动。

  • 企业级就绪:自动化单元和集成测试套件,覆盖 100% 的端点。


Related MCP server: @isteam/linkedin-mcp

工具参考

工具

类别

描述

参数

create_text_post

内容

向您的 LinkedIn 动态发布标准文本帖子

content (字符串,必填)

create_link_post

内容

发布带有可点击预览卡的帖子

content (字符串),url (字符串,URL),title (字符串)

create_image_post

内容

从 URL 下载图片,上传到 LinkedIn 并发布

content (字符串),image_url (字符串,URL)

create_poll_post

内容

创建具有可自定义持续时间的投票

question (字符串),options (字符串数组,2-4 项),duration (ONE_DAY、THREE_DAYS、ONE_WEEK、TWO_WEEKS)

delete_post

管理

使用帖子 URN 删除帖子

post_urn (字符串,例如 urn:li:ugcPost:...)

get_user_profile

管理

检索已验证的资料详情(姓名、会员 ID)

无

get_post_stats

管理

获取互动指标(点赞、评论、分享)

post_urn (字符串)

react_to_post

互动

为帖子添加反应

post_urn (字符串),reaction_type (LIKE、CELEBRATE、LOVE、INSIGHTFUL、FUNNY、EMPATHY)

remove_reaction

互动

移除您对帖子的反应

post_urn (字符串)

comment_on_post

互动

在帖子上添加顶级评论

post_urn (字符串),comment_text (字符串)

delete_comment

互动

删除您发表的评论

post_urn (字符串),comment_id (字符串)

reply_to_comment

互动

对现有评论发布线程回复

post_urn (字符串),parent_comment_urn (字符串),reply_text (字符串)


设置与身份验证

1. LinkedIn 开发者门户设置

  1. 在 LinkedIn 开发者门户 中创建一个 LinkedIn 应用程序。

  2. 在 产品 选项卡下,请求访问:

    • 在 LinkedIn 上分享(提供 w_member_social 权限)

    • 使用 OpenID Connect 通过 LinkedIn 登录(提供 openid 和 profile 权限)

  3. 在 身份验证 选项卡中,添加一个重定向 URL(例如 https://httpbin.org/get 或您的域名)。

2. 生成用户访问令牌

  1. 在浏览器中构造授权 URL:

    https://www.linkedin.com/oauth/v2/authorization?response_type=code&client_id=YOUR_CLIENT_ID&redirect_uri=YOUR_REDIRECT_URI&scope=openid%20profile%20w_member_social
  2. 授权应用程序并从重定向 URL 复制 code 查询参数。

  3. 将代码交换为 60 天访问令牌:

    curl -X POST https://www.linkedin.com/oauth/v2/accessToken \
      -d "grant_type=authorization_code" \
      -d "code=YOUR_AUTHORIZATION_CODE" \
      -d "client_id=YOUR_CLIENT_ID" \
      -d "client_secret=YOUR_CLIENT_SECRET" \
      -d "redirect_uri=YOUR_REDIRECT_URI"
  4. 获取您的会员 ID:

    curl -H "Authorization: Bearer YOUR_ACCESS_TOKEN" https://api.linkedin.com/v2/userinfo

    sub 字段是您的会员标识符(例如 urn:li:person:<sub_id>)。


配置

复制示例环境文件:

cp .env.example .env

配置您的 .env 变量:

LINKEDIN_ACCESS_TOKEN=your_oauth2_access_token
LINKEDIN_AUTHOR_URN=urn:li:person:your_member_sub_id
PORT=3000

本地运行

# Install dependencies
npm install

# Run unit and integration tests
npm test

# Start the server
npm start

# Start in development mode (with live reload)
npm run dev

客户端集成

OpenAI Codex CLI

使用 Codex CLI 添加服务器:

codex mcp add linkedin --url https://your-server-domain.com/mcp

或直接将其添加到 ~/.codex/config.toml:

[mcp_servers.linkedin]
url = "https://your-server-domain.com/mcp"

Claude Desktop

添加到您的 claude_desktop_config.json:

{
  "mcpServers": {
    "linkedin": {
      "command": "node",
      "args": ["/path/to/linkedin-mcp-server/server.js"],
      "env": {
        "LINKEDIN_ACCESS_TOKEN": "your_access_token",
        "LINKEDIN_AUTHOR_URN": "urn:li:person:your_sub_id"
      }
    }
  }
}

Google Gemini Spark

在您的 Gemini Spark 自定义应用程序设置中,输入您的公共 SSE 端点 URL:

https://your-server-domain.com/mcp

部署

部署到 Railway

  1. 安装 Railway CLI:npm i -g @railway/cli

  2. 链接或创建一个项目:

    railway init
    railway up
  3. 设置环境变量:

    railway variable set LINKEDIN_ACCESS_TOKEN="your_token" LINKEDIN_AUTHOR_URN="urn:li:person:your_sub_id"
  4. 生成公共域名:

    railway domain

开发与测试

测试套件包括 62 个自动化单元和集成测试,涵盖 LinkedIn API 客户端、所有 12 个工具注册和执行处理程序,以及 SSE / 可流式 HTTP 传输。

# Run tests once
npm test

# Run tests in watch mode
npm run test:watch

许可证

本项目采用 MIT 许可证。

Related MCP Connectors

Related MCP Servers