Token导航 LogoToken导航TokenDH.com
Douyin Upload MCP Skill logo
浏览器工具未说明官方级别未说明来源级核验

Douyin Upload MCP Skill

MCP Server

基于CDP协议的抖音创作者平台自动化工具,支持视频和图文的自动发布、登录管理及浏览器托管。

工具数

8

提示词数

0

GitHub Stars

59

资源数

0
JavaScript浏览器自动化网页抓取

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

作者 / 组织

WJZ-P

提供方

WJZ-P

最后核验

2026/5/17 20:22

快速接入

先看主来源和安装命令,再打开仓库或文档;下面只保留这个条目的关键接入事实。

详细介绍

基于 CDP 操控抖音创作者平台,实现视频、图文的全自动发布。

Douyin Upload MCP Skill

快速开始 · 报告 Bug · 提出新特性

English | 中文

▲ 通过 MCP 工具全自动发布视频和图文

douyin-upload-mcp-skill

基于 CDP(Chrome DevTools Protocol)的抖音创作者平台自动化上传服务,通过 MCP 协议对外暴露工具,支持视频和图文的全自动发布。

功能

  • 视频发布:上传视频 → 等待转码 → AI 封面推荐 → 填写标题/简介 → 一键发布
  • 图文发布:上传多张图片 → 填写标题/简介 → 自动选择音乐 → 一键发布
  • 登录管理:扫码 → 短信验证 → 验证码输入,全流程自动推进
  • 浏览器托管:独立 Daemon 进程管理 Chrome 生命周期,闲置 30 分钟自动销毁

快速开始

1. 安装依赖

npm install

2. 作为 MCP 服务使用(推荐)

在 MCP 客户端配置中添加:

{
  "mcpServers": {
    "douyin": {
      "command": "node",
      "args": ["/src/mcp-server.js"]
    }
  }
}

或手动启动:

npm run mcp

3. 运行 Demo 测试

# 视频发布
node src/demo.js

# 图文发布
node src/demo-imagetext.js

MCP 工具列表

核心发布

工具说明必填参数可选参数
douyin_publish_video发布视频filePathtitle, description, timeout
douyin_publish_imagetext发布图文filePathstitle, description

登录与状态

工具说明可选参数
douyin_check_login检查登录状态并推进登录流程smsCode
douyin_probe探测页面元素状态
douyin_screenshot页面截图

页面操作

工具说明参数
douyin_navigate_to导航到指定抖音 URLurl, timeout
douyin_reload_page刷新页面timeout
douyin_browser_info获取浏览器连接信息

登录流程

MCP 不支持中途交互,登录需要多次调用 douyin_check_login 推进:

第 1 次调用 → phase: qrcode           → 截图保存二维码,用户扫码
第 2 次调用 → phase: sms_verification → 自动点击「接收短信验证码」
第 3 次调用 → phase: sms_code_input   → 提示输入验证码
第 4 次调用 → phase: logged_in        → 传入 smsCode 完成登录

架构

MCP Client → mcp-server.js → index.js → browser.js → Daemon
                                ↓
                          douyin-ops.js → operator.js → CDP → Chrome → douyin.com
文件职责
协议层mcp-server.jsMCP 工具注册,stdio 传输
入口层index.js对外暴露 createDouyinSession()
业务层douyin-ops.js抖音业务编排(上传、填写、发布)
原子层operator.jsCDP 底层操作(locate/click/type),带人类行为模拟
连接层browser.js连接 Daemon 获取浏览器实例
Daemondaemon/独立进程管理浏览器生命周期

配置

所有配置通过环境变量或 .env 文件设置。项目根目录已提供 .env 模板,可直接修改。

配置优先级: process.env > .env.development > .env > 代码默认值

.env.development 不会被 git 追踪,适合存放本地私有配置(如浏览器路径)。

浏览器配置

变量默认值说明
BROWSER_PATH自动检测浏览器可执行文件路径,支持 Chrome / Edge / Chromium。不设则自动按优先级检测系统已安装的浏览器
BROWSER_DEBUG_PORT40821CDP 远程调试端口。多个 skill(如 gemini-skill)共享同一端口即共享同一浏览器实例
BROWSER_HEADLESSfalse是否无头模式。首次使用建议关闭(false),方便扫码登录
BROWSER_USER_DATA_DIR~/.wjz_browser_data浏览器用户数据目录,保存登录态、cookies 等。首次运行会自动从系统默认浏览器目录克隆
BROWSER_PROTOCOL_TIMEOUT60000CDP 协议超时时间(毫秒)。视频上传等长操作可适当增大

Daemon 配置

变量默认值说明
DAEMON_PORT40225Daemon HTTP 服务端口。与 gemini-skill 共享同一 Daemon
DAEMON_TTL_MS1800000闲置超时时间(毫秒),默认 30 分钟。超时后自动关闭浏览器并退出 Daemon,下次调用时自动重新拉起

其他配置

变量默认值说明
OUTPUT_DIR./douyin-output截图、二维码等输出文件目录
DOUYIN_URLhttps://creator.douyin.com/抖音创作者平台首页 URL

关于 OpenClaw 浏览器复用

OpenClaw 的默认 CDP 端口是 18800。如果你希望复用 OpenClaw 已启动的浏览器会话,可以将 BROWSER_DEBUG_PORT 改为 18800

BROWSER_DEBUG_PORT=18800

但请注意:OpenClaw 自带的浏览器会话没有集成 Stealth 反爬插件,在反检测能力上不如本项目自行维护的浏览器实例。本项目使用 puppeteer-extra-plugin-stealth 提供了完整的反爬保护(隐藏 webdriver 标记、模拟真实浏览器指纹等),能更好地规避抖音平台的自动化检测。

建议:除非有特殊需求,推荐使用默认端口 40821,让项目自行管理浏览器实例以获得最佳的反爬效果。

技术栈

  • puppeteer-core + puppeteer-extra-plugin-stealth:CDP 连接 + 反检测
  • @modelcontextprotocol/sdk:MCP 协议实现
  • 原生 Node.js HTTP:Daemon 微服务

License

AGPL-3.0

LINUX DO

本项目支持 LINUX DO 社区

目录标签

目录标签

JavaScript浏览器自动化网页抓取自动化发布本地部署视频发布图文发布登录管理浏览器托管

接入字段

传输方式(transport,传输协议)

未说明

鉴权方式(authType,认证方式)

none

工具数量(toolCount,工具数)

8

资源数量(resourceCount,资源数)

0

提示词数量(promptCount,提示词数)

0

权限和风险

未说明none部署方式未说明

接入前请确认传输方式、认证方式和部署位置,并根据实际工具能力限制访问范围。

安装前确认

不要直接授予不必要的文件、网络或账号权限;先核对安装命令和配置内容。

仍需确认:installCommand

来源信息

继续浏览同类 MCP