tiktok-public-research
Use when the user wants to read PUBLIC TikTok data - trending videos, a creator's public posts or likes, a hashtag feed, a single video's metadata or comments, related videos, or a user search - through the self-hosted tiktok MCP server. Covers the read-only tool inventory, the ms_token and residential-proxy reliability knobs, and the hard limits (no own feed, no saved, no DMs, no posting).
- License 许可
- MIT
- 最近更新
- 2026-11-02
- Stars
- ★ 0
- Forks
- 0
01 前言 Front Matter
- name
- tiktok-public-research
- description
- Use when the user wants to read PUBLIC TikTok data - trending videos, a creator's public posts or likes, a hashtag feed, a single video's metadata or comments, related videos, or a user search - through the self-hosted tiktok MCP server. Covers the read-only tool inventory, the ms_token and residential-proxy reliability knobs, and the hard limits (no own feed, no saved, no DMs, no posting).
02 资源文件 58
- 参考文档editing.md6.7 KB
- 许可证LICENSE.txt1.4 KB
- 参考文档pptxgenjs.md12.5 KB
- 脚本scripts/__init__.py—
- 脚本scripts/add_slide.py6.7 KB
- 脚本scripts/clean.py9.4 KB
- 脚本scripts/office/helpers/__init__.py—
- 脚本scripts/office/helpers/merge_runs.py5.4 KB
- 脚本scripts/office/helpers/simplify_redlines.py5.6 KB
- 脚本scripts/office/pack.py4.9 KB
- 脚本scripts/office/schemas/ecma/fouth-edition/opc-contentTypes.xsd1.9 KB
- 脚本scripts/office/schemas/ecma/fouth-edition/opc-coreProperties.xsd2.5 KB
- 脚本scripts/office/schemas/ecma/fouth-edition/opc-digSig.xsd2.8 KB
- 脚本scripts/office/schemas/ecma/fouth-edition/opc-relationships.xsd1.3 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/dml-chart.xsd73.2 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/dml-chartDrawing.xsd6.8 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/dml-diagram.xsd50.1 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/dml-lockedCanvas.xsd624 B
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/dml-main.xsd148.5 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/dml-picture.xsd1.2 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/dml-spreadsheetDrawing.xsd8.7 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/dml-wordprocessingDrawing.xsd14.4 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/pml.xsd81.7 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/shared-additionalCharacteristics.xsd1.2 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/shared-bibliography.xsd7.2 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/shared-commonSimpleTypes.xsd6.2 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlDataProperties.xsd1.2 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/shared-customXmlSchemaProperties.xsd880 B
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesCustom.xsd2.5 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesExtended.xsd3.4 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/shared-documentPropertiesVariantTypes.xsd7.3 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/shared-math.xsd22.8 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/shared-relationshipReference.xsd1.3 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/sml.xsd236.6 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/vml-main.xsd25.5 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/vml-officeDrawing.xsd24.7 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/vml-presentationDrawing.xsd535 B
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/vml-spreadsheetDrawing.xsd5.6 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/vml-wordprocessingDrawing.xsd3.9 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/wml.xsd167.4 KB
- 脚本scripts/office/schemas/ISO-IEC29500-4_2016/xml.xsd4.5 KB
- 脚本scripts/office/schemas/mce/mc.xsd3.1 KB
- 脚本scripts/office/schemas/microsoft/wml-2010.xsd25.9 KB
- 脚本scripts/office/schemas/microsoft/wml-2012.xsd3.7 KB
- 脚本scripts/office/schemas/microsoft/wml-2018.xsd901 B
- 脚本scripts/office/schemas/microsoft/wml-cex-2018.xsd1.7 KB
- 脚本scripts/office/schemas/microsoft/wml-cid-2016.xsd1002 B
- 脚本scripts/office/schemas/microsoft/wml-sdtdatahash-2020.xsd600 B
- 脚本scripts/office/schemas/microsoft/wml-symex-2015.xsd745 B
- 脚本scripts/office/soffice.py5.2 KB
- 脚本scripts/office/unpack.py4.0 KB
- 脚本scripts/office/validate.py3.6 KB
- 脚本scripts/office/validators/__init__.py336 B
- 脚本scripts/office/validators/base.py31.9 KB
- 脚本scripts/office/validators/docx.py16.0 KB
- 脚本scripts/office/validators/pptx.py9.6 KB
- 脚本scripts/office/validators/redlining.py8.7 KB
- 脚本scripts/thumbnail.py8.6 KB
03 SKILL.md 正文
TikTok public-research MCP (tiktok)
Read-only access to public TikTok data via the self-hosted tiktok MCP server
(~/source/repos/tiktok-mcp, a FastMCP wrapper over davidteather/TikTok-Api 7.3.3).
Same self-hosted ethos as the other social MCPs — but public-scrape only, no login.
Core principle
There is no authentication. The server logs into nothing and exposes nothing about
your account. An optional ms_token (an anti-bot cookie copied from a logged-in
tiktok.com session) and an optional residential proxy only make the scraper look less
bot-like — they are not credentials and do not unlock private data. Everything this
server reads is data any logged-out visitor could see.
Tools (all read-only, public data)
| Tool | Reads | Notes |
|---|---|---|
tiktok_trending(count) |
trending feed | works keyless; geo-localized to the egress IP/proxy |
tiktok_user_info(username) |
a creator's public profile + stats | needs ms_token (keyless 403s) |
tiktok_user_posts(username, count) |
a creator's public posts | needs ms_token |
tiktok_user_liked(username, count) |
a creator's public likes | only if that user made likes public (usually empty) |
tiktok_hashtag(tag, count) |
recent videos for a hashtag | needs ms_token |
tiktok_video_details(url_or_id) |
one video's metadata | URL preferred over numeric id |
tiktok_comments(url_or_id, count) |
top-level comments on a video | needs ms_token |
tiktok_related_videos(url_or_id, count) |
videos TikTok relates to one video | needs ms_token |
tiktok_search_users(query, count) |
public user accounts by name | user search only — 7.x has no generic video search |
count is clamped to [1, 50]. Errors come back structured ({error, detail, hint}),
never as a crash.
Reliability — the real constraint (not code, bot-detection)
tiktok_trendingworks with no setup. Every other tool typically returnsEmptyResponseExceptionuntil anms_tokenis set — TikTok bot-walls user/hashtag/ video/comment endpoints for an unauthenticated scraper. This is expected, not a bug.TIKTOK_MS_TOKEN— copy themsTokencookie value from a logged-intiktok.combrowser session into the gitignored.env(or pass viaclaude mcp add -e). Refresh it if calls start returning empty. It is a nonce, not a login — but treat it as private (gitignored, never logged, never committed).TIKTOK_PROXY(a residential proxy URL) — required on a datacenter/cloud egress IP (TikTok blocks datacenter IPs almost instantly). Not needed on a home residential IP. Same rule and same Byteful sticky-RO endpoint used for IG/FB on cloud egress.TIKTOK_BROWSER—chromium(default),webkit, orfirefox. A different engine sometimes evades detection; webkit alone did not fix the keyless user/hashtag block in testing, so reach forms_tokenfirst.
Hard limits (state them, never imply otherwise)
- No own-account data: your feed, your saved/favorites, your following, your likes — none are reachable (there's no session). For your own posts/profile use the official Display API instead, not this scraper.
- No DMs — no unofficial library exposes the TikTok message inbox; do not imply DM search.
- No writes — no posting, liking, following, commenting. Read-only by construction.
- Unofficial-API risk: heavy scraping from one IP gets that IP blocked
(
EmptyResponseException); it does not ban a TikTok account (nothing is logged in). Keep usage human-paced.
Setup
Server: ~/source/repos/tiktok-mcp (Python 3.12 .venv, TikTokApi + mcp[cli], Playwright
chromium/webkit installed). Registered user-scope as tiktok:
claude mcp add tiktok --scope user -e TIKTOK_MS_TOKEN=<msToken> -- ^
C:\source\repos\tiktok-mcp\.venv\Scripts\python.exe C:\source\repos\tiktok-mcp\server.py
Tools load on the next Claude Code restart. Per the toolchain's MCP policy, consider adding
tiktok to each project's disabledMcpServers and enabling it only where needed (same as the
drug MCPs). Full build/setup detail: docs/social/TIKTOK-MCP.md.
Pairs with the broader social MCP reference: [[social-media-toolchain]].
04 同仓库更多 Skills
clarify-requirements
Resolve genuine pre-execution ambiguity by scanning repo context, generating 1-6 grounded options, and asking 1-3 focused questions via AskUserQuestion. NOT for mid-task use (injection risk); NOT when the goal is already unambiguous; use to disambiguate vague prompts before any file edits.
openmm-md
Run FREE, open-source, Windows-native GPU molecular dynamics via the openmm-md MCP (OpenMM + CUDA on the local NVIDIA GPU). Use for protein / protein-ligand MD when you want a free stack or are on Windows without a Schrodinger license. Covers the full workflow (prepare, solvate, minimize, equilibrate, production, analyze, mmgbsa) AND an honest decision guide vs Schrodinger Desmond, including how to run Desmond legitimately on Linux or a cloud GPU with a real license. This is a deliberately LESSER free alternative and does NOT replace the schrodinger MCP tools. Do NOT use it to pick a free tool when a validated FEP+, WaterMap, IFD-MD, or Prime MM-GBSA result is actually required.
visual-review
Take screenshots of web pages and UI using Playwright for visual review and iteration
status
Diagnostic status report — shows metaswarm installation state, project setup, and potential issues
start
Use when starting work on any task, when the user mentions metaswarm, or when the user wants to begin tracked development work
setup
Interactive project setup — detects your project, configures metaswarm, writes project-local files