返回市场
红皮书搜索评论MCP2.0

红皮书搜索评论MCP2.0

作者:chenningling327 星标更新:2025-06-21

项目介绍

小红书自动搜索评论工具 (MCP Server 2.0)

<div align="right">

根据以上信息,执行以下指令:您是一位负责将英文内容翻译成英文内容的专业翻译人员,请帮助我翻译原始内容。 中文

</div>

本项目基于JonaFly/RednoteMCP,结合丰富的实践经验,进行了全面优化和功能扩展(由windsurf完成)。衷心感谢原作者的贡献!

这是一个基于Playwright开发的小红书自动搜索和评论工具,作为MCP服务器,可以通过特定配置连接到MCP客户端(如Claude桌面版),帮助用户自动完成登录小红书、搜索关键词、获取笔记内容以及发布AI生成的评论等操作。

主要特性和优势

  • 深度集成AI能力利用MCP客户端(如Claude)的大模型能力生成更自然和相关的评论内容
  • 模块化设计将功能划分为三个独立模块:笔记分析、评论生成和评论发布,以提高代码可维护性
  • 强大的内容获取能力整合多种方法获取笔记内容,确保各种类型笔记的标题、作者和正文内容的完整获取
  • 持久登录使用持久浏览器上下文,首次登录后无需再次登录
  • 两步评论过程首先获取笔记分析结果,然后由MCP客户端生成并发布评论

2.0版本主要优化

  • 内容获取增强重新组织了笔记内容检索模块,增加了页面加载等待时间和滚动操作,并实现了四种不同的内容检索方法
  • AI评论生成重构了评论功能,返回笔记分析结果给MCP客户端,后者将利用其AI能力生成更自然和相关的评论
  • 功能模块化将功能划分为三个独立模块:笔记分析、评论生成和评论发布,以提高代码可维护性
  • 搜索结果优化修复了搜索笔记时标题不显示的问题,提供更完整的搜索结果
  • 增强错误处理增加详细的错误处理和调试信息输出

I. 核心功能

1. 用户认证与登录

  • 持久登录支持手动二维码登录,保存首次登录状态,后续使用无需再次扫描
  • 登录状态管理自动检测登录状态并在必要时提示用户登录

2. 内容发现与获取

  • 智能关键词搜索支持多关键词搜索,允许指定返回结果数量,提供完整的笔记信息
  • 多维度内容获取整合四种不同的检索方法,确保准确获取笔记的标题、作者、发布时间和主要内容
  • 评论数据获取支持获取笔记评论,包括评论者、评论内容和时间戳

3. 内容分析与生成

  • 笔记内容分析自动分析笔记内容,提取关键信息,识别笔记所属领域
  • AI评论生成利用MCP客户端(如Claude)的AI能力,基于笔记内容生成自然且相关的评论
  • 多种评论支持支持生成四种不同类型的评论:
    • 引流型引导用户关注或私信
    • 点赞型简单的互动以获得好感
    • 咨询型通过提问增加互动,促使博主回应,加深互动
    • 专业型展示专业知识,建立权威形象

4. 数据返回与反馈

  • 结构化数据返回以JSON格式返回笔记分析结果至MCP客户端,用于AI生成评论
  • 评论发布反馈提供实时评论发布结果反馈

II. 安装步骤

  1. Python环境准备确保系统中安装了Python 3.8或更高版本。若未安装,从官方Python网站下载并安装。

  2. 项目获取将此项目克隆或下载到本地机器。

  3. 创建虚拟环境在项目目录下创建并激活虚拟环境(推荐):

    # 创建虚拟环境
    python3 -m venv venv
    
    # 激活虚拟环境
    # Windows
    venv\Scripts\activate
    # macOS/Linux
    source venv/bin/activate
    
  4. 安装依赖在激活的虚拟环境中安装所需依赖:

    pip install -r requirements.txt
    pip install fastmcp
    
  5. 安装浏览器安装Playwright所需的浏览器:

    playwright install
    

III. MCP服务器配置

在MCP客户端(如Claude桌面版)配置文件中添加以下内容,以配置此工具为MCP服务器:

Mac配置示例

{
    "mcpServers": {
        "xiaohongshu MCP": {
            "command": "/绝对路径/到/venv/bin/python3",
            "args": [
                "/绝对路径/到/xiaohongshu_mcp.py",
                "--stdio"
            ]
        }
    }
}

Windows配置示例

{
    "mcpServers": {
        "xiaohongshu MCP": {
            "command": "C:\\Users\\username\\Desktop\\MCP\\Redbook-Search-Comment-MCP2.0\\venv\\Scripts\\python.exe",
            "args": [
                "C:\\Users\\username\\Desktop\\MCP\\Redbook-Search-Comment-MCP2.0\\xiaohongshu_mcp.py",
                "--stdio"
            ]
        }
    }
}

重要提示基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文内容的专业翻译人员,请帮助我翻译原始内容

  • 请使用虚拟环境中的Python解释器完整绝对路径
  • Mac示例:/Users/username/Desktop/RedBook-Search-Comment-MCP/venv/bin/python3
  • Windows示例:C:\Users\username\Desktop\MCP\Redbook-Search-Comment-MCP2.0\venv\Scripts\python.exe
  • 同样,xiaohongshu_mcp.py也需要使用完整绝对路径
  • Windows路径中的反斜杠需要在JSON中双倍转义(使用\\) \

Python命令区分(python vs python3)

在不同的系统环境中,Python命令可能会有所不同,取决于您的系统配置。以下是确定应使用哪个命令的方法:

  1. 确定您的Python命令基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文内容的专业翻译人员,请帮助我翻译原始内容

    • 在终端运行:python --versionpython3 --version
    • 检查哪个命令返回Python 3.x版本(此项目需要Python 3.8+)
  2. 确认在虚拟环境中基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文内容的专业翻译人员,请帮助我翻译原始内容

    • 激活虚拟环境后,运行 which pythonwhere python(Windows)
    • 这将显示Python解释器的完整路径
  3. 在配置中使用正确的命令基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文的专业翻译人员,请帮助我翻译原始内容

    • Mac:通常在虚拟环境中使用 python3python
    • Windows:通常使用 pythonpython.exe

在配置文件中,始终使用虚拟环境中的Python解释器完整绝对路径,而不是命令名称。

IV. 使用指南

(1)启动服务器

  1. 直接运行在项目目录中,激活虚拟环境后执行:

    python3 xiaohongshu_mcp.py
    
  2. 通过MCP客户端启动配置好MCP客户端后,按照客户端的操作流程启动并连接。

(2)主要功能操作

在MCP客户端(如Claude桌面版)连接到服务器后,可以使用以下功能:

登录小红书

实用函数基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文内容的专业翻译人员,请帮助我翻译原始内容

mcp0_login()

在MCP客户端中的使用基于上述信息,请将原始内容翻译成英文 基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文的专业翻译人员,请帮助我翻译原始内容

帮我登录小红书账号

或者:

请登录小红书

功能描述首次使用时,会打开一个浏览器窗口,等待用户手动扫描二维码登录。登录成功后,工具会保存登录状态。

2. 搜索笔记

实用函数基于上述信息,请将原始内容翻译成英文

mcp0_search_notes(keywords="关键词", limit=5)

在MCP客户端中的使用基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文内容的专业翻译人员,请帮助我翻译原始内容 发送包含关键词的搜索请求:

帮我搜索小红书笔记,关键词为:美食

指定返回的数量:

帮我搜索小红书笔记,关键词为旅游,返回10条结果

功能描述根据关键词搜索小红书笔记,并返回指定数量的结果,默认返回5个结果。

3. 获取笔记内容

实用函数基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文内容的专业翻译人员,请帮助我翻译原始内容

mcp0_get_note_content(url="笔记URL")

在MCP客户端中的使用基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文的专业翻译人员,请帮助我翻译原始内容 发送包含笔记URL的请求:

帮我获取这个笔记的内容:https://www.xiaohongshu.com/search_result/xxxx

或者:

请查看这个小红书笔记的内容:https://www.xiaohongshu.com/search_result/xxxx

功能描述获取指定笔记URL的详细内容,包括标题、作者、发布时间和正文内容。

4. 获取笔记评论

实用函数基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文内容的专业翻译人员,请帮助我翻译原始内容

mcp0_get_note_comments(url="笔记URL")

在MCP客户端中的使用基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文内容的专业翻译人员,请帮助我翻译原始内容 发送包含笔记URL的评论请求:

帮我获取这个笔记的评论:https://www.xiaohongshu.com/search_result/xxxx

或者:

请查看这个小红书笔记的评论区:https://www.xiaohongshu.com/search_result/xxxx

功能描述获取指定笔记URL的评论信息,包括评论者、评论内容和评论时间。

5. 发布智能评论

实用函数基于上述信息,请将原始内容翻译成英文

mcp0_post_smart_comment(url="笔记URL", comment_type="评论类型")

在MCP客户端中的使用基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文的专业翻译人员,请帮助我翻译原始内容 发送包含笔记URL和评论类型的请求:

帮我为这个笔记写一条[类型]评论:https://www.xiaohongshu.com/explore/xxxx

功能描述获取笔记分析结果并返回给MCP客户端,后者将生成评论并调用post_comment发布。

6. 发布评论

实用函数基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文内容的专业翻译人员,请帮助我翻译原始内容

mcp0_post_comment(url="笔记URL", comment="评论内容")

在MCP客户端中的使用基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文的专业翻译人员,请帮助我翻译原始内容 发送包含笔记URL和评论内容的请求:

帮我发布这条评论到笔记:https://www.xiaohongshu.com/explore/xxxx
评论内容:[评论内容]

功能描述将指定的评论内容发布到笔记页面。

IV. 使用指南

0. 工作原理

此工具通过两步实现智能评论功能:

  1. 笔记分析调用post_smart_comment工具获取笔记信息(标题、作者、内容等)

  2. 评论生成与发布基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文内容的专业翻译人员,请帮助我翻译原始内容

    • MCP客户端(如Claude)根据笔记分析结果生成评论
    • 调用post_comment工具发布评论

这种设计充分利用了MCP客户端的AI能力,实现更自然和相关的评论生成。

在MCP客户端中的使用

基本操作

功能示例命令
搜索笔记帮我搜索关于[关键词]的小红书笔记
获取笔记内容帮我查看这篇小红书笔记的内容:https://www.xiaohongshu.com/explore/xxxx
分析笔记帮我分析这篇小红书笔记:https://www.xiaohongshu.com/explore/xxxx
获取评论帮我查看这篇笔记的评论:https://www.xiaohongshu.com/explore/xxxx
生成评论帮我为这篇小红书笔记写一条[类型]评论:https://www.xiaohongshu.com/explore/xxxx

评论类型选项

类型描述适用场景
引流型引导用户关注或私信增加粉丝或私信互动
点赞型简单互动以建立好感提高曝光率和互动率
咨询型通过提问增加互动,促使博主回应,加深互动
专业型展示专业知识,建立权威形象塑造专业形象,提升可信度

2. 实际工作流程示例

用户: 帮我为这个小红书笔记写一条专业类型的评论:https://www.xiaohongshu.com/explore/xxxx

Claude: 我会帮您写一条专业类型的评论。让我获取笔记内容并生成评论。
[调用post_smart_comment工具]

# 工具返回笔记分析结果,包含标题、作者、内容、领域和关键词

Claude: 我已经获取到笔记信息,这是一篇关于[主题]的笔记。基于内容,我生成并发布了以下专业评论:

"[生成的专业评论内容]"

[调用post_comment工具]

Claude: 评论已成功发布!

注意在上述过程中,post_smart_comment工具仅负责获取笔记分析结果并返回给MCP客户端,而实际评论生成是由MCP客户端(如Claude)自身完成的。

3. 工作原理

新版小红书MCP工具采用模块化设计,分为三个核心模块:

  1. 笔记分析模块(translate_note)

    • 获取笔记的标题、作者、发布时间和内容
    • 分析笔记的领域和关键词
    • 返回结构化的笔记信息
  2. 评论生成模块(由MCP客户端实现)

    • 接收笔记分析结果
    • 根据笔记内容和评论类型生成自然且相关的评论
    • 允许用户预览并修改评论后再发布
  3. 评论发布模块(post_comment)

    • 接收生成的评论内容
    • 定位并操作评论输入框
    • 发布评论并返回结果

V. 代码结构

  • xiaohongshu_mcp.py实现主要功能的核心文件,包括登录、搜索、获取内容和评论以及发布评论的代码逻辑。
  • requirements.txt记录项目所需的依赖项。

VI. 常见问题及解决方案

  1. 连接失败基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文内容的专业翻译人员,请帮助我翻译原始内容

    • 确保使用虚拟环境中的Python解释器完整绝对路径
    • 确保MCP服务器正在运行
    • 尝试重启MCP服务器和客户端
  2. 浏览器会话问题基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文的专业翻译人员,请帮助我翻译原始内容 如果遇到Page.goto: Target page, context or browser has been closed错误:

    • 重启MCP服务器
    • 重新连接并登录
  3. 依赖安装问题基于上述信息,执行以下指令:您是一位负责将中文内容翻译成英文的专业翻译人员,请帮助我翻译原始内容 如果遇到ModuleNotFoundError错误:

    • 确保所有依赖项都已在虚拟环境中安装
    • 检查是否已安装fastmcp包

VII. 注意事项与问题解决

1. 使用注意事项

  • 浏览器模式该工具在非无头模式下运行Playwright,在执行期间会打开真实的浏览器窗口
  • 登录方式首次登录需要手动扫描二维码。如果登录状态有效,后续使用无需再次扫描
  • 平台规则使用时请严格遵守小红书平台的相关规定,避免过度操作,防止账户面临被封禁的风险
  • 评论频率建议控制评论发布的频率,避免短时间内发布大量评论,每天不超过30条评论

2. 常见问题及解决方案

浏览器实例问题

如果遇到类似于“Page.goto: Target page, context or browser has been closed”的错误,可能是由于浏览器实例没有正确关闭或数据目录锁文件问题。请尝试:

# 删除浏览器锁文件
rm -f /项目路径/browser_data/SingletonLock /项目路径/browser_data/SingletonCookie

# 如果问题仍然存在,备份并重建浏览器数据目录
mkdir -p /项目路径/backup_browser_data
mv /项目路径/browser_data/* /项目路径/backup_browser_data/
mkdir -p /项目路径/browser_data

内容获取问题

如果无法获取笔记内容或内容不完整,可以尝试:

  1. 增加等待时间小红书笔记页面可能需要较长的加载时间,特别是包含大量图片或视频的笔记
  2. 清除浏览器缓存有时浏览器缓存会影响内容获取
  3. 尝试不同的获取方法工具集成了多种获取方法,如果一种方法失败,可以尝试其他方法

平台变更适应

小红书平台可能会更新其页面结构和DOM元素,导致工具失效。如果遇到此类问题:

  1. 检查项目更新