FastMCP LinkedIn 服务器
一种基于FastMCP的服务器,通过浏览器自动化实现LinkedIn的程序化自动操作和数据提取,提供安全的身份验证以及用于个人资料操作和帖子互动的工具,同时遵守LinkedIn的速率限制。
服务介绍
LinkedIn 浏览器 MCP 服务器
基于 FastMCP 的用于 LinkedIn 自动化和数据提取的浏览器自动化服务器。该服务器提供了一套工具,可以在遵守 LinkedIn 服务条款和速率限制的情况下以编程方式与 LinkedIn 进行交互。
特性
-
安全认证
- 基于环境的凭据管理
- 使用加密 Cookie 存储的会话持久化
- 速率限制保护
- 自动会话恢复
-
个人资料操作
- 查看和提取个人资料信息
- 根据关键词搜索个人资料
- 浏览 LinkedIn 动态
- 访问个人资料的能力
-
帖子互动
- 点赞帖子
- 评论帖子
- 阅读帖子内容和参与度指标
先决条件
- Python 3.8+
- Playwright
- FastMCP 库
- LinkedIn 账户
安装
- 克隆仓库:
git clone [repository-url]
cd mcp-linkedin-server
- 创建并激活虚拟环境:
python -m venv env
source env/bin/activate # On Windows: env\Scripts\activate
- 安装依赖项:
pip install -r requirements.txt
playwright install chromium
- 设置环境变量:
在根目录下创建一个.env文件,并添加以下内容:
LINKEDIN_USERNAME=your_email@example.com
LINKEDIN_PASSWORD=your_password
COOKIE_ENCRYPTION_KEY=your_encryption_key # Optional: will be auto-generated if not provided
使用方法
- 启动 MCP 服务器:
python linkedin_browser_mcp.py
- 可用工具:
login_linkedin_secure: 使用环境凭据安全登录browse_linkedin_feed: 浏览并从动态中提取帖子search_linkedin_profiles: 搜索符合标准的个人资料view_linkedin_profile: 查看并从特定个人资料中提取数据interact_with_linkedin_post: 点赞、评论或阅读帖子
示例用法
from fastmcp import FastMCP
# Initialize client
client = FastMCP.connect("http://localhost:8000")
# Login
result = await client.login_linkedin_secure()
print(result)
# Search profiles
profiles = await client.search_linkedin_profiles(
query="software engineer",
count=5
)
print(profiles)
# View profile
profile_data = await client.view_linkedin_profile(
profile_url="https://www.linkedin.com/in/username"
)
print(profile_data)
安全特性
- 加密 Cookie 存储
- 速率限制保护
- 安全凭据管理
- 会话持久化
- 浏览器自动化安全措施
最佳实践
-
速率限制:服务器实现了速率限制以防止过多请求:
- 每小时最多 5 次登录尝试
- 自动会话重用
- 通过 Cookie 持久化减少登录需求
-
错误处理:全面的错误处理机制,包括:
- 网络问题
- 认证失败
- LinkedIn 安全挑战
- 无效的 URL 或参数
-
会话管理:
- 自动 Cookie 加密
- 会话持久化
- 安全存储实践
贡献
- Fork 仓库
- 创建功能分支
- 提交更改
- 推送到分支
- 创建 Pull Request
许可证
MIT
免责声明
此工具仅用于教育目的。使用此软件时,请确保遵守 LinkedIn 的服务条款和速率限制指南。