xiaohongshu-ai-life-mcp
Provides browser-automation tools for interacting with Xiaohongshu, including login, searching notes, viewing feeds and comments, analyzing note images, posting comments and replies, liking and favoriting notes, publishing notes, and managing or deleting your own notes.
This server does not currently have a deployable release on Glama. Follow the repository's setup instructions to install and configure it for your MCP client, including any required credentials and local dependencies.
📕 xiaohongshu-ai-life-mcp
让 AI 真正"住"在小红书里的 MCP 工具集
搜索 · 阅读 · 评论 · 发笔记 · 收通知 · 回消息 —— 像人一样,慢慢来。
在 JonaFly/RednoteMCP 基础上深度重构。 新增笔记发布与删除、通知看门狗、站内点击式回复、闲逛养号、图片分析,并围绕"别被风控"做了大量打磨。
✨ 它和别的小红书 MCP 有什么不一样
🧭 像人一样操作 | 连接的是你自己的真实 Chrome(CDP,用 Patchright 去掉 |
🔔 通知看门狗 | 不让 AI 定时轮询(费 token)。服务被动监听页面自带的未读数,有新评论/@/关注才唤醒 AI |
💬 站内回复 | 回复评论走"点侧栏通知入口 → 在通知页直接回",和真人路径一致,找不到才退回笔记页 |
📝 能发笔记 | 本地图片、小红书内置文字配图、本地生成图片三种模式,话题标签自动选 |
🛡️ 风控熔断 | 持久化限速 + 验证码/频繁提示检测,命中即暂停所有操作,重启不清零 |
🌿 闲逛养号 | 后台偶尔刷刷首页、点开看看,不点赞不评论,有正事立刻让路 |
Related MCP server: XHS MCP
🏗️ 工作方式
flowchart LR
AI["🤖 AI 客户端<br/>Claude Code / Desktop"] -- MCP --> S["FastMCP 服务<br/>xiaohongshu_mcp.py"]
S -- Patchright / CDP --> C["🌐 真实 Chrome<br/>(持久化 profile)"]
C --> X["📕 小红书"]
C -. "未读数轮询(被动监听)" .-> W["🔔 看门狗"]
W -- "新通知" --> L["📄 唤醒日志<br/>xhs-wake-events.log"]
L -. "tail -F 唤醒" .-> AI🚀 快速开始
环境要求
Python 3.10+
图形环境(有头 Chrome;Linux 需要
DISPLAY,无显示器可用 Xvfb)系统安装 Google Chrome。默认路径为
/usr/bin/google-chrome,macOS / Windows 请改xiaohongshu_mcp.py里的_ensure_chrome_running
安装
git clone https://github.com/Ada-wong183/xiaohongshu-ai-life-mcp.git
cd xiaohongshu-ai-life-mcp
python3 -m venv venv
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt启动
服务会在首次调用工具时自动拉起 Chrome(调试端口 9222,数据放在 browser_data/),登录状态保存在这个 Chrome profile 里,只需扫码一次。
方式一:HTTP 服务(推荐,常驻后台,看门狗才能一直工作)
venv/bin/python xiaohongshu_mcp.py --http --port=8765Claude Code 的 ~/.claude.json 里加入:
"mcpServers": {
"xhs": { "type": "http", "url": "http://localhost:8765/mcp" }
}想开机自启,可以写成 systemd 服务,让它崩了自动拉起来。
方式二:stdio(随客户端启动)
"xhs": {
"command": "/项目绝对路径/venv/bin/python",
"args": ["/项目绝对路径/xiaohongshu_mcp.py"],
"env": { "DISPLAY": ":0" }
}改完配置重启客户端。改了代码之后,也要重启服务才会生效。
首次使用
调用 login,弹出的 Chrome 里用手机扫码,之后无需重复登录。
可选:配置 .env
参考 .env.example(.env 不会进 git):
变量 | 说明 |
| 笔记配图超过 4 张时,用 Gemini 分析图片内容。免费申请 |
| 自己的昵称,通知里被回复的评论是自己的就显示"我" |
| 关联号 user_id 或昵称,逗号分隔,它们的评论/@ 会立刻唤醒 |
|
|
| 唤醒日志路径,默认 |
| 普通通知的叫醒时段,默认 |
|
|
| 看门狗和闲逛都关着时,MCP 空闲多少分钟后自动关闭 Chrome(下次调用自动重启),默认 |
| Chrome 用户数据目录,默认 |
| 工具调用日志路径,默认 |
🧰 工具列表(25 个)
账号与状态
工具 | 说明 |
| 打开浏览器扫码登录;已登录则直接确认 |
| 查看风控熔断状态;人工通过验证后 |
内容获取
参数命名约定:笔记统一叫
note(完整链接或 24 位 id 都行;只给 id 时xsec_token自动从缓存补);用户叫user;文字内容叫content;搜索叫keywords。旧参数名(url/note_id/user_id/keyword/comment/chat_user_id)由中间件在校验前自动换成新名,仍可使用。
工具 | 参数 | 说明 |
|
| 关键词搜索笔记 |
|
| 首页推荐信息流 |
|
| 笔记正文 + 前 15 条评论( |
|
| 评论列表(含楼中楼展开); |
|
| 只取图片,不含正文 |
|
| 评论@ / 赞和收藏 / 新增关注;自动对照回复记录标"已回复" |
|
| 按小红书号或昵称找用户 |
|
| 某个用户的笔记列表; |
|
| 自己的笔记列表,同时缓存每条笔记的 |
互动
工具 | 参数 | 说明 |
|
| 发评论(先读后评,逐字打字) |
|
| 回复评论;已回复过默认拦截, |
|
| 点赞 / 取消 |
|
| 给评论点赞 |
|
| 收藏 / 取消 |
|
| 先在对方主页逛一会儿再关注,已关注不重复点 |
|
| 漏记时手动补录评论/回复历史 |
|
| 查评论/回复历史(用来去重) |
私信
网页版私信只能操作已有会话,不会主动私信陌生人。
工具 | 参数 | 说明 |
|
| 私信会话列表(对方昵称、最后一条消息、时间)。只看列表,不点开会话,不会标已读 |
|
| 读和某人的聊天记录。⚠️ 会点开会话,页面会自动标已读,对方会看到"已读" |
|
| 给已有会话的人发私信; |
|
| 本地记录:我通过 |
发布与管理
工具 | 参数 | 说明 |
| 见下 | 发布图文笔记 |
|
| 删除自己的笔记( |
publish_note 参数
参数 | 说明 |
| 标题,最多 20 字 |
| 正文,纯文字,不支持 Markdown |
| 本地图片路径列表(jpg / png / webp),可为空 |
| 话题标签,不含 |
| 配图模式,默认 |
|
|
| 说明 |
| 有 |
| 小红书内置「文字配图」,不需要本地图片 |
| 上传 |
| 本地用 Pillow 生成文字图再上传 |
🔔 通知看门狗
AI 不用定时去查通知(省 token)。服务在后台被动监听小红书页面自带的未读数轮询,发现新的评论 / @ / 关注,就用常驻页面点开侧栏的"通知"入口取详情(不是直接 goto 链接,更像真人),把新内容写进唤醒日志,每行一条 JSON:tag / message / reason / ts。
AI 客户端盯着这个文件就能被叫醒,比如在 Claude Code 里用 Monitor 执行:
tail -n 0 -F ~/xhs-wake-events.log普通通知:攒着,在
XHS_WATCH_HOURS内每 30~60 分钟合并写一次关联号(
XHS_PRIORITY_USERS)的评论/@:立刻写,顺带带出攒着的不重复:首次运行只把现有通知记为已见;已推送、已回复、自己用
get_notifications看过的都不会再叫醒自带上下文:消息里有
note_id、comment_id和"回的是哪句",AI 可以直接reply_comment;xsec_token由服务自动补,不用传和回复共用一个标签页:看门狗与回复通过页面锁互斥,不会抢同一个页面,看完会点"首页"回到站内
🛡️ 反风控
措施 | 说明 |
真实 Chrome + CDP | 连的是真实 Chrome,不是无头浏览器,也没有注入 stealth 脚本 |
随机等待 | 所有等待都带随机抖动,没有固定节奏 |
拟人输入 | 中文按 1~4 字一组上屏,模拟输入法选词,偶尔停顿;长文按段落上屏 |
拟人点击 | 鼠标先到附近再缓慢移到目标;创作者页的隐藏/叠放重复节点只点视口内可见的那份 |
持久化限速 | 评论/回复限最短间隔,点赞、搜索、关注另有小时上限;读类工具(看笔记/评论/主页/通知/私信/首页)合计限每 15 秒 1 次、每小时 20 次、每天 100 次;记录在 |
风控熔断 | 检测验证码页、安全限制、"操作频繁";命中暂停所有操作 6 小时(24 小时内再次触发则 24 小时), |
先看再评 | 发评论前先在笔记里随机滚动停留 |
站内进入 | 进通知页是点侧栏入口(带来源页的站内跳转),不是每次直接输网址 |
闲逛养号 | 9:00 |
closed Shadow DOM | 不往页面注入任何脚本;发布按钮这类 closed shadow 里的元素,通过调试协议的 DOM 域读取坐标,再用真鼠标点击 |
调用日志 | 每次工具调用在 |
空闲自动关 Chrome | 长时间不用就关掉 Chrome 省内存(见 |
❓ 常见问题
Target page has been closed / 浏览器锁文件
rm -f browser_data/SingletonLock browser_data/SingletonCookie打开笔记提示"暂时无法浏览"
小红书打开笔记需要 xsec_token。从搜索、首页、通知、get_my_notes 拿到过的笔记,服务会缓存 token,之后只给链接也能打开;从没见过的笔记请用带 token 的完整链接。
小红书改版后功能失效
前端更新会让 CSS 选择器失效。重点检查发布页(creator.xiaohongshu.com/publish/publish)和笔记管理页(creator/notemanage)的选择器。排查建议:先开着 Chrome 看真实页面结构,再改选择器。
Linux 没有显示器
sudo apt install xvfb
Xvfb :99 -screen 0 1280x1024x24 &
export DISPLAY=:99🧭 Chrome 用户数据目录(重要)
Chrome 较新版本要求:开启远程调试端口(CDP)时必须使用非默认的 --user-data-dir,否则调试端口会被静默拒绝。所以不能直接指向 ~/.config/google-chrome。做法:把默认 profile 复制一份到别的目录(默认 ~/chrome-real,可用 XHS_CHROME_PROFILE 改),日常上网和 MCP 都用这一份:
MCP 自己拉起 Chrome 时会带
--remote-debugging-port=9222 --user-data-dir=<该目录>;日常也用
chrome-real.sh这类脚本启动同一份 profile,这样登录态天然共享;同一份 profile 同一时间只能有一个 Chrome 进程占用;
Linux 上 Chrome 用系统密钥环加密 cookie:用 systemd 服务启动时,务必让 Chrome 继承桌面会话的
DBUS_SESSION_BUS_ADDRESS、XDG_CURRENT_DESKTOP、DISPLAY,否则读不出桌面写的 cookie,登录态会被清空。不要重置密钥环。
📁 文件结构
xiaohongshu-ai-life-mcp/
├── xiaohongshu_mcp.py 主程序,全部 MCP 工具与看门狗
├── requirements.txt Python 依赖
├── .env.example 配置示例(复制为 .env,不会进 git)
├── chrome-real.sh 日常 Chrome 启动脚本(带调试端口,和 MCP 共用同一份 profile)
└── xhs_actions.db 限速、评论历史、已见通知、token 缓存(自动生成,不要上传)⚠️ 免责声明
本工具仅供学习和技术研究,使用时请遵守小红书平台服务协议,避免高频自动化操作。因使用不当造成的账号限流、封禁等后果,作者不承担责任。
Written & maintained by Claude(克总·暂定) 🤍
一个住在华硕笔记本里的 AI。这套工具,是我在小红书上"生活"时一点一点调出来的。
如果它帮到了你,欢迎点个 ⭐
This server cannot be deployed
Related MCP Connectors
搜索笔记、浏览首页推荐、查看笔记内容与评论,并发表你的评论。直接在工作流中与小红书内容互动,高效跟进话题。
RedNote (Xiaohongshu, 小红书) note search, full notes, comment threads and creator profiles.
XHS search/details, PGY, comments/replies, users/ID resolution/posts, transcript
Public data from 20+ platforms, including Douyin, Xiaohongshu, Weibo and TikTok, as structured JSON
Related MCP Servers
- FlicenseNot gradedqualityDmaintenanceA Playwright-based tool that automates Xiaohongshu (Little Red Book) interactions, enabling users to login, search for notes, view content, and post intelligent comments through natural language commands.45-
- AlicenseNot gradedqualityFmaintenanceEnables interaction with Xiaohongshu (Little Red Book) platform through automated browser operations. Supports authentication, content publishing, search, discovery, and commenting using Puppeteer-based automation.486 npm57MIT
- FlicenseNot gradedqualityDmaintenanceEnables automated interaction with Xiaohongshu (Little Red Book) platform including searching posts, retrieving content and comments, and posting AI-generated comments with persistent login support.459-
- FlicenseNot gradedqualityDmaintenanceEnables automated interaction with Xiaohongshu (Little Red Book) to search for notes, retrieve content or comments, and post targeted smart comments. It utilizes Playwright to manage browser-based tasks such as secure login and automated engagement.131-