输入判断
根据用户提供的素材判断发布类型:
- - 提供了视频文件 → 视频笔记
- 提供了图片 → 图文笔记
- 仅提供文本 → 提示用户至少提供图片或视频
约束
- - 标题最多 20 个中文字或英文单词(小红书平台限制,超长会被截断)
- 图文笔记至少 1 张图片(小红书不允许纯文本笔记)
- 视频笔记仅支持本地视频文件绝对路径(MCP 服务需要读取本地文件)
- 图片和视频不能混用,只能二选一(小红书平台限制)
- 正文中不要包含 # 标签(标签通过
tags 参数单独传递,MCP 服务会自动处理格式) - 发布前展示完整内容让用户确认(发布后无法撤回)
执行流程
1. 收集发布信息
确保以下内容齐全:
- -
title(必填)— 标题 - INLINECODE2 (必填)— 正文
- 图片列表或视频路径(必填其一)
- INLINECODE3 (可选)— 话题标签
- INLINECODE4 (可选)— 定时发布,ISO8601 格式
- INLINECODE5 (可选,仅图文)— 声明原创
- INLINECODE6 (可选)— 公开可见 | 仅自己可见 | 仅互关好友可见
信息不完整时,向用户询问缺少的部分。
2. 内容校验
- - 检查标题长度(≤20 中文字)
- 检查图片/视频文件路径是否为绝对路径
- 如用户提供 URL 内容,先用 WebFetch 提取文本和图片
3. 确认发布
向用户展示完整的发布内容预览:
- - 标题、正文、标签
- 图片列表或视频路径
- 定时时间、可见范围(如有)
等待用户确认后才执行发布。
4. 发布
图文笔记 — 调用 publish_content:
- -
title(string,必填) - INLINECODE9 (string,必填)
- INLINECODE10 (string[],必填)— 图片路径或 URL
- INLINECODE11 (string[],可选)
- INLINECODE12 (string,可选)
- INLINECODE13 (bool,可选)
- INLINECODE14 (string,可选)
视频笔记 — 调用 publish_with_video:
- -
title(string,必填) - INLINECODE17 (string,必填)
- INLINECODE18 (string,必填)— 本地视频绝对路径
- INLINECODE19 (string[],可选)
- INLINECODE20 (string,可选)
- INLINECODE21 (string,可选)
5. 报告结果
发布成功后,告知用户笔记 ID 和发布状态。
失败处理
| 场景 | 处理 |
|---|
| 未登录 | 引导使用 xhs-login |
| 标题超长 |
提示用户缩短标题 |
| 图片路径无效 | 提示检查路径是否正确 |
| 视频使用了相对路径 | 提示改为绝对路径 |
| 发布失败 | 展示错误信息,建议检查内容或重试 |
输入判断
根据用户提供的素材判断发布类型:
- - 提供了视频文件 → 视频笔记
- 提供了图片 → 图文笔记
- 仅提供文本 → 提示用户至少提供图片或视频
约束
- - 标题最多20个中文字或英文单词(小红书平台限制,超长会被截断)
- 图文笔记至少1张图片(小红书不允许纯文本笔记)
- 视频笔记仅支持本地视频文件绝对路径(MCP服务需要读取本地文件)
- 图片和视频不能混用,只能二选一(小红书平台限制)
- 正文中不要包含#标签(标签通过tags参数单独传递,MCP服务会自动处理格式)
- 发布前展示完整内容让用户确认(发布后无法撤回)
执行流程
1. 收集发布信息
确保以下内容齐全:
- - title(必填)— 标题
- content(必填)— 正文
- 图片列表或视频路径(必填其一)
- tags(可选)— 话题标签
- scheduleat(可选)— 定时发布,ISO8601格式
- isoriginal(可选,仅图文)— 声明原创
- visibility(可选)— 公开可见 | 仅自己可见 | 仅互关好友可见
信息不完整时,向用户询问缺少的部分。
2. 内容校验
- - 检查标题长度(≤20中文字)
- 检查图片/视频文件路径是否为绝对路径
- 如用户提供URL内容,先用WebFetch提取文本和图片
3. 确认发布
向用户展示完整的发布内容预览:
- - 标题、正文、标签
- 图片列表或视频路径
- 定时时间、可见范围(如有)
等待用户确认后才执行发布。
4. 发布
图文笔记 — 调用publish_content:
- - title(string,必填)
- content(string,必填)
- images(string[],必填)— 图片路径或URL
- tags(string[],可选)
- scheduleat(string,可选)
- isoriginal(bool,可选)
- visibility(string,可选)
视频笔记 — 调用publishwithvideo:
- - title(string,必填)
- content(string,必填)
- video(string,必填)— 本地视频绝对路径
- tags(string[],可选)
- schedule_at(string,可选)
- visibility(string,可选)
5. 报告结果
发布成功后,告知用户笔记ID和发布状态。
失败处理
提示用户缩短标题 |
| 图片路径无效 | 提示检查路径是否正确 |
| 视频使用了相对路径 | 提示改为绝对路径 |
| 发布失败 | 展示错误信息,建议检查内容或重试 |