360 Secure SkillHub
360 安全技能中心

post-to-xhs

该 Skill 调用 xhs-mcp-py 命令行工具,借助 Playwright 浏览器完成小红书登录(终端二维码、浏览器扫码、保存二维码图片三种方式),并发布图文、视频与文字卡片笔记,以及搜索笔记、点赞、收藏、评论、回复评论和退出登录;另可选启用 MCP 服务模式。所有操作均需先登录,登录 cookie 保存在本地并自动复用。

luweizheng
luweizheng
热度 69.41
最近更新 2026-05-18 12:09:09
分类:营销依赖:代码执行 / 联网浏览搜索 / 读写文件 / MCP 服务应用场景:社交媒体 / 自动化脚本 / 工作流

安装技能

复制下面的话术发给你的 Agent,它会通过 secure-skills 检索并安装该技能。

执行命令安装此 skill: npx secure-skills-cli add post2xhs
Metadata
name
post-to-xhs
description
小红书内容发布与管理助手。当用户要求登录、发小红书、搜索小红书、评论点赞收藏等任何小红书相关操作时使用。
metadata
{"openclaw":{"emoji":"📕","requires":{"bins":["convert"]}}}

xhs-mcp-py 使用方式

安装

首次使用需要确认环境中有 Python 解释器。

# 使用 pip 安装
pip install -U xhs-mcp-py

# 安装 Playwright 浏览器(必需)
playwright install chromium

⚠️ 重要:所有操作必须先登录

小红书所有功能(发布、搜索、点赞、评论等)都需要先登录。

1. 检查登录状态

执行任何操作前,先检查是否已登录:

xhs-mcp status
  • 输出 ✅ 已登录:可以继续操作
  • 输出 ❌ 未登录:必须先执行登录步骤

2. 登录方式(带 fallback 逻辑)

推荐按以下顺序尝试登录:

方式一:终端二维码(Claude Code / Open Code 推荐)

xhs-mcp login-qrcode --terminal
  • ⚠️ 需要安装 zbar 库才能解析二维码:
    • macOS: brew install zbar
    • Ubuntu: apt install libzbar0
  • 如果未安装 zbar,会自动保存二维码图片并提示路径
  • 用户扫码后按回车完成登录
  • 如果终端显示失败,fallback 到方式二

方式二:浏览器扫码登录(有图形界面的环境)

xhs-mcp login-browser
  • 会弹出浏览器窗口供用户扫码
  • 如果无法弹出浏览器(如远程服务器无图形界面),会提示使用二维码方式

方式三:保存二维码图片(OpenClaw 推荐)

xhs-mcp login-qrcode --save /tmp/qrcode.png
  • 将二维码图片发送给用户扫码
  • 用户扫码后按回车完成登录

如果以上方式都失败:

  • 提醒用户需要安装浏览器环境(Playwright + Chromium)
  • 或需要图形界面环境

3. 登录参数说明

login-qrcode 参数:

参数 类型 必需 说明
-s/--save string ❌ 保存二维码图片到指定路径
--terminal/--no-terminal flag ❌ 是否在终端显示二维码(默认 terminal)

登录成功后,cookies 会保存到本地文件,后续操作自动复用(有效期约 7-30 天)。

发布操作

发布图文内容

命令:xhs-mcp publish

参数:(-i/--image、--tag 可多次指定)

参数 类型 必需 说明
-t/--title string ✅ 文字标题
-c/--content string ✅ 文字正文内容
-i/--image string ✅ 图片路径(可多次指定)
--tag string ❌ 话题标签(可多次指定)
--headless/--no-headless flag ❌ 是否无头模式(默认 headless)

示例:

xhs-mcp publish -t "标题" -c "正文" -i /abs/1.jpg -i /abs/2.jpg --tag 旅行 --tag 美食

发布视频内容

命令:xhs-mcp publish-video

参数:

参数 类型 必需 说明
-t/--title string ✅ 文字标题
-c/--content string ✅ 文字正文内容
-v/--video string ✅ 视频路径
--tag string ❌ 话题标签(可多次指定)
--headless/--no-headless flag ❌ 是否无头模式(默认 headless)

示例:

xhs-mcp publish-video -t "标题" -c "正文" -v /abs/video.mp4

发布文字配图(文字卡片)

命令:xhs-mcp publish-text-card

参数:(-p/--page、--tag 可多次指定)

参数 类型 必需 说明
-c/--cover string ✅ 封面文字
-p/--page string ❌ 正文页文字(可多次指定,最多17页)
-s/--style string ❌ 卡片样式:基础|边框|备忘|手写|便签|涂写|简约|光影|几何
-t/--title string ❌ 文字标题
--content string ❌ 文字正文内容
--tag string ❌ 话题标签(可多次指定)
--headless/--no-headless flag ❌ 是否无头模式(默认 headless)

示例:

xhs-mcp publish-text-card -c "封面" -p "第一页" -p "第二页" -s "基础" -t "笔记标题"

浏览/搜索

搜索内容

命令:xhs-mcp search

参数:

参数 类型 必需 说明
-k/--keyword string ✅ 搜索关键词
--headless/--no-headless flag ❌ 是否无头模式(默认 headless)

输出:

命令会打印搜索到的笔记列表。每条结果会包含:

  • ID:对应后续命令里的 --feed-id
  • xsec_token:对应后续命令里的 --xsec-token

示例(截断):

1. 标题...
   作者: xxx | 点赞: 123
   ID: 1234567890abcdef
   xsec_token: xsec_xxx

互动(点赞/收藏/评论)

以下命令需要你先从搜索结果或笔记链接中拿到 feed_id 和 xsec_token。

点赞/取消点赞

命令:xhs-mcp like

参数:

参数 类型 必需 说明
--feed-id string ✅ 笔记 ID
--xsec-token string ✅ 访问令牌
--unlike flag ❌ 取消点赞(默认 false 为点赞)
--headless/--no-headless flag ❌ 是否无头模式(默认 headless)

示例:

xhs-mcp like --feed-id FEED_ID --xsec-token XSEC_TOKEN
xhs-mcp like --feed-id FEED_ID --xsec-token XSEC_TOKEN --unlike

收藏/取消收藏

命令:xhs-mcp favorite

参数:

参数 类型 必需 说明
--feed-id string ✅ 笔记 ID
--xsec-token string ✅ 访问令牌
--unfavorite flag ❌ 取消收藏(默认 false 为收藏)
--headless/--no-headless flag ❌ 是否无头模式(默认 headless)

示例:

xhs-mcp favorite --feed-id FEED_ID --xsec-token XSEC_TOKEN
xhs-mcp favorite --feed-id FEED_ID --xsec-token XSEC_TOKEN --unfavorite

发表评论

命令:xhs-mcp comment

参数:

参数 类型 必需 说明
--feed-id string ✅ 笔记 ID
--xsec-token string ✅ 访问令牌
-c/--content string ✅ 评论内容
--headless/--no-headless flag ❌ 是否无头模式(默认 headless)

示例:

xhs-mcp comment --feed-id FEED_ID --xsec-token XSEC_TOKEN -c "评论内容"

回复评论

命令:xhs-mcp reply-comment

参数:

参数 类型 必需 说明
--feed-id string ✅ 笔记 ID
--xsec-token string ✅ 访问令牌
-c/--content string ✅ 回复内容
--comment-id string ❌ 目标评论 ID
--user-id string ❌ 目标用户 ID
--headless/--no-headless flag ❌ 是否无头模式(默认 headless)

--comment-id 和 --user-id 至少需要提供一个。

示例:

xhs-mcp reply-comment --feed-id FEED_ID --xsec-token XSEC_TOKEN -c "回复内容" --comment-id COMMENT_ID

退出登录

命令:xhs-mcp logout

会删除本地 cookies。

(可选)MCP 模式

如果你的运行环境支持 MCP(例如 Claude Desktop / Cursor),可以启动 MCP:

xhs-mcp serve