返回 MCP 目录
public公开dns本地运行

dy-xhs-mcp-server

抖音和小红书内容提取MCP服务器,支持从抖音和小红书分享链接提取视频、图片和文本内容,提供无水印视频获取、AI语音识别、文案提取等功能。

article

README

🚀 抖音和小红书内容提取 MCP 服务器

这是一个基于 Model Context Protocol (MCP) 的服务器,支持从抖音和小红书分享链接中提取视频、图片和文本内容,为用户提供便捷的内容获取方式。

🚀 快速开始

步骤 1:获取 API 密钥

前往 阿里云百炼 API 获取您的 API 密钥: 获取阿里云百炼API

步骤 2:配置 API 密钥

创建 config.json 配置文件:

{
  "api_key": "sk-your-api-key-here",
  "model": "paraformer-v2",
  "language_hints": ["zh", "en"],
  "temp_dir": "temp"
}

步骤 3:配置 Claude Desktop

在 Claude Desktop、Cherry Studio 等支持 MCP Server 的应用配置文件中添加以下配置:

{
  "mcpServers": {
    "douyin-mcp": {
      "command": "python3.11",
      "args": ["-m", "douyin_mcp_server.server"]
    }
  }
}

步骤 4:开始使用

配置完成后,您就可以在支持的应用中正常调用 MCP 工具了。

✨ 主要特性

抖音功能

  • 🎵 无水印视频获取:可从抖音分享链接获取高质量无水印视频。
  • 🎧 智能音频提取:能自动从视频中提取音频内容。
  • 📝 AI 文本识别:运用先进的语音识别技术提取文本内容。

小红书功能

  • 📱 视频/图文提取:支持小红书视频笔记和图文笔记。
  • 📝 文案提取:自动提取笔记的文案内容。
  • 🖼️ 图片获取:提取笔记中的所有图片链接,并自动去除水印参数。
  • 🎤 视频语音识别:从视频笔记中提取语音文本(需要 API 密钥)。
  • 🎬 无水印视频:自动去除视频 URL 中的水印参数,获取高质量无水印视频。
  • 🤖 AI 水印移除:使用 AI 技术智能检测并移除视频中的水印(需要 OpenCV)。
  • 🔍 智能解析:支持多种链接格式,自动识别笔记类型和内容。

通用功能

  • 🧹 自动清理:智能清理处理过程中的临时文件。
  • 🔧 灵活配置:支持自定义 API 配置,默认使用 阿里云百炼 API

📦 安装指南

运行环境

  • Python:3.10 或更高版本

依赖库

  • requests - HTTP 请求处理
  • ffmpeg-python - 音视频处理
  • tqdm - 进度条显示
  • mcp - Model Context Protocol 支持
  • dashscope - 阿里云百炼 API 客户端
  • beautifulsoup4 - HTML 解析(用于小红书内容提取)

💻 使用示例

基础用法

# 示例代码可根据实际情况添加,这里假设调用获取抖音无水印下载链接的函数
from douyin_mcp_server import get_douyin_download_link

share_link = "your_douyin_share_link"
result = get_douyin_download_link(share_link)
print(result)

📚 详细文档

项目声明

官方文档地址:https://github.com/yzfly/douyin-mcp-server

请以本项目的 README.md 文件为准,了解项目的功能特性、使用方法、API 配置说明等详细信息。

重要提醒:第三方平台如因自身 MCP Server 功能支持度限制而无法正常使用,请联系相应平台方。本项目不提供任何形式的技术支持或保证,用户需自行承担使用本项目可能产生的任何损失或损害。

法律声明

  1. 本项目基于 Apache 2.0 协议发布。
  2. 本项目仅供学习和研究使用,不得用于任何违法或违规目的。
  3. 本项目的使用必须遵守相关法律法规。
  4. 本项目的作者和贡献者不对项目的任何部分承担法律责任。

API 配置说明

当前版本(>= 1.2.0)

最新版本默认使用阿里云百炼 API,具有以下优势:

  • ✅ 识别效果更好
  • ✅ 处理速度更快
  • ✅ 本地资源消耗更小

配置步骤

  1. 前往 阿里云百炼 开通 API 服务。
  2. 获取 API Key 并配置到 config.json 文件中的 api_key 字段。

旧版本兼容(<= 1.1.0)

如果您需要使用旧版本,请使用以下配置:

{
  "mcpServers": {
    "douyin-mcp": {
      "command": "uvx",
      "args": ["douyin-mcp-server@1.1.0"],
      "env": {
        "DOUYIN_API_KEY": "your-api-key-here"
      }
    }
  }
}

注意:旧版本使用硅基流动 API,需要在 硅基流动 注册账号并获取 API Key。

📖 1.1.0 版本文档

工具说明

抖音工具

  • get_douyin_download_link
    • 参数share_link (string),抖音分享链接或包含链接的文本。
    • 返回:JSON 格式的下载链接和视频信息。
    • 特点:无需 API 密钥即可使用。
  • extract_douyin_text
    • 处理流程:解析抖音分享链接,直接使用视频 URL 进行语音识别,返回提取的文本内容。
    • 参数share_link (string),抖音分享链接或包含链接的文本;model (string, 可选),语音识别模型,默认使用 paraformer-v2
    • 配置要求config.json,包含阿里云百炼 API 密钥的配置文件(必需)。
  • parse_douyin_video_info
    • 参数share_link (string),抖音分享链接。
    • 特点:仅解析视频基本信息,不下载视频文件。
  • 资源访问douyin://video/{video_id},通过视频 ID 获取详细信息。

小红书工具

  • get_xiaohongshu_content
    • 参数share_link (string),小红书分享链接或包含链接的文本。
    • 返回:JSON 格式,包含视频链接、文案、图片、作者等信息。
    • 特点:无需 API 密钥即可使用,支持视频和图文两种类型。
  • extract_xiaohongshu_text
    • 参数share_link (string),小红书分享链接或包含链接的文本。
    • 返回:笔记的文案内容(纯文本,包含标题、描述、标签)。
    • 特点:无需 API 密钥即可使用。
  • extract_xiaohongshu_video_text
    • 参数share_link (string),小红书分享链接或包含链接的文本;model (string, 可选),语音识别模型,默认使用 paraformer-v2
    • 返回:提取的文本内容(包含文案和语音内容)。
    • 配置要求config.json,包含阿里云百炼 API 密钥的配置文件(必需)。
  • get_xiaohongshu_images
    • 参数share_link (string),小红书分享链接或包含链接的文本。
    • 返回:JSON 格式的图片链接列表。
    • 特点:无需 API 密钥即可使用,图片链接已自动去除水印参数。
  • remove_xiaohongshu_video_watermark
    • 参数share_link (string),小红书分享链接或包含链接的文本;output_path (string, 可选),输出文件路径(可选,默认保存到 temp 目录)。
    • 返回:JSON 格式的处理结果,包含无水印视频路径、处理方法和置信度等信息。
    • 特点:需要安装 OpenCV (opencv-python) 才能使用完整 AI 功能;如果 OpenCV 不可用,会使用基础处理方法;支持智能检测水印位置并自动修复。
  • 资源访问xiaohongshu://note/{note_id},通过笔记 ID 获取详细信息。

项目结构

项目文件已按类型归类到以下目录:

  • docs/ - 文档目录:存放所有项目文档(Markdown 文件)。
  • configs/ - 配置目录:存放所有配置文件(JSON 文件)。
  • scripts/ - 脚本目录:存放所有可执行脚本(Python 和 Shell 脚本)。
  • douyin_mcp_server/ - 源代码目录:项目的主要源代码,采用分层架构。

详细说明请查看 docs/DIRECTORY_STRUCTURE.md

开发指南

本地开发环境搭建

# 克隆项目
git clone https://github.com/AshinH/dy-xhs-mcp-server.git
cd dy-xhs-mcp-server

# 安装依赖(开发模式)
pip install -e .

运行测试

# 启动服务器进行测试
python -m douyin_mcp_server.server

# 或使用启动脚本
bash scripts/start_server.sh

Claude Desktop 本地开发配置

确保项目根目录存在 config.json 配置文件,然后在 Claude Desktop 配置文件中添加:

{
  "mcpServers": {
    "douyin-mcp": {
      "command": "python3.11",
      "args": [
        "-m",
        "douyin_mcp_server.server"
      ],
      "cwd": "/path/to/your/douyin-mcp-server"
    }
  }
}

注意事项

  • 🔑 API 密钥必需:视频语音识别功能需要有效的阿里云百炼 API 密钥。
  • 🆓 部分功能免费:获取下载链接、提取文案等功能无需 API 密钥。
  • 📱 格式支持:支持大部分抖音视频格式和小红书内容格式。
  • 🚀 性能优化:使用阿里云百炼 API 获得更快更准确的识别效果。
  • 📝 小红书支持:支持视频笔记和图文笔记两种类型。

免责声明

使用风险

  • 使用者对本项目的使用完全自主决定,并自行承担所有风险。
  • 作者对使用者因使用本项目而产生的任何损失、责任或风险概不负责。

代码质量

  • 本项目基于现有知识和技术开发,作者努力确保代码的正确性和安全性。
  • 但不保证代码完全没有错误或缺陷,使用者需自行评估和测试。

第三方依赖

  • 本项目依赖的第三方库、插件或服务遵循各自的开源或商业许可。
  • 使用者需自行查阅并遵守相应协议。
  • 作者不对第三方组件的稳定性、安全性及合规性承担责任。

法律合规

  • 使用者必须自行研究相关法律法规,确保使用行为合法合规。
  • 任何违反法律法规导致的法律责任和风险,均由使用者自行承担。
  • 禁止使用本工具从事任何侵犯知识产权的行为。
  • 开发者不参与、不支持、不认可任何非法内容的获取或分发。

数据处理

  • 本项目不对使用者的数据收集、存储、传输等处理活动的合规性承担责任。
  • 使用者应自行遵守相关法律法规,确保数据处理行为合法正当。

责任限制

  • 使用者不得将项目作者、贡献者或相关方与使用行为联系起来。
  • 不得要求作者对使用项目产生的任何损失或损害负责。
  • 基于本项目的二次开发、修改或编译程序与原作者无关。

知识产权

  • 本项目不授予使用者任何专利许可。
  • 若使用本项目导致专利纠纷或侵权,使用者自行承担全部风险和责任。
  • 未经书面授权,不得用于商业宣传、推广或再授权。

服务终止

  • 作者保留随时终止向违反声明的使用者提供服务的权利。
  • 可能要求违规使用者销毁已获取的代码及衍生作品。
  • 作者保留在不另行通知的情况下更新本声明的权利。

⚠️ 重要提醒:在使用本项目前,请认真阅读并完全理解上述免责声明。如有疑问或不同意任何条款,请勿使用本项目。继续使用即视为完全接受上述声明并自愿承担所有风险和后果。

📄 许可证

Apache License 2.0

👨‍💻 作者

🤝 贡献

欢迎提交 Issue 和 Pull Request!我们期待您的参与和贡献。

📝 更新日志

v1.3.0 (最新) - 2026-01-28

  • 🏗️ 架构重构:采用分层架构设计,提升代码可维护性和可扩展性。
    • 新增 config/ 层:统一配置管理。
    • 新增 utils/ 层:工具函数模块化(HTTP 客户端、水印处理)。
    • 新增 services/ 层:业务逻辑分离(抖音服务、小红书服务)。
    • 新增 tools/ 层:MCP 工具函数封装。
    • 新增 resources/ 层:MCP 资源处理。
    • 重构 server.py:主入口文件,清晰组装所有模块。
  • 📚 文档完善:新增 ARCHITECTURE.md 架构说明文档。
  • 🔧 代码优化:提升代码复用性和可测试性。
  • 🔚 小红书功能完善
    • ✨ 新增 AI 水印移除功能(remove_xiaohongshu_video_watermark)。
    • 🎬 增强无水印视频获取能力。
    • 🖼️ 优化图片水印去除算法。
    • 🔍 改进内容解析准确性。

v1.2.0 - 2025-XX-XX

  • 🚀 性能提升:更快、更准确的视频文案提取。
  • 🔄 API 升级:切换到阿里云百炼 API,显著提升识别准确率。
  • 🔧 配置更新:环境变量从 DOUYIN_API_KEY 更新为 DASHSCOPE_API_KEY

v1.1.0 - 2025-XX-XX

  • 🐛 问题修复:修复提取视频时文件名过长导致的错误。

v1.0.0 - 2025-XX-XX

  • 🎉 首次发布:初始版本。
  • 核心功能:支持抖音视频文本提取。
  • 🔗 链接获取:支持获取无水印视频下载链接。
  • 🔐 环境配置:从环境变量读取 API 密钥。
  • 🧹 自动清理:自动清理临时文件。
  • ⚙️ 灵活配置:支持自定义 API 配置。
help

运行方式说明

cloud

托管运行

托管运行通常表示这个 MCP Server 由服务方环境承载,用户一般按页面提供的连接方式或授权流程接入,不需要在本地长期启动一个 MCP 进程

  1. 打开服务方连接页
  2. 完成授权或复制端点
  3. 在 MCP 客户端中连接
terminal

本地运行 / 其它方式

本地运行通常需要用户在自己的电脑或服务器上安装依赖,把 server_config 复制到 MCP 客户端,并按 env_schema 补齐环境变量、密钥或其它配置

  1. 复制 server_config
  2. 安装所需依赖
  3. 补齐环境变量后重启客户端