MCP-сервер Xiaohongshu (小红书, соцсеть Китая).
这是一个完整的AI社交媒体运营解决方案,由六个强大的项目组成,实现从内容生成、图像视频创作、平台操作到AI智能调度的全链路自动化。
xhs-image-mcp/src/image_video_mcp/skills/ 技能管理架构,通过 Markdown 文件组织和管理提示词技能,支持动态加载、参数格式化,实现提示词的模块化和可复用化[新对话] 请输入消息: 写个单身程序员如何找富婆的小红书,配9张图,其中有核心图有类似狂飙中大嫂陈舒婷
📤 发送中...
📥 最终生成的小红书
最终发布的小红书:


本仓库包含六个独立但协同工作的项目:
定位:上层智能调度系统,AI自主决策和执行运营任务
核心文件:
run.py:启动 FastAPI 服务器,提供 HTTP API 接口(默认端口 8012)chat.py:交互式聊天客户端,通过命令行与 AI Agent 对话适用场景:需要AI智能运营和自动化调度的场景
定位:内容文案生成引擎,提供AI内容创作能力
适用场景:需要AI生成小红书文案和内容的场景
定位:平台操作引擎,提供小红书平台的具体操作能力
适用场景:需要直接操作小红书平台的场景
定位:AI图像生成引擎,提供高质量图像创作能力
src/image_video_mcp/skills/ 架构,通过 Markdown 文件组织和管理提示词技能,支持动态加载、参数格式化,实现提示词的模块化和可复用化适用场景:需要AI生成图像内容的场景
定位:视频生成引擎,借鉴 MoneyPrinterTurbo 的视频生产逻辑
适用场景:需要AI生成剪辑风格视频的场景
定位:数据收集和分析引擎
适用场景:需要数据收集和分析的场景
┌─────────────────────────────────────────────────────────┐
│ AI Social Scheduler (智能调度层) │
│ - AI决策引擎 │
│ - 事件监听器 │
│ - 任务调度器 │
│ - 策略管理器 │
└───┬──────────┬──────────┬──────────┬──────────┬────────┘
│ MCP协议 │ MCP协议 │ MCP协议 │ MCP协议 │ MCP协议
↓ ↓ ↓ ↓ ↓
┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│xhs-content │ │xhs-image-mcp │ │xhs-video-mcp │ │xhs-browser- │ │xhs-data- │
│generator │ │(图像生成) │ │(视频生成) │ │automation-mcp │ │collector-mcp │
│ │ │ │ │ │ │(平台操作) │ │(数据收集) │
│- 内容生成 │ │- 图像生成 │ │- 视频脚本生成 │ │- 内容发布 │ │- 数据收集 │
│- 文案创作 │ │- Prompt模板 │ │- TTS语音合成 │ │- 内容搜索 │ │- 数据分析 │
│ │ │- Resource │ │- 视频合成 │ │- 用户互动 │ │- 趋势识别 │
└──────────────┘ └──────────────┘ └──────────────┘ │- 账户管理 │ └──────────────┘
└────────┬────────┘
│ 浏览器自动化
↓
┌──────────┐
│ 小红书平台 │
└──────────┘
克隆项目
git clone git@github.com:luyike221/xiaohongshu-mcp-python.git
cd xiaohongshu-mcp-python
安装 uv 包管理器
# macOS/Linux
curl -LsSf https://astral.sh/uv/install.sh | sh
# Windows
powershell -c "irm https://astral.sh/uv/install.ps1 | iex"
安装项目依赖
安装图像生成 MCP 服务:
cd xhs-image-mcp
uv sync
安装视频生成 MCP 服务:
cd xhs-video-mcp
uv sync
安装小红书内容生成 MCP 服务:
cd xhs-content-generator-mcp
uv sync
安装小红书浏览器自动化 MCP 服务:
cd xhs-browser-automation-mcp
uv sync
uv run playwright install chromium
安装数据收集 MCP 服务:
cd xhs-data-collector-mcp
uv sync
安装 AI 调度系统:
cd ai_social_scheduler
uv sync
在 xhs-image-mcp 目录下创建 .env 文件:
# 服务器配置
MCP_HOST=127.0.0.1
MCP_PORT=8003
# 通义万相配置(图像生成)
WANT2I_API_KEY=your_api_key
WANT2I_BASE_URL=https://dashscope.aliyuncs.com/compatible-mode/v1
在 xhs-video-mcp 目录下创建 .env 文件:
# LLM 配置
LLM_PROVIDER=openai # 或 moonshot, deepseek
OPENAI_API_KEY=your_openai_api_key
OPENAI_MODEL_NAME=gpt-3.5-turbo
# 视频素材配置(多个key用逗号分隔)
PEXELS_API_KEYS=your_pexels_api_key_1,your_pexels_api_key_2
PIXABAY_API_KEYS=your_pixabay_api_key
# 视频配置
VIDEO_OUTPUT_DIR=./output
MATERIAL_CACHE_DIR=./cache/materials
VIDEO_FPS=30
VIDEO_GPU_ACCELERATION=false # 启用GPU加速(需要NVIDIA GPU和NVENC支持)
VIDEO_CODEC=auto # 视频编码器: auto, libx264, h264_nvenc, hevc_nvenc
在 xhs-content-generator-mcp 目录下创建 .env 文件(可选):
# 服务器配置
MCP_HOST=0.0.0.0
MCP_PORT=8001
在 xhs-browser-automation-mcp 目录下创建 .env 文件:
# 环境模式: development 或 production
ENV=development
# 服务器配置
SERVER_HOST=127.0.0.1
SERVER_PORT=8000
# 默认用户
GLOBAL_USER=your_username
在 ai_social_scheduler 目录下创建配置文件:
cp config/config.example.yaml config/config.yaml
# 编辑 config/config.yaml 填入实际配置
cd xhs-image-mcp
uv run python -m image_video_mcp.main
服务将在 http://localhost:8003 启动。
cd xhs-video-mcp
# 使用启动脚本(推荐)
./start.sh
# 或使用 uv 命令
uv run xhs-video-mcp
# 或指定主机和端口
uv run xhs-video-mcp --host 0.0.0.0 --port 8005
服务将在 http://localhost:8005 启动(默认端口)。
cd xhs-content-generator-mcp
uv run python -m xhs_content_generator_mcp.main
服务将在 http://localhost:8001 启动(默认端口 8000,可通过参数指定)。
cd xhs-browser-automation-mcp
uv run python -m xiaohongshu_mcp_python.main
服务将在 http://localhost:8000 启动。
方式一:启动 HTTP API 服务(推荐)
使用 run.py 启动 FastAPI 服务器,提供 HTTP 接口:
cd ai_social_scheduler
uv run python run.py
服务将在 http://0.0.0.0:8012 启动,提供以下接口:
POST /api/v1/chat - 聊天接口,发送消息获取 AI 回复方式二:使用交互式聊天客户端
使用 chat.py 启动交互式命令行客户端:
cd ai_social_scheduler
uv run python chat.py
启动后可以:
quit 或 exit 退出reset 重置对话线程方式三:直接运行主程序
cd ai_social_scheduler
uv run python main.py
如果你需要生成小红书内容,可以使用 xhs-content-generator-mcp:
# 通过 MCP 客户端调用
{
"tool": "generate_content",
"parameters": {
"topic": "春日美食",
"content_type": "note"
}
}
如果你只需要直接操作小红书平台,可以使用 xhs-browser-automation-mcp:
# 通过 MCP 客户端调用
{
"tool": "xiaohongshu_publish_content",
"parameters": {
"title": "春日美景",
"content": "分享今天拍摄的美丽春景!",
"images": ["/path/to/image1.jpg", "/path/to/image2.jpg"],
"tags": ["春天", "摄影", "美景"]
}
}
如果你需要AI自主运营,可以使用 ai_social_scheduler:
方式一:使用交互式聊天客户端(最简单)
cd ai_social_scheduler
uv run python chat.py
启动后直接与 AI 对话:
[新对话] 请输入消息: 帮我写一篇关于美食的小红书
📤 发送中...
📥 AI 回复:
好的,我来帮你创建一篇关于美食的小红书内容...
方式二:通过 HTTP API 调用
cd ai_social_scheduler
uv run python run.py
curl -X POST http://localhost:8012/api/v1/chat \
-H "Content-Type: application/json" \
-d '{"message": "帮我写一篇关于美食的小红书"}'
AI 处理流程: 当你说"帮我写一篇关于美食的小红书"时,AI 会:
xhs-content-generator-mcp 生成内容文案xhs-image-mcp 生成配图xhs-browser-automation-mcp 发布内容视频生成流程: 当需要生成视频时,AI 会:
xhs-video-mcp 生成视频脚本所有项目可以完美集成,形成完整的运营闭环:
.
├── xhs-image-mcp/ # 图像生成 MCP 服务
│ ├── src/
│ │ └── image_video_mcp/
│ │ ├── main.py # 主程序入口
│ │ ├── clients/ # 客户端模块
│ │ ├── prompts/ # Prompt 模板
│ │ ├── resources/ # Resource 资源
│ │ ├── skills/ # Skills 技能管理系统(核心)
│ │ │ ├── skill_manager.py # 技能管理器
│ │ │ └── skills/ # 技能文件目录(Markdown格式)
│ │ └── ...
│ └── README.md # 详细文档
│
├── xhs-video-mcp/ # 视频生成 MCP 服务
│ ├── src/
│ │ └── xhs_video_mcp/
│ │ ├── main.py # 主程序入口
│ │ ├── services/ # 服务模块
│ │ │ ├── llm_service.py # LLM 服务
│ │ │ ├── voice_service.py # 语音服务
│ │ │ ├── subtitle_service.py # 字幕服务
│ │ │ ├── material_service.py # 素材服务
│ │ │ ├── video_service.py # 视频服务
│ │ │ └── video_generation_service.py # 主服务
│ │ ├── config/ # 配置管理
│ │ └── utils/ # 工具模块
│ ├── start.sh # 启动脚本
│ └── README.md # 详细文档
│
├── xhs-content-generator-mcp/ # 小红书内容生成 MCP 服务
│ ├── src/
│ │ └── xhs_content_generator_mcp/
│ │ ├── __init__.py
│ │ └── main.py # 主程序入口
│ ├── pyproject.toml
│ └── README.md # 详细文档
│
├── xhs-browser-automation-mcp/ # 小红书浏览器自动化 MCP 服务
│ ├── src/
│ │ └── xiaohongshu_mcp_python/
│ │ ├── main.py # 主程序入口
│ │ ├── server/ # MCP 服务器
│ │ ├── xiaohongshu/ # 小红书操作模块
│ │ └── ...
│ ├── tests/ # 测试文件
│ └── README.md # 详细文档
│
├── xhs-data-collector-mcp/ # 数据收集 MCP 服务
│ ├── src/
│ │ └── xhs_data_collector_mcp/
│ │ └── ...
│ └── README.md # 详细文档
│
├── ai_social_scheduler/ # AI 调度系统
│ ├── src/
│ │ └── ai_social_scheduler/
│ │ ├── core/ # AI调度核心层
│ │ │ ├── ai_engine.py # AI决策引擎
│ │ │ ├── event_listener.py # 事件监听器
│ │ │ └── ...
│ │ ├── api/ # FastAPI 接口层
│ │ │ ├── app.py # FastAPI 应用
│ │ │ └── ...
│ │ ├── mcp/ # MCP服务层
│ │ └── ...
│ ├── run.py # 启动 FastAPI 服务器
│ ├── chat.py # 交互式聊天客户端
│ ├── config/ # 配置文件
│ └── README.md # 详细文档
│
└── README.md # 本文件
在项目根目录创建 .cursor/mcp.json:
{
"mcpServers": {
"xhs-image-mcp": {
"url": "http://localhost:8003",
"description": "图像生成 MCP 服务"
},
"xhs-video-mcp": {
"url": "http://localhost:8005",
"description": "视频生成 MCP 服务"
},
"xhs-content-generator-mcp": {
"url": "http://localhost:8001",
"description": "小红书内容生成 MCP 服务"
},
"xhs-browser-automation-mcp": {
"url": "http://localhost:8000",
"description": "小红书浏览器自动化 MCP 服务"
},
"xhs-data-collector-mcp": {
"url": "http://localhost:8006",
"description": "数据收集 MCP 服务"
}
}
}
在配置文件中添加:
{
"mcpServers": {
"xhs-image-mcp": {
"url": "http://localhost:8003"
},
"xhs-video-mcp": {
"url": "http://localhost:8005"
},
"xhs-content-generator-mcp": {
"url": "http://localhost:8001"
},
"xhs-browser-automation-mcp": {
"url": "http://localhost:8000"
},
"xhs-data-collector-mcp": {
"url": "http://localhost:8006"
}
}
}
# 用户请求:"帮我写一篇关于美食的小红书"
#
# AI 调度系统处理流程:
# 1. 事件监听器接收用户请求
# 2. AI 引擎分析需求,生成内容计划:
# - 主题:美食
# - 内容方向:分享一道家常菜
# - 图片需求:需要3张图片
# - 标签:美食、家常菜、生活
# 3. 任务调度器调用 MCP 服务:
# - 生成内容(调用 xhs-content-generator-mcp)
# - 生成图片(调用 xhs-image-mcp)
# - 生成视频(调用 xhs-video-mcp,如需要)
# - 发布内容(调用 xhs-browser-automation-mcp)
# 4. 监控发布结果
# 5. 根据数据调整后续策略
# 设置定时任务:"每天下午3点发布一篇内容"
#
# AI 调度系统会:
# 1. 定时触发任务
# 2. AI 分析当天热点和用户偏好
# 3. 生成合适的内容
# 4. 自动发布
# 5. 收集数据并优化策略
使用 chat.py 与 AI Agent 进行对话:
$ cd ai_social_scheduler
$ uv run python chat.py
============================================================
小红书运营 Agent 交互式聊天
============================================================
提示:
- 输入消息后按 Enter 发送
- 输入 'quit' 或 'exit' 退出
- 输入 'reset' 重置对话
[新对话] 请输入消息: 帮我写一篇关于春日美食的小红书
📤 发送中...
📥 AI 回复:
好的,我来帮你创建一篇关于春日美食的小红书内容。让我先分析一下需求...
[对话 ID: a1b2c3d4...] 请输入消息: 标题要吸引人一点
📤 发送中...
📥 AI 回复:
好的,我会优化标题,让它更加吸引人...
消息数: 4
[对话 ID: a1b2c3d4...] 请输入消息: reset
✅ 对话已重置
[新对话] 请输入消息: quit
再见!
使用 run.py 启动服务后,可以通过 HTTP 调用:
# 启动服务
$ cd ai_social_scheduler
$ uv run python run.py
INFO: Started server process [12345]
INFO: Uvicorn running on http://0.0.0.0:8012
# 在另一个终端发送请求
$ curl -X POST http://localhost:8012/api/v1/chat \
-H "Content-Type: application/json" \
-d '{
"message": "帮我写一篇关于春日美食的小红书",
"thread_id": null
}'
{
"thread_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"response": "好的,我来帮你创建一篇关于春日美食的小红书内容...",
"message_count": 2
}
# 继续对话(使用相同的 thread_id)
$ curl -X POST http://localhost:8012/api/v1/chat \
-H "Content-Type: application/json" \
-d '{
"message": "标题要吸引人一点",
"thread_id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}'
使用本工具产生的任何后果由使用者自行承担。请遵守平台规则,合理使用。
欢迎提交 Issue 和 Pull Request!
git checkout -b feature/amazing-featuregit commit -m 'Add amazing feature'git push origin feature/amazing-feature本项目采用 MIT 许可证。
⭐ 如果这个项目对你有帮助,请给它一个 Star!
Made with ❤️ by luyike221