基于浏览器自动化的抖音视频/图文上传 MCP & Skill,适用于openclaw或任何支持skill,mcp的agent. o( ̄▽ ̄)ブ
{
"mcpServers": {
"douyin-upload-mcp-skill": {
"command": "<see-readme>",
"args": []
}
}
}No install config available. Check the server's README for setup instructions.
Are you the author?
Add this badge to your README to show your security score and help users find safe servers.
基于浏览器自动化的抖音视频/图文上传 MCP & Skill,适用于openclaw或任何支持skill,mcp的agent. o( ̄▽ ̄)ブ
Is it safe?
No package registry to scan.
No authentication — any process on your machine can connect.
AGPL-3.0. View license →
Is it maintained?
Last commit 9 days ago. 45 stars.
Will it work with my client?
Transport: stdio. Works with Claude Desktop, Cursor, Claude Code, and most MCP clients.
No automated test available for this server. Check the GitHub README for setup instructions.
No known vulnerabilities.
This server is missing a description. Tools and install config are also missing.If you've used it, help the community.
Add informationHave you used this server?
Share your experience — it helps other developers decide.
Sign in to write a review.
Persistent memory using a knowledge graph
Privacy-first. MCP is the protocol for tool access. We're the virtualization layer for context.
Pre-build reality check. Scans GitHub, HN, npm, PyPI, Product Hunt — returns 0-100 signal.
Monitor browser logs directly from Cursor and other MCP compatible IDEs.
MCP Security Weekly
Get CVE alerts and security updates for Douyin Upload Mcp Skill and similar servers.
Start a conversation
Ask a question, share a tip, or report an issue.
Sign in to join the discussion.
English | 中文
▲ 通过 MCP 工具全自动发布视频和图文
基于 CDP(Chrome DevTools Protocol)的抖音创作者平台自动化上传服务,通过 MCP 协议对外暴露工具,支持视频和图文的全自动发布。
npm install
在 MCP 客户端配置中添加:
{
"mcpServers": {
"douyin": {
"command": "node",
"args": ["<项目绝对路径>/src/mcp-server.js"]
}
}
}
或手动启动:
npm run mcp
# 视频发布
node src/demo.js
# 图文发布
node src/demo-imagetext.js
| 工具 | 说明 | 必填参数 | 可选参数 |
|---|---|---|---|
douyin_publish_video | 发布视频 | filePath | title, description, timeout |
douyin_publish_imagetext | 发布图文 | filePaths | title, description |
| 工具 | 说明 | 可选参数 |
|---|---|---|
douyin_check_login | 检查登录状态并推进登录流程 | smsCode |
douyin_probe | 探测页面元素状态 | — |
douyin_screenshot | 页面截图 | — |
| 工具 | 说明 | 参数 |
|---|---|---|
douyin_navigate_to | 导航到指定抖音 URL | url, 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.js | MCP 工具注册,stdio 传输 |
| 入口层 | index.js | 对外暴露 createDouyinSession() |
| 业务层 | douyin-ops.js | 抖音业务编排(上传、填写、发布) |
| 原子层 | operator.js | CDP 底层操作(locate/click/type),带人类行为模拟 |
| 连接层 | browser.js | 连接 Daemon 获取浏览器实例 |
| Daemon | daemon/ | 独立进程管理浏览器生命周期 |
所有配置通过环境变量或 .env 文件设置。项目根目录已提供 .env 模板,可直接修改。
配置优先级: process.env > .env.development > .env > 代码默认值
.env.development不会被 git 追踪,适合存放本地私有配置(如浏览器路径)。
| 变量 | 默认值 | 说明 |
|---|---|---|
BROWSER_PATH | 自动检测 | 浏览器可执行文件路径,支持 Chrome / Edge / Chromium。不设则自动按优先级检测系统已安装的浏览器 |
BROWSER_DEBUG_PORT | 40821 | CDP 远程调试端口。多个 skill(如 gemini-skill)共享同一端口即共享同一浏览器实例 |
BROWSER_HEADLESS | false | 是否无头模式。首次使用建议关闭(false),方便扫码登录 |
BROWSER_USER_DATA_DIR | ~/.wjz_browser_data | 浏览器用户数据目录,保存登录态、cookies 等。首次运行会自动从系统默认浏览器目录克隆 |
BROWSER_PROTOCOL_TIMEOUT | 60000 | CDP 协议超时时间(毫秒)。视频上传等长操作可适当增大 |
| 变量 | 默认值 | 说明 |
|---|---|---|
DAEMON_PORT | 40225 | Daemon HTTP 服务端口。与 gemini-skill 共享同一 Daemon |
DAEMON_TTL_MS | 1800000 | 闲置超时时间(毫秒),默认 30 分钟。超时后自动关闭浏览器并退出 Daemon,下次调用时自动重新拉起 |
| 变量 | 默认值 | 说明 |
|---|---|---|
OUTPUT_DIR | ./douyin-output | 截图、二维码等输出文件目录 |
DOUYIN_URL | https://creator.douyin.com/ | 抖音创作者平台首页 URL |
OpenClaw 的默认 CDP 端口是 18800。如果你希望复用 OpenClaw 已启动的浏览器会话,可以将 BROWSER_DEBUG_PORT 改为 18800:
BROWSER_DEBUG_PORT=18800
但请注意