boss-cli-mcp
Provides a tool for setting Baidu OCR credentials, enabling OCR capabilities within the Boss recruiter automation workflows.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@boss-cli-mcpshow me unread candidates and send them a follow-up message"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
boss-cli-mcp
An automation CLI and MCP service for Boss 直聘, extended from joohw/boss-cli.
The project drives the local Chrome via Puppeteer/CDP, reuses the local login state, and provides MCP-capable AI clients such as Claude Desktop, Cursor, and Zcode with candidate lookup, chat, message sending, batch replies, recommended search, and position management capabilities.
This project performs real operations on your Boss account. Before sending messages, getting intros, viewing resumes, or running deep matching, please confirm the candidate and parameters, and follow the platform rules.
Features
Read the full or unread candidate list
Open a chat by name or by list index
Send a single message
Reply to candidates in batches asynchronously
Query batch send progress and per-person results
Chat actions such as requesting a resume, adding a remark, marking "not suitable", and swapping WeChat
Read recommended candidates and regular search results
Deep search and match
Preview online resumes
Read a position list or position details
Invoke via both CLI and stdio MCP
Related MCP server: Chrome MCP Server
Environment Requirements
Node.js 20 or higher
Chrome or Chromium installed on your machine
Windows, macOS, or Linux
An account that can log in to the Boss 直聘 employer portal
Installation
Run MCP from this repository
git clone https://github.com/bmbbms/boss-cli-mcp.git D:\boss-cli
cd D:\boss-cli
npm install
npm run buildThe built MCP entry point:
D:\boss-cli\dist\mcp\index.jsTo start a manual test:
& "D:\nodejs\node.exe" "D:\boss-cli\dist\mcp\index.js"MCP uses stdio communication. After startup, having no normal output in the terminal is expected. Press Ctrl+C to stop the test process.
Install the upstream CLI
If you only need the CLI, you can install the upstream npm package directly:
npm install -g @joohw/boss-cli@latest
boss helpConfigure MCP clients
Zcode
{
"boss-recruiter": {
"type": "stdio",
"command": "D:\\nodejs\\node.exe",
"args": [
"D:\\boss-cli\\dist\\mcp\\index.js"
]
}
}Claude Desktop
Add the following to the Claude Desktop MCP config file:
{
"mcpServers": {
"boss-recruiter": {
"command": "D:\\nodejs\\node.exe",
"args": [
"D:\\boss-cli\\dist\\mcp\\index.js"
]
}
}
}Notes:
commandshould contain only the path to the Node.js executable.The full MCP file path must be a single string in
args; it cannot be split on spaces.Backslashes in JSON on Windows must be written as
\\.After changing the config, fully restart or reload the MCP client.
If you are unsure about the Node.js install path, run this in PowerShell:
(Get-Command node).SourceFirst login
After the MCP client connects successfully, call:
boss_loginThe tool opens your local Chrome. After scanning the QR code or completing verification, later operations reuse the local browser session stored in ~/.boss-cli/.
MCP tools
Tool | Description |
| Opens the Boss login page |
| Reads all or unread candidates |
| Opens a chat by name |
| Opens a chat by candidate list index |
| Performs chat actions such as resume, remark, not suitable, WeChat, etc. |
| Sends a single message in the current session |
| Starts an async batch send task |
| Queries the task progress and result of a batch send |
| Reads the position list or position details |
| Sets deep search conditions or runs the match |
| Runs a normal candidate search |
| Reads recommended candidates |
| Previews the online resume |
| Greets a candidate from recommendations or search results |
| Sets Baidu OCR credentials |
Batch send messages
Recommended workflow
Call
boss_list_candidatesto get the candidate list first.Show the list to the user and have them confirm it.
Call
boss_batch_send_messagesto start the batch send task.Save the returned
taskId.Call
boss_batch_send_statusto fetch the progress until the status becomescompletedorfailed.
Start a batch send
{
"messages": [
{
"candidateName": "张三",
"text": "您好,感谢您的关注,请问方便补充一下简历吗?",
"exact": true
},
{
"candidateName": "李四",
"text": "您好,感谢您的关注,请问方便补充一下简历吗?",
"exact": true
}
],
"confirm": true
}It starts asynchronously by default and returns immediately:
{
"taskId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"status": "running",
"total": 2
}Check the task status
Call boss_batch_send_status:
{
"taskId": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
}When complete, it returns something like:
{
"status": "completed",
"total": 2,
"sent": 1,
"failed": 1,
"results": [
{
"candidateName": "张三",
"status": "sent"
},
{
"candidateName": "李四",
"status": "failed",
"error": "未找到候选人"
}
]
}Arguments:
candidateName: the candidate name; preferably from theboss_list_candidatesresult.text: the message body to send.exact: whether to match the name exactly; keeptrue.confirm: must be explicitlytrueor nothing will be sent.waitForCompletion: defaults tofalse. Setting it totrueis not recommended, because it may trigger an MCP client timeout while the page is loading for the first time.
The batch tool processes candidates serially and records a sent or failed status for each person. A failure for one candidate does not stop the others from being processed.
Example prompts in AI clients
调用 boss_list_candidates 获取未读候选人,将列表展示给我并等待确认。
我确认后,使用 boss_batch_send_messages 逐个发送指定消息。
必须精确匹配姓名并设置 confirm=true。
取得 taskId 后,定期调用 boss_batch_send_status,最后汇总成功和失败结果。CLI quick use
# 登录
boss login
# 查看未读候选人
boss list --unread
# 打开聊天并发送消息
boss chat 张三 --strict
boss send --text "您好,请问方便发一下简历吗?"
# 查看推荐候选人
boss recommend 前端工程师
# 常规搜索
boss search "AI 产品经理"Full CLI arguments:
boss helpFAQ
MCP reports Cannot find module at startup
This is usually caused by a path with spaces being split into multiple arguments. Make sure the full MCP path is a single string in the args array:
"args": ["D:\\boss-cli\\dist\\mcp\\index.js"]First MCP call times out
The first call requires launching or connecting to Chrome and loading the Boss page, which can take a while. Batch sends use an async task by default, so save the taskId and query via boss_batch_send_status instead of starting the task again.
If a synchronous call appears to time out, the operation may still be running in the browser. Check the chat history before retrying the send to avoid duplicates.
After updating the source, the MCP tools are not refreshed
Rebuild and restart the MCP client:
cd D:\boss-cli
npm run buildWhere is the data stored?
Path | Content |
| Cookies, browser user data, login state |
| Cached job descriptions |
These files stay on your machine and should not be committed to GitHub.
Development
npm install
npm run build
npm run mcpThe main MCP implementation is located at:
src/mcp/index.tssrc/toolset/docs/mcp.md
Upstream and license
This repository is based on joohw/boss-cli and keeps the original GPL-3.0 license.
This project adds the MCP service, MCP client docs, batch sending, and async task status query support.
See LICENSE.
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceEnables AI-driven job application automation for LinkedIn and SEEK platforms with intelligent cover letter generation, automated application submission, and application tracking management. Supports anti-detection measures and complies with platform usage policies for safe job hunting automation.
- AlicenseNot gradedqualityBmaintenanceEnables AI assistants to control and automate your Chrome browser directly, leveraging existing login states and configurations for tasks like content analysis, semantic search across tabs, screenshots, network monitoring, and interactive operations.10MIT
- FlicenseNot gradedqualityCmaintenanceAutomates job searching and initial communication on the Boss Zhipin platform by parsing resumes and matching them with relevant job listings. It includes anti-bot detection features and supports automated messaging to HR representatives through various MCP clients.10
- AlicenseNot gradedqualityDmaintenanceEnables interaction with the Boss直聘 recruitment platform to search for jobs and send automated greetings to recruiters. It features automatic QR code login and security verification using Playwright for seamless session management.MIT
Related MCP Connectors
Run LinkedIn outreach from your AI chat: find leads, launch campaigns, send, and reply.
Give AI agents the LinkedIn tools to find, qualify, engage, and follow up with prospects.
Stealth scraping & search. Bypasses Cloudflare, DataDome & LinkedIn via Cyborg HITL approach.
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/bmbbms/boss-cli-mcp'
If you have feedback or need assistance with the MCP directory API, please join our Discord server