LinkedIn 求职助手
一个服务器,它通过标准化的JSON-RPC请求启用AI助手与LinkedIn进行程序化交互,以实现找工作、生成简历/求职信以及管理求职申请等功能。
服务介绍
LinkedIn Model Context Protocol (MCP) 服务器
这是一个强大的Model Context Protocol (MCP) 服务器,用于LinkedIn交互,使AI助手能够搜索工作、生成简历和求职信,并以编程方式管理职位申请。
功能
- 认证:安全的LinkedIn认证及会话管理
- 个人资料管理:访问和更新LinkedIn个人资料信息
- 职位搜索:带有灵活筛选选项的职位搜索
- 简历生成:从LinkedIn个人资料创建定制简历
- 求职信生成:为特定职位申请生成定制求职信
- 职位申请:提交并跟踪职位申请
架构
此项目实现了Model Context Protocol (MCP)规范,允许AI助手通过标准化的JSON-RPC风格请求和响应与LinkedIn进行交互。
组件:
- MCP处理器:将请求路由到适当的服务处理器
- API模块:针对LinkedIn交互的专业化模块(认证、职位搜索、个人资料等)
- 核心协议:定义请求/响应结构和数据模型
- 工具:配置管理和辅助函数
安装
# Clone the repository
git clone https://github.com/yourusername/linkedin-mcp.git
cd linkedin-mcp
# Create and activate a virtual environment
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
配置
在项目根目录下创建一个.env文件,并包含以下变量:
# LinkedIn Credentials
LINKEDIN_USERNAME=your_email@example.com
LINKEDIN_PASSWORD=your_password
# API Settings
OPENAI_API_KEY=your_openai_api_key
SESSION_DIR=sessions
DATA_DIR=data
使用方法
启动服务器
python server.py
示例MCP请求
认证
{
"jsonrpc": "2.0",
"id": 1,
"method": "linkedin.login",
"params": {
"username": "user@example.com",
"password": "password123"
}
}
搜索工作
{
"jsonrpc": "2.0",
"id": 2,
"method": "linkedin.searchJobs",
"params": {
"filter": {
"keywords": "software engineer",
"location": "New York, NY",
"distance": 25
},
"page": 1,
"count": 20
}
}
生成简历
{
"jsonrpc": "2.0",
"id": 3,
"method": "linkedin.generateResume",
"params": {
"profileId": "user123",
"template": "standard",
"format": "pdf"
}
}
可用方法
| 方法 | 描述 |
|---|---|
linkedin.login |
使用LinkedIn登录 |
linkedin.logout |
结束当前会话 |
linkedin.checkSession |
检查当前会话是否有效 |
linkedin.getFeed |
获取LinkedIn动态帖子 |
linkedin.getProfile |
获取LinkedIn个人资料信息 |
linkedin.getCompany |
获取公司资料信息 |
linkedin.searchJobs |
使用筛选条件搜索工作 |
linkedin.getJobDetails |
获取关于工作的详细信息 |
linkedin.getRecommendedJobs |
获取推荐的工作 |
linkedin.generateResume |
从LinkedIn个人资料生成简历 |
linkedin.generateCoverLetter |
为职位申请生成求职信 |
linkedin.tailorResume |
为特定工作定制简历 |
linkedin.applyToJob |
申请工作 |
linkedin.getApplicationStatus |
检查申请状态 |
linkedin.getSavedJobs |
获取已保存的工作 |
linkedin.saveJob |
保存工作以备后用 |
开发
项目结构
linkedin-mcp/
├── README.md
├── requirements.txt
├── server.py
├── data/
│ ├── applications/
│ ├── companies/
│ ├── cover_letters/
│ ├── jobs/
│ ├── profiles/
│ └── resumes/
├── linkedin_mcp/
│ ├── api/
│ │ ├── auth.py
│ │ ├── cover_letter_generator.py
│ │ ├── job_application.py
│ │ ├── job_search.py
│ │ ├── profile.py
│ │ └── resume_generator.py
│ ├── core/
│ │ ├── mcp_handler.py
│ │ └── protocol.py
│ └── utils/
│ └── config.py
├── sessions/
└── templates/
├── cover_letter/
│ └── standard.html
└── resume/
└── standard.html
运行测试
pytest
许可证
本项目根据MIT许可证发布 - 详情请参见LICENSE文件。
致谢
- LinkedIn API文档
- Model Context Protocol规范