MCP, MCP server
Douyin Upload Mcp Skill
通过抖音创作者平台(creator.douyin.com)发布视频和图文内容。首选调用 MCP 工具完成操作,MCP 无法满足时可运行 Skill 脚本兜底。禁止自行启动外部浏览器访问抖音。
Compatibility: Not stated.
Grade B
Minor issues only, no Medium or High. Worth a quick look at the findings below before installing.
Not a guarantee. A hygiene check of the source at the commit shown, not a security audit.
Rescanned at commit 996d75d1e600, unchanged since the check below.
NETWORK_NO_FIXED_HOST SECRETS_PATH_DOTENV
Why this grade
- NETWORK_NO_FIXED_HOST Low
Makes a network call whose host is not written as a fixed address.
src/browser.js, line 33
const res = await fetch(`${DAEMON_URL}/health`, { signal: AbortSignal.timeout(2000) }); - SECRETS_PATH_DOTENV Low
Mentions a .env file.
src/config.js, line 18
// ── 手动加载 .env 文件(不依赖 dotenv) ──
Any High, or two or more Medium findings, give D. One Medium gives C. Low findings or a security Note give B. Each code names a finding behind the letter.
Grades are a hygiene check of the source at the commit shown, on the date checked, not a security audit or a guarantee. The free directory grades are automated. Before release, a PlugVet engineer reviews every paid report and any grade we hold back, including all F grades, against the source code and the evidence we quote.
What was checked
Plain notes from the hygiene checks.
Permissions
Pass
No shell or command execution found, and no extra permission was declared.
Install and update
Pass
No install-time script found, and dependencies are pinned or absent.
Network
Concern
can reach a host that is not written as a fixed address.
NETWORK_NO_FIXED_HOST
src/browser.js, line 33
const res = await fetch(`${DAEMON_URL}/health`, { signal: AbortSignal.timeout(2000) });
src/browser.js, line 118
const res = await fetch(`${DAEMON_URL}/browser/acquire`);
src/mcp-server.js, line 209
const healthRes = await fetch(`${daemonUrl}/health`, { signal: AbortSignal.timeout(3000) });
Show more
src/mcp-server.js, line 219
const acquireRes = await fetch(`${daemonUrl}/browser/acquire`, { signal: AbortSignal.timeout(5000) });
Secrets
Concern
reads a credential or environment file.
SECRETS_PATH_DOTENV
src/config.js, line 9
* 2. .env.development(开发环境,git-ignored)
src/config.js, line 10
* 3. .env(基础配置,可提交到 git)
src/config.js, line 18
// ── 手动加载 .env 文件(不依赖 dotenv) ──
Show more
src/config.js, line 25
* 解析 .env 文件内容为 key-value 对象
src/config.js, line 51
const devEnv = parseEnvFile(join(projectRoot, '.env.development'));
src/config.js, line 52
const baseEnv = parseEnvFile(join(projectRoot, '.env'));
.gitignore, line 2
douyin-output/
README.en.md, line 138
All configuration is done via environment variables or `.env` files. A `.env` template is provided in the project root - you can edit it directly.
Agent instructions
Pass
No instruction to ignore earlier instructions or to hide a step.
Obfuscation
Pass
No encoded or minified payload found.
Licence
Pass
A licence file is present (LICENSE).
Maintainer activity
Pass
The latest commit is within the last 365 days.
Note
Hygiene check of commit 996d75d1e600. can reach a host that is not written as a fixed address. reads a credential or environment file.
Date and source
Date checked:
github.com
Commit graded: 996d75d1e600d9d29c831b7b21b52da2dff325f7
This link goes to the original host. PlugVet does not host or check what you download from there, and installing it is your own decision and risk.