Xiaohongshu (rednote / 小红书) MCP server for Claude Desktop, Cursor and AI agents — search, read, comment, like and publish notes via npx. Node.js + Playwright port of xiaohongshu-mcp.
16 tools with mixed quality. Naming is generally verb-first and clear (check_login_status, publish_content, search_feeds). Descriptions exist for all tools but are inconsistent: some are detailed (publish_content, get_feed_detail), others are minimal (delete_cookies: 'Delete cookies file, reset login status'). Input schemas are present for all tools with proper JSON Schema structure and type definitions. However, many parameter descriptions are sparse or missing context. Output schemas are not documented, LLMs cannot predict return structure. Error handling is minimal; no recovery guidance. Security concern: xsec_token exposed as parameter in multiple tools (get_feed_detail, post_comment_to_feed, etc.), should be server-side injected. Tool composition is reasonable but some tools conflate concerns (e.g., get_feed_detail with load_all_comments, click_more_replies, scroll_speed parameters suggests UI automation details leaking into API).
检查小红书登录状态。返回 isLoggedIn;若 false,请先调用 get_login_qrcode 让用户扫码登录,再重试操作。建议在调用 search/list_feeds/publish/comment/like/favorite 等需要登录的工具前先呼叫此工具。
删除 cookies 文件,重置登录状态。删除后需要重新登录。
收藏小红书笔记
获取 rednote.com 笔记详情,默认返回前10条评论
获取小红书登录二维码(Base64 PNG + 超时秒数)。当 check_login_status 返回 isLoggedIn:false 时调用:把图片直接展示给用户扫码登录;扫码完成后 cookies 会自动保存,再重试原本的操作。
获取我的小红书主页
点赞小红书笔记
xsec_token exposed as tool parameter in 6 tools (get_feed_detail, user_profile, post_comment_to_feed, reply_comment_in_feed, like_feed, unlike_feed, favorite_feed, unfavorite_feed). Security tokens must never be agent-visible parameters, use server-side secret injection.
Output schemas not documented for any tool. LLMs cannot predict return structure (e.g., what fields does publish_content return? Is it {success, noteId, url} or {data: {...}}?). This forces agents to guess and wastes tokens on error recovery.
Inferred effective spec: <=2025-11-25.
| Scored | Grade | Overall | Spec posture | Rubric |
|---|---|---|---|---|
| 2026-09-23 | D | 59 | <=2025-11-25 | v2 |
获取 rednote.com(小红书海外站)首页 Feeds 列表(需登录)。每个 feed 都带 noteUrl 字段。未登录时会被风控墙拦截,请先 check_login_status / get_login_qrcode。
发表评论到小红书笔记
发布小红书图文内容
发布小红书视频内容(仅支持本地单个视频文件)
回复小红书笔记下的指定评论
搜索 rednote.com 内容(需要已登录;未登录会触发风控/登录墙导致超时——此时请先调用 check_login_status,未登录则用 get_login_qrcode 让用户扫码后再重试)
取消收藏小红书笔记
取消点赞小红书笔记
获取指定的小红书用户主页
Minimal error handling and no recovery guidance. Tools return generic errors without actionable next steps. E.g., if search_feeds fails due to login wall, the error should suggest 'Call check_login_status first, then get_login_qrcode if needed.'
Parameter descriptions are sparse or missing context. E.g., 'scroll_speed' in get_feed_detail lacks enum values or range. 'load_all_comments' boolean lacks guidance on performance impact. 'filters' object in search_feeds has nested properties but no per-property descriptions.
Tool composition leaks UI automation details. get_feed_detail accepts click_more_replies, scroll_speed, reply_limit, these are Playwright implementation details, not semantic API parameters. Agents should not reason about browser automation; abstract this into the tool.