项目简介

本项目是一个基于 Model Context Protocol (MCP) 构建的服务器,旨在为大型语言模型(LLM)提供分析 LinkedIn 个人资料的能力。通过此 MCP 服务器,LLM 可以获取和分析公开 LinkedIn 个人资料的帖子数据,从而实现更智能的 LinkedIn 相关应用。

主要功能点

  • 抓取和存储 LinkedIn 帖子: 可以抓取指定公开 LinkedIn 个人资料的帖子并保存到本地。
  • 搜索帖子: 支持通过关键词搜索已保存的帖子。
  • 获取热门帖子: 可以根据点赞数或总互动数获取表现最佳的帖子。
  • 按日期范围过滤帖子: 允许用户筛选特定日期范围内的帖子。
  • 分页访问帖子: 提供分页功能,方便管理和访问大量帖子数据。
  • Claude AI 集成: 特别设计用于与 Claude AI 等 LLM 配合使用。

安装步骤

  1. 获取 RapidAPI 密钥:

  2. 克隆仓库:

    git clone https://github.com/rugvedp/linkedin-mcp.git
    cd linkedin-mcp
  3. 安装依赖:

    pip install -r requirements.txt
  4. 配置环境变量:

    • 创建一个 '.env' 文件。
    • 添加您的 RapidAPI 密钥:
      RAPIDAPI_KEY=your_rapidapi_key_here

服务器配置

MCP 客户端需要以下配置信息来连接到此 MCP 服务器。在客户端的 MCP 服务器配置中,添加以下 JSON 对象:

{
  "服务器名称": "LinkedIn Profile Analyzer",
  "启动命令": "uv",
  "命令参数": [
    "run",
    "--with",
    "mcp[cli]",
    "mcp",
    "run",
    "main.py"  // 假设 main.py 文件位于当前目录下
  ]
}

参数注释:

  • '"服务器名称"': 为该 MCP 服务器指定一个易于识别的名称,例如 "LinkedIn Profile Analyzer"。
  • '"启动命令"': 运行 MCP 服务器的命令,这里使用 'uv' (假设已安装 'uv' 和 'mcp' 命令行工具).
  • '"命令参数"': 启动命令的参数列表:
    • '"run"': 'uv run' 命令用于运行 Python 脚本。
    • '"--with"': 指定要加载的扩展,这里加载 'mcp[cli]' 以启用 MCP 命令行界面。
    • '"mcp"': 调用 'mcp' 命令行工具。
    • '"run"': 'mcp run' 子命令用于启动 MCP 服务器。
    • '"main.py"': 指定 MCP 服务器的 Python 脚本文件为 'main.py'。请确保此路径相对于 MCP 客户端的配置是正确的。

注意: 请确保已安装 'uv' 和 'mcp' 命令行工具。 如果您使用不同的 Python 运行环境或启动方式,请相应地修改 '"启动命令"' 和 '"命令参数"'。 例如,如果直接使用 'python' 运行,可以将 '"启动命令"' 修改为 'python',并将 '"命令参数"' 修改为 '["main.py"]'。

基本使用方法

  1. 启动 MCP 服务器: 在安装并配置好服务器后,通过 MCP 客户端配置中提供的启动命令来启动服务器。

  2. 在 LLM 中使用工具: 在与 Claude 或其他兼容 MCP 的 LLM 对话时,您可以使用自然语言指令来调用以下工具 (Tools):

    • 'fetch_and_save_linkedin_posts(username: str)': 抓取并保存指定 LinkedIn 用户名的帖子。例如,可以指示 Claude "使用 'fetch_and_save_linkedin_posts' 工具抓取用户名为 '[LinkedIn 用户名]' 的帖子"。
    • 'get_saved_posts(start: int = 0, limit: int = 5)': 获取已保存的帖子,支持分页。例如,指示 Claude "使用 'get_saved_posts' 工具获取前 5 篇帖子"。
    • 'search_posts(keyword: str)': 搜索包含特定关键词的帖子。例如,指示 Claude "使用 'search_posts' 工具搜索关键词为 '[关键词]' 的帖子"。
    • 'get_top_posts(metric: str = 'Like Count', top_n: int = 5)': 获取点赞数或总互动数最高的帖子。例如,指示 Claude "使用 'get_top_posts' 工具获取点赞数最高的 3 篇帖子"。
    • 'get_posts_by_date(start_date: str, end_date: str)': 获取指定日期范围内的帖子。例如,指示 Claude "使用 'get_posts_by_date' 工具获取 '2023-01-01' 到 '2023-01-31' 期间的帖子"。

    LLM 将根据您的指令调用相应的工具,并返回结果。您可以通过自然语言与 LLM 交互,利用这些工具分析 LinkedIn 数据。

信息

分类

网页与API