nichescan
Analyzes TikTok short-video transcripts and openings, ranking clips by save intent to identify viral hook patterns and support competitor content research.
Click on "Install Server".
Wait a few minutes for the server to deploy. Once ready, it will show a "Started" state.
In the chat, type
@followed by the MCP server name and your instructions, e.g., "@nichescanrank my videos by save intent"
That's it! The server will respond to your query, and you can continue using it as needed.
Here is a step-by-step guide with screenshots.
nichescan — Douyin/TikTok Short-Video Hook & Transcript Analysis
抖音 / TikTok 短视频转录、爆款开头分析与收藏意图排序工具。
You are ranking by likes, so you are studying the wrong videos. Short-video search APIs never return play counts. nichescan ranks a whole niche by save intent and reads what creators actually said — not their captions.
Search terms: Douyin ASR · Douyin transcript · TikTok transcript · short-video hook analysis · viral hook analysis · competitor content research · save-ratio analysis
uvx nichescan rank ./data/*.jsonl # no API key, no ffmpeg, runs nowEnglish
What users search for
nichescan is a Douyin/TikTok short-video transcript and hook analysis tool. It helps you:
transcribe Douyin videos with ASR / speech-to-text
analyse TikTok and short-video hooks
rank competitors by save ratio and engagement intent
find reusable opening structures from real speech
generate niche-level competitor content research reports
中文:支持抖音视频语音转文字、抖音爆款开头分析、短视频竞品分析、短视频文案结构拆解、收藏率 / 藏赞比分析、TikTok短视频内容研究。
The two mistakes almost every content tool makes
1. Ranking by likes measures reach, not usefulness. A like is one tap. A save means "I want this again later" — and revisiting is what precedes buying. Measured on a real 55-clip cohort in the enterprise-AI niche:
Opening style | Mean likes | Mean saves per like |
Tutorial / method | 147,336 | 0.81 |
Money opportunity | 362,146 | 0.49 |
Direct question | 119,011 | 0.24 |
Trend prediction | 52,701 | 0.18 |
Workplace comedy | 12,950 | 0.46 |
The money-opportunity clips won on likes by 2.5x — and lost on save intent. Six clips in that cohort were saved more often than liked (ratio above 1.0). Like counts cannot see any of this.
2. Captions are not speech. The title and the spoken first three seconds are routinely different. Analysing titles means analysing the wrong object, so nichescan transcribes the audio.
Install
uvx nichescan --help # zero install
pipx install nichescan # or keep it around
pip install "nichescan[mcp]" # with MCP serverThe core package has no dependencies. rank works immediately.
scan additionally needs ffmpeg and an ASR key.
Use it
nichescan does not crawl. Point it at whatever your crawler produced — JSONL or CSV, from MediaCrawler or anything else.
# 1. Metrics only. No key, no ffmpeg.
nichescan rank ./data/*.jsonl --days 60 --top 60
# 2. Rank by intent rather than reach
nichescan rank ./data/*.jsonl --sort save_ratio
# 3. Full pipeline: download, transcribe, aggregate
export DASHSCOPE_API_KEY=sk-...
nichescan scan ./data/*.jsonl --days 60 --top 60
# 4. Re-render without re-downloading
nichescan report -o ./nichescan-out
# 5. Render the shareable card shown above
nichescan render -o ./nichescan-outOutput:
nichescan-out/
├── shortlist.csv ranked, with save_ratio and intent_band
├── transcripts.jsonl resumable; interrupted runs pick up where they stopped
└── report.md openings aggregated by save intentWhat the report tells you
| Opening pattern | Clips | Mean likes | Mean save/like | What it promises |
|---------------------|------:|-----------:|---------------:|-------------------------|
| method-promise | 8 | 147,336 | 0.81 | A repeatable method |
| already-happening | 4 | 362,146 | 0.49 | An existing fact |
| abstract-concept | 3 | 88,120 | 0.08 | Opens on abstraction |Plus two lists that matter more than the table: openings saved more than expected, and popular but disposable — structures to avoid even though their like counts look good.
ASR providers
Provider | Flag | Key | Notes |
Alibaba Qwen ASR |
|
| Best Chinese accuracy in our tests |
OpenAI-compatible |
|
| Any compatible endpoint |
FunASR (local) |
| none | Free, heavier, weaker on proper nouns |
Long clips are segmented automatically (API duration caps) and oversized payloads are compressed (base64 inflates bytes by a third).
MCP server
Works in Claude Desktop, Cursor, Cherry Studio — anything speaking MCP.
{
"mcpServers": {
"nichescan": {
"command": "uvx",
"args": ["--from", "nichescan[mcp]", "nichescan-mcp"],
"env": { "DASHSCOPE_API_KEY": "sk-..." }
}
}
}Tool | Needs a key | Does |
| no | Rank records by save intent |
| no | Explain the bands and why likes mislead |
| no | Label one opening line |
| yes | Download and transcribe real speech |
| no | Aggregate openings across the cohort |
Then just ask: "rank this niche by save intent and tell me which openings to copy".
Claude Code skill
git clone https://github.com/JustinXai/nichescan
cd nichescan && bash install_skill.shPython API
from nichescan import load_records, shortlist, analyse, render_markdown
records = load_records(["data/*.jsonl"])
picked = shortlist(records, top=60, sort_by="save_ratio")
print(render_markdown(analyse(picked, transcripts)))Honest limits
The engagement score is a proxy, not a play count. Nothing here can reconstruct plays, and any tool claiming otherwise is guessing.
Pattern labels are lexical heuristics. They point you at cohorts worth reading; they do not judge quality.
Save ratios vary by platform and niche. Recompute yours instead of importing the numbers above.
Respect each platform's terms and each creator's rights. Study structure; do not republish other people's words.
Related MCP server: douyin-mcp-server
中文
几乎所有内容工具都在犯的两个错
第一,按点赞排序衡量的是传播,不是有用。 点赞只是一次点击,收藏意味着「我以后还要用」——而反复回看才是成交的前置行为。 在企业AI赛道 55 条真实样本上实测:
开头类型 | 平均点赞 | 平均藏赞比 |
教程 / 给方法 | 147,336 | 0.81 |
财富机会 | 362,146 | 0.49 |
直接提问 | 119,011 | 0.24 |
趋势预测 | 52,701 | 0.18 |
职场段子 | 12,950 | 0.46 |
财富机会型点赞高出 2.5 倍,但收藏意图明显更低。这批样本里有 6 条收藏数超过点赞数。 只看点赞,这些全都看不见。
第二,标题不等于口播。 标题和真实前三秒经常完全不同。 只分析标题等于分析错了对象,所以 nichescan 直接转录音频。
安装
uvx nichescan --help # 免安装直接跑
pipx install nichescan
pip install "nichescan[mcp]" # 带 MCP server核心包零依赖,rank 立刻能用。scan 需要 ffmpeg 和一个语音识别 key。
使用
nichescan 不做爬取,它读你爬虫的产出(JSONL 或 CSV), 配合 MediaCrawler 等工具使用。
# 只算指标,不需要 key 和 ffmpeg
nichescan rank ./data/*.jsonl --days 60 --top 60
# 按收藏意图排序,而不是按传播
nichescan rank ./data/*.jsonl --sort save_ratio
# 完整流水线:下载 → 转录 → 汇总
export DASHSCOPE_API_KEY=sk-...
nichescan scan ./data/*.jsonl --days 60 --top 60报告除了统计表,还会给两个更重要的清单:收藏率异常高的开头, 以及点赞高但收藏极低的结构——后者是即使数据好看也不该抄的写法。
说明与边界
互动分是代理指标,不是播放量。任何声称能还原播放量的工具都在猜。
开头分类是词法启发式,用于定位值得细读的样本,不构成质量评判。
藏赞比因平台和赛道而异,请用自己的数据重新计算。
遵守平台规则与创作者权益:学结构,不要搬运原文。
License
MIT
This server cannot be installed
Maintenance
Resources
Unclaimed servers have limited discoverability.
Looking for Admin?
If you are the server author, to access and configure the admin panel.
Related MCP Servers
- AlicenseAqualityCmaintenanceAn MCP server that parses Douyin share links and performs intelligent content analysis using the Doubao video understanding model. It provides structured outputs including video summaries, categorized outlines, and step-by-step tutorial information.12MIT
- Alicense-qualityDmaintenanceAn MCP server that enables LLMs to automatically upload videos to the Douyin (TikTok China) creator platform with features like automated login, smart upload, SMS verification, and flexible publishing.311MIT
- Flicense-qualityBmaintenanceMCP server enabling AI agents to generate AI videos and images, analyze video content, and download videos from Douyin and Xiaohongshu.
- Alicense-qualityDmaintenanceAn MCP server for comprehensive video analysis — AI-powered transcription, visual frame analysis, and metadata extraction from 1000+ platforms.1MIT
Related MCP Connectors
MCP server for ByteDance Seedance AI video generation
MCP server for Wan AI video generation
MCP server for Kling AI video generation
Latest Blog Posts
- Who's Calling? MCP Hosts Are an Identity Blind Spot (And the Spec Knows It)By Om-Shree-0709 on .mcpAgent IdentityOAuth 2.1
- Your AI Chatbot Just Exposed Your CEO's Salary to an InternBy Om-Shree-0709 on .Agent IdentityMCP SecurityOAuth Delegation
- Why MCP Servers Need Execution Sandboxing (And Why Your Current Stack Isn't Enough)By Om-Shree-0709 on .Agentic AiPrompt InjectionWebAssembly
MCP directory API
We provide all the information about MCP servers via our MCP API.
curl -X GET 'https://glama.ai/api/mcp/v1/servers/JustinXai/nichescan'
If you have feedback or need assistance with the MCP directory API, please join our Discord server