socialdatax-skills 0.2.13 → 0.2.15
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md
CHANGED
|
@@ -68,7 +68,7 @@ Common search phrases for this skill package:
|
|
|
68
68
|
- Sensitive Check MCP server name: `sensitive-check`
|
|
69
69
|
- Sensitive Check future MCP registry name: `com.socialdatax/sensitive-check`
|
|
70
70
|
- Unified MCP registry name: none; this package installs skills and calls explicit platform services.
|
|
71
|
-
- Current public capability version: `0.2.
|
|
71
|
+
- Current public capability version: `0.2.15`
|
|
72
72
|
|
|
73
73
|
## Direct CLI
|
|
74
74
|
|
|
@@ -99,8 +99,8 @@ npx -y socialdatax-skills@latest douyin user-posts --sec-user-id "<sec_user_id>"
|
|
|
99
99
|
npx -y socialdatax-skills@latest douyin user-posts --profile-url "<profile_url_or_share_text>" --pretty
|
|
100
100
|
npx -y socialdatax-skills@latest douyin user-series --sec-user-id "<sec_user_id>" --pretty
|
|
101
101
|
npx -y socialdatax-skills@latest douyin user-series --profile-url "<profile_url_or_share_text>" --pretty
|
|
102
|
-
npx -y socialdatax-skills@latest kuaishou hot-search --pretty
|
|
103
102
|
npx -y socialdatax-skills@latest kuaishou search --keyword "露营" --pretty
|
|
103
|
+
npx -y socialdatax-skills@latest kuaishou user-search --keyword "露营" --pretty
|
|
104
104
|
npx -y socialdatax-skills@latest kuaishou detail --photo-id "<photo_id>" --pretty
|
|
105
105
|
npx -y socialdatax-skills@latest kuaishou detail --url "<kuaishou_content_url_or_share_text>" --pretty
|
|
106
106
|
npx -y socialdatax-skills@latest kuaishou comments --photo-id "<photo_id>" --pretty
|
|
@@ -120,7 +120,9 @@ npx -y socialdatax-skills@latest weibo comments --post-id "<post_id>" --all --in
|
|
|
120
120
|
npx -y socialdatax-skills@latest weibo comments --post-url "<weibo_post_url_or_share_text>" --pretty
|
|
121
121
|
npx -y socialdatax-skills@latest weibo replies --post-id "<post_id>" --comment-id "<comment_id>" --pretty
|
|
122
122
|
npx -y socialdatax-skills@latest weibo likers --post-id "<post_id>" --pretty
|
|
123
|
+
npx -y socialdatax-skills@latest weibo likers --post-url "<weibo_post_url_or_share_text>" --pretty
|
|
123
124
|
npx -y socialdatax-skills@latest weibo reposts --post-id "<post_id>" --pretty
|
|
125
|
+
npx -y socialdatax-skills@latest weibo reposts --post-url "<weibo_post_url_or_share_text>" --pretty
|
|
124
126
|
npx -y socialdatax-skills@latest weibo user-info --user-id "<user_id>" --pretty
|
|
125
127
|
npx -y socialdatax-skills@latest weibo user-info --profile-url "<profile_url_or_share_text>" --pretty
|
|
126
128
|
npx -y socialdatax-skills@latest weibo user-posts --user-id "<user_id>" --pretty
|
|
@@ -156,7 +158,7 @@ For commands that accept `--page-token`, continue only with the complete returne
|
|
|
156
158
|
Search pagination uses `--page-token` when continuing with a returned `next_page_token`. Omit `--page-token` on the first search request and pass the complete returned `next_page_token` only when continuing the same search chain.
|
|
157
159
|
|
|
158
160
|
XHS, Douyin, Kuaishou, Weibo, and WeChat Channels search use `--keyword` and optional `--page-token`.
|
|
159
|
-
Kuaishou search uses `--keyword` and optional `--page-token`. Kuaishou search does not accept Douyin semantic filters
|
|
161
|
+
Kuaishou work search uses `kuaishou search --keyword` and optional `--page-token`; Kuaishou creator search uses `kuaishou user-search --keyword` and optional `--page-token`. Kuaishou search does not accept Douyin semantic filters, and `kuaishou user-search` does not support `--since-days`.
|
|
160
162
|
Weibo and WeChat Channels search use `--keyword` and optional `--page-token`.
|
|
161
163
|
|
|
162
164
|
Douyin search filters use semantic values: `--sort-type` supports `general`,
|
|
@@ -166,7 +168,9 @@ Douyin search filters use semantic values: `--sort-type` supports `general`,
|
|
|
166
168
|
supports `all`, `video`, and `image`.
|
|
167
169
|
|
|
168
170
|
WeChat Channels search filters use semantic values: `--sort-type` supports
|
|
169
|
-
`all`, `
|
|
171
|
+
`all`, `time_descending`, and `collect_count_descending`;
|
|
172
|
+
`collect_count_descending` means hottest first / most collected first.
|
|
173
|
+
`--duration-range` supports `all`,
|
|
170
174
|
`under_5_min`, `between_5_and_20_min`, and `over_20_min`.
|
|
171
175
|
|
|
172
176
|
### Runtime Requirements
|
|
@@ -253,7 +257,6 @@ npx -y socialdatax-skills@latest xhs hot-search --pretty
|
|
|
253
257
|
npx -y socialdatax-skills@latest douyin hot-search --pretty
|
|
254
258
|
npx -y socialdatax-skills@latest douyin search --keyword "露营" --pretty
|
|
255
259
|
npx -y socialdatax-skills@latest douyin user-series --sec-user-id "<sec_user_id>" --pretty
|
|
256
|
-
npx -y socialdatax-skills@latest kuaishou hot-search --pretty
|
|
257
260
|
npx -y socialdatax-skills@latest kuaishou search --keyword "露营" --pretty
|
|
258
261
|
npx -y socialdatax-skills@latest weibo hot-search --pretty
|
|
259
262
|
npx -y socialdatax-skills@latest weibo search --keyword "露营" --pretty
|
|
@@ -305,8 +308,8 @@ Current XHS workflows include:
|
|
|
305
308
|
|
|
306
309
|
Current Kuaishou workflows include:
|
|
307
310
|
|
|
308
|
-
- Fetch the current Kuaishou / 快手 short-video hot list.
|
|
309
311
|
- Search related Kuaishou works by keyword.
|
|
312
|
+
- Search Kuaishou creator or account candidates by keyword before profile lookup.
|
|
310
313
|
- Resolve a Kuaishou work page link, short link, share text, or photo_id into structured work details.
|
|
311
314
|
- Fetch paginated first-level comments for comment analysis.
|
|
312
315
|
- Fetch paginated replies under a first-level comment.
|
|
@@ -335,9 +338,10 @@ Current Weibo workflows include:
|
|
|
335
338
|
- Resolve a Weibo post URL, short link, share text, or post_id into structured post details.
|
|
336
339
|
- Fetch paginated first-level comments for comment analysis.
|
|
337
340
|
- Fetch paginated replies under a first-level comment.
|
|
341
|
+
- Fetch paginated liker and repost lists from a post_id, post URL, short link, or share text.
|
|
338
342
|
- Continue Weibo list pagination only when `next_page_token` is non-empty; an empty string means there are no more results to request.
|
|
339
|
-
- Read
|
|
340
|
-
- Fetch paginated
|
|
343
|
+
- Read user profile data from a profile link, short link, share text, or user_id.
|
|
344
|
+
- Fetch paginated user post lists from a user_id, profile link, short link, or share text.
|
|
341
345
|
- Submit and check Weibo video 口播转文字 / speech-to-text transcript jobs; submit tools 提交完成后最多短等 15 秒.
|
|
342
346
|
|
|
343
347
|
Current WeChat Channels / 视频号 workflows include:
|
|
@@ -403,8 +407,8 @@ Current Sensitive Check workflows include:
|
|
|
403
407
|
|
|
404
408
|
| Tool | Public purpose |
|
|
405
409
|
| --- | --- |
|
|
406
|
-
| `kuaishou_get_hot_search_list` | Get the current Kuaishou / 快手 short-video hot list. |
|
|
407
410
|
| `kuaishou_search_videos` | Search Kuaishou works by natural-language keyword with optional `page_token` continuation; do not pass `page`. |
|
|
411
|
+
| `kuaishou_search_users` | Search Kuaishou creators by keyword with optional `page_token` continuation; do not pass `page`. |
|
|
408
412
|
| `kuaishou_get_video_detail_by_photo_id` | Fetch structured work details when the caller already has a photo_id. |
|
|
409
413
|
| `kuaishou_get_video_detail_by_url` | Resolve a Kuaishou work page link, short link, or share text into structured work details. |
|
|
410
414
|
| `kuaishou_get_video_comments_by_photo_id` | Fetch paginated first-level comments when the caller already has a photo_id. |
|
|
@@ -429,10 +433,14 @@ Current Sensitive Check workflows include:
|
|
|
429
433
|
| `weibo_get_post_comments_by_post_id` | Fetch paginated first-level comments when the caller already has a post_id. |
|
|
430
434
|
| `weibo_get_post_comments_by_post_url` | Fetch paginated first-level comments directly from a Weibo post URL, short link, or share text. |
|
|
431
435
|
| `weibo_get_post_comment_replies_by_comment_id` | Fetch paginated replies under a first-level comment by post_id and comment_id. |
|
|
432
|
-
| `
|
|
433
|
-
| `
|
|
434
|
-
| `
|
|
435
|
-
| `
|
|
436
|
+
| `weibo_get_post_liker_list_by_post_id` | Fetch paginated users who liked a Weibo post by post_id. |
|
|
437
|
+
| `weibo_get_post_liker_list_by_post_url` | Fetch paginated users who liked a Weibo post from a post URL, short link, or share text. |
|
|
438
|
+
| `weibo_get_post_repost_list_by_post_id` | Fetch paginated reposts for a Weibo post by post_id. |
|
|
439
|
+
| `weibo_get_post_repost_list_by_post_url` | Fetch paginated reposts for a Weibo post from a post URL, short link, or share text. |
|
|
440
|
+
| `weibo_get_user_info_by_user_id` | Fetch user profile data when the caller already has a user_id. |
|
|
441
|
+
| `weibo_get_user_info_by_profile_url` | Resolve a Weibo profile link, short link, or share text into user profile data. |
|
|
442
|
+
| `weibo_get_user_posts_by_user_id` | Fetch a paginated list of posts published by a user when the caller already has a user_id. |
|
|
443
|
+
| `weibo_get_user_posts_by_profile_url` | Fetch a paginated list of posts published by a user from a profile link, short link, or share text. |
|
|
436
444
|
| `weibo_submit_video_speech_text_by_post_url` | Submit a Weibo video speech-to-text transcript job from a post URL, short link, or share text; submit waits up to 15 seconds. |
|
|
437
445
|
| `weibo_submit_video_speech_text_by_post_id` | Submit a Weibo video speech-to-text transcript job when the caller already has a post_id; submit waits up to 15 seconds. |
|
|
438
446
|
| `weibo_get_video_speech_text_job` | Check a Weibo speech-to-text transcript job by job_id without creating a new task. |
|
package/cli.mjs
CHANGED
|
@@ -7,7 +7,7 @@ import { dirname, join, resolve } from "node:path";
|
|
|
7
7
|
import { fileURLToPath } from "node:url";
|
|
8
8
|
|
|
9
9
|
const PACKAGE_NAME = "socialdatax-skills";
|
|
10
|
-
const PACKAGE_VERSION = "0.2.
|
|
10
|
+
const PACKAGE_VERSION = "0.2.15";
|
|
11
11
|
const PACKAGE_SPEC = `${PACKAGE_NAME}@latest`;
|
|
12
12
|
const LOG_PREFIX = `[${PACKAGE_NAME}]`;
|
|
13
13
|
const MIN_NODE_VERSION = "20.18.1";
|
|
@@ -232,8 +232,8 @@ const DOUYIN_OPTION_DISPLAY_NAMES = {
|
|
|
232
232
|
secUserId: "--sec-user-id",
|
|
233
233
|
};
|
|
234
234
|
const KUAISHOU_DIRECT_ACTION_OPTIONS = {
|
|
235
|
-
"hot-search": ["pretty"],
|
|
236
235
|
search: ["keyword", "pageToken", "pages", "all", "maxItems", "sinceDays", "pretty"],
|
|
236
|
+
"user-search": ["keyword", "pageToken", "pages", "maxItems", "pretty"],
|
|
237
237
|
detail: ["photoId", "url", "pretty"],
|
|
238
238
|
comments: [
|
|
239
239
|
"photoId",
|
|
@@ -306,8 +306,8 @@ const WEIBO_DIRECT_ACTION_OPTIONS = {
|
|
|
306
306
|
"includeReplies",
|
|
307
307
|
"pretty",
|
|
308
308
|
],
|
|
309
|
-
likers: ["postId", "pageToken", "pages", "all", "maxItems", "pretty"],
|
|
310
|
-
reposts: ["postId", "pageToken", "pages", "all", "maxItems", "pretty"],
|
|
309
|
+
likers: ["postId", "postUrl", "pageToken", "pages", "all", "maxItems", "pretty"],
|
|
310
|
+
reposts: ["postId", "postUrl", "pageToken", "pages", "all", "maxItems", "pretty"],
|
|
311
311
|
"user-info": ["userId", "profileUrl", "pretty"],
|
|
312
312
|
"user-posts": [
|
|
313
313
|
"userId",
|
|
@@ -384,7 +384,11 @@ const WECHAT_DIRECT_ACTION_OPTIONS = {
|
|
|
384
384
|
],
|
|
385
385
|
};
|
|
386
386
|
const WECHAT_DIRECT_ACTION_NAMES = Object.keys(WECHAT_DIRECT_ACTION_OPTIONS).join(", ");
|
|
387
|
-
const WECHAT_SEARCH_SORT_TYPES = [
|
|
387
|
+
const WECHAT_SEARCH_SORT_TYPES = [
|
|
388
|
+
"all",
|
|
389
|
+
"time_descending",
|
|
390
|
+
"collect_count_descending",
|
|
391
|
+
];
|
|
388
392
|
const WECHAT_SEARCH_DURATION_RANGES = [
|
|
389
393
|
"all",
|
|
390
394
|
"under_5_min",
|
|
@@ -600,15 +604,16 @@ const PLATFORMS = {
|
|
|
600
604
|
"KUAISHOU_MCP_UPSTREAM_URL",
|
|
601
605
|
],
|
|
602
606
|
tools: [
|
|
603
|
-
{
|
|
604
|
-
name: "kuaishou_get_hot_search_list",
|
|
605
|
-
description: "Get the current Kuaishou / 快手 short-video hot list.",
|
|
606
|
-
},
|
|
607
607
|
{
|
|
608
608
|
name: "kuaishou_search_videos",
|
|
609
609
|
description:
|
|
610
610
|
"Search Kuaishou works by natural-language keyword with optional page_token continuation; do not pass page.",
|
|
611
611
|
},
|
|
612
|
+
{
|
|
613
|
+
name: "kuaishou_search_users",
|
|
614
|
+
description:
|
|
615
|
+
"Search Kuaishou creators by keyword with optional page_token continuation; do not pass page.",
|
|
616
|
+
},
|
|
612
617
|
{
|
|
613
618
|
name: "kuaishou_get_video_detail_by_photo_id",
|
|
614
619
|
description: "Fetch structured Kuaishou work details when the caller already has a photo_id.",
|
|
@@ -709,10 +714,20 @@ const PLATFORMS = {
|
|
|
709
714
|
name: "weibo_get_post_liker_list_by_post_id",
|
|
710
715
|
description: "Fetch a paginated list of users who liked a Weibo post by post_id.",
|
|
711
716
|
},
|
|
717
|
+
{
|
|
718
|
+
name: "weibo_get_post_liker_list_by_post_url",
|
|
719
|
+
description:
|
|
720
|
+
"Fetch a paginated list of users who liked a Weibo post from a post URL, short link, or share text.",
|
|
721
|
+
},
|
|
712
722
|
{
|
|
713
723
|
name: "weibo_get_post_repost_list_by_post_id",
|
|
714
724
|
description: "Fetch a paginated repost list for a Weibo post by post_id.",
|
|
715
725
|
},
|
|
726
|
+
{
|
|
727
|
+
name: "weibo_get_post_repost_list_by_post_url",
|
|
728
|
+
description:
|
|
729
|
+
"Fetch a paginated repost list for a Weibo post from a post URL, short link, or share text.",
|
|
730
|
+
},
|
|
716
731
|
{
|
|
717
732
|
name: "weibo_get_user_info_by_user_id",
|
|
718
733
|
description: "Fetch creator profile data when the caller already has a user_id.",
|
|
@@ -1654,12 +1669,12 @@ function printHelp() {
|
|
|
1654
1669
|
console.log(` npx -y ${PACKAGE_SPEC} douyin user-series --profile-url "<profile_url_or_share_text>" --pretty`);
|
|
1655
1670
|
console.log(" Call the Douyin creator short-drama series tool from a profile link or share text.");
|
|
1656
1671
|
console.log("");
|
|
1657
|
-
console.log(` npx -y ${PACKAGE_SPEC} kuaishou hot-search --pretty`);
|
|
1658
|
-
console.log(" Call the Kuaishou short-video hot list tool directly and print JSON.");
|
|
1659
|
-
console.log("");
|
|
1660
1672
|
console.log(` npx -y ${PACKAGE_SPEC} kuaishou search --keyword "露营" --pretty`);
|
|
1661
1673
|
console.log(" Call the Kuaishou work search tool directly and print JSON.");
|
|
1662
1674
|
console.log("");
|
|
1675
|
+
console.log(` npx -y ${PACKAGE_SPEC} kuaishou user-search --keyword "露营" --pretty`);
|
|
1676
|
+
console.log(" Call the Kuaishou creator search tool directly and print JSON.");
|
|
1677
|
+
console.log("");
|
|
1663
1678
|
console.log(` npx -y ${PACKAGE_SPEC} kuaishou detail --photo-id "<photo_id>" --pretty`);
|
|
1664
1679
|
console.log(" Call the Kuaishou work detail tool directly and print JSON.");
|
|
1665
1680
|
console.log("");
|
|
@@ -1716,9 +1731,15 @@ function printHelp() {
|
|
|
1716
1731
|
console.log(` npx -y ${PACKAGE_SPEC} weibo likers --post-id "<post_id>" --pretty`);
|
|
1717
1732
|
console.log(" Call the Weibo post liker list tool directly and print JSON.");
|
|
1718
1733
|
console.log("");
|
|
1734
|
+
console.log(` npx -y ${PACKAGE_SPEC} weibo likers --post-url "<weibo_post_url_or_share_text>" --pretty`);
|
|
1735
|
+
console.log(" Call the Weibo post liker list tool from a post link or share text.");
|
|
1736
|
+
console.log("");
|
|
1719
1737
|
console.log(` npx -y ${PACKAGE_SPEC} weibo reposts --post-id "<post_id>" --pretty`);
|
|
1720
1738
|
console.log(" Call the Weibo post repost list tool directly and print JSON.");
|
|
1721
1739
|
console.log("");
|
|
1740
|
+
console.log(` npx -y ${PACKAGE_SPEC} weibo reposts --post-url "<weibo_post_url_or_share_text>" --pretty`);
|
|
1741
|
+
console.log(" Call the Weibo post repost list tool from a post link or share text.");
|
|
1742
|
+
console.log("");
|
|
1722
1743
|
console.log(` npx -y ${PACKAGE_SPEC} weibo user-info --user-id "<user_id>" --pretty`);
|
|
1723
1744
|
console.log(" Call the Weibo creator profile tool directly and print JSON.");
|
|
1724
1745
|
console.log("");
|
|
@@ -1850,7 +1871,7 @@ function printHelp() {
|
|
|
1850
1871
|
console.log(" --platform <generic|xhs|douyin|kuaishou>");
|
|
1851
1872
|
console.log(" Target platform for sensitive-check text; default is generic.");
|
|
1852
1873
|
console.log(" --pages <number>");
|
|
1853
|
-
console.log(" Fetch and merge N pages from the current starting point for search, comments, replies, creator content lists, and creator series.");
|
|
1874
|
+
console.log(" Fetch and merge N pages from the current starting point for search, Kuaishou creator search, comments, replies, creator content lists, and creator series.");
|
|
1854
1875
|
console.log(" --all");
|
|
1855
1876
|
console.log(" Continue comments, replies, creator content lists, and creator series until next_page_token is empty; not supported for search.");
|
|
1856
1877
|
console.log(" --max-items <number>");
|
|
@@ -1874,8 +1895,8 @@ function printHelp() {
|
|
|
1874
1895
|
console.log(" Douyin content type filter; omit for all content types.");
|
|
1875
1896
|
console.log(" --page-token <token>");
|
|
1876
1897
|
console.log(" Continue token-paginated commands with the complete returned next_page_token. For search, omit it on the first request.");
|
|
1877
|
-
console.log(" --sort-type <all|
|
|
1878
|
-
console.log(" WeChat Channels / 视频号 search sort; omit for default sort.");
|
|
1898
|
+
console.log(" --sort-type <all|time_descending|collect_count_descending>");
|
|
1899
|
+
console.log(" WeChat Channels / 视频号 search sort; collect_count_descending means hottest first / most collected first; omit for default sort.");
|
|
1879
1900
|
console.log(" --duration-range <all|under_5_min|between_5_and_20_min|over_20_min>");
|
|
1880
1901
|
console.log(" WeChat Channels / 视频号 duration filter; omit for no duration filter.");
|
|
1881
1902
|
console.log(" --pretty Pretty-print direct CLI JSON output.");
|
|
@@ -2268,21 +2289,18 @@ function buildDouyinOperation(action, options) {
|
|
|
2268
2289
|
|
|
2269
2290
|
function buildKuaishouOperation(action, options) {
|
|
2270
2291
|
switch (action) {
|
|
2271
|
-
case "hot-search":
|
|
2272
|
-
return buildDirectOperation(
|
|
2273
|
-
"hot-search",
|
|
2274
|
-
{
|
|
2275
|
-
tool: "kuaishou_get_hot_search_list",
|
|
2276
|
-
toolArguments: {},
|
|
2277
|
-
},
|
|
2278
|
-
PLATFORMS.kuaishou
|
|
2279
|
-
);
|
|
2280
2292
|
case "search":
|
|
2281
2293
|
return buildDirectOperation(
|
|
2282
2294
|
"search",
|
|
2283
2295
|
buildKuaishouSearchCall(options),
|
|
2284
2296
|
PLATFORMS.kuaishou
|
|
2285
2297
|
);
|
|
2298
|
+
case "user-search":
|
|
2299
|
+
return buildDirectOperation(
|
|
2300
|
+
"user-search",
|
|
2301
|
+
buildKuaishouUserSearchCall(options),
|
|
2302
|
+
PLATFORMS.kuaishou
|
|
2303
|
+
);
|
|
2286
2304
|
case "detail":
|
|
2287
2305
|
return buildDirectOperation(
|
|
2288
2306
|
"detail",
|
|
@@ -2415,13 +2433,33 @@ function buildWeiboOperation(action, options) {
|
|
|
2415
2433
|
case "likers":
|
|
2416
2434
|
return buildDirectOperation(
|
|
2417
2435
|
"likers",
|
|
2418
|
-
|
|
2436
|
+
buildOneOfCall(options, {
|
|
2437
|
+
idOption: "postId",
|
|
2438
|
+
urlOption: "postUrl",
|
|
2439
|
+
idTool: "weibo_get_post_liker_list_by_post_id",
|
|
2440
|
+
urlTool: "weibo_get_post_liker_list_by_post_url",
|
|
2441
|
+
idArgument: "post_id",
|
|
2442
|
+
urlArgument: "post_url",
|
|
2443
|
+
idDisplay: "--post-id",
|
|
2444
|
+
urlDisplay: "--post-url",
|
|
2445
|
+
pageToken: options.pageToken,
|
|
2446
|
+
}),
|
|
2419
2447
|
PLATFORMS.weibo
|
|
2420
2448
|
);
|
|
2421
2449
|
case "reposts":
|
|
2422
2450
|
return buildDirectOperation(
|
|
2423
2451
|
"reposts",
|
|
2424
|
-
|
|
2452
|
+
buildOneOfCall(options, {
|
|
2453
|
+
idOption: "postId",
|
|
2454
|
+
urlOption: "postUrl",
|
|
2455
|
+
idTool: "weibo_get_post_repost_list_by_post_id",
|
|
2456
|
+
urlTool: "weibo_get_post_repost_list_by_post_url",
|
|
2457
|
+
idArgument: "post_id",
|
|
2458
|
+
urlArgument: "post_url",
|
|
2459
|
+
idDisplay: "--post-id",
|
|
2460
|
+
urlDisplay: "--post-url",
|
|
2461
|
+
pageToken: options.pageToken,
|
|
2462
|
+
}),
|
|
2425
2463
|
PLATFORMS.weibo
|
|
2426
2464
|
);
|
|
2427
2465
|
case "user-info":
|
|
@@ -2751,6 +2789,22 @@ function buildKuaishouSearchCall(options) {
|
|
|
2751
2789
|
};
|
|
2752
2790
|
}
|
|
2753
2791
|
|
|
2792
|
+
function buildKuaishouUserSearchCall(options) {
|
|
2793
|
+
if (!options.keyword) {
|
|
2794
|
+
throw new Error("Missing --keyword for kuaishou user-search.");
|
|
2795
|
+
}
|
|
2796
|
+
const toolArguments = {
|
|
2797
|
+
keyword: options.keyword,
|
|
2798
|
+
};
|
|
2799
|
+
if (options.pageToken) {
|
|
2800
|
+
toolArguments.page_token = options.pageToken;
|
|
2801
|
+
}
|
|
2802
|
+
return {
|
|
2803
|
+
tool: "kuaishou_search_users",
|
|
2804
|
+
toolArguments,
|
|
2805
|
+
};
|
|
2806
|
+
}
|
|
2807
|
+
|
|
2754
2808
|
function buildWeiboSearchCall(options) {
|
|
2755
2809
|
if (!options.keyword) {
|
|
2756
2810
|
throw new Error("Missing --keyword for weibo search.");
|
|
@@ -2783,7 +2837,7 @@ function buildWechatSearchCall(options) {
|
|
|
2783
2837
|
WECHAT_SEARCH_SORT_TYPES.join(", ")
|
|
2784
2838
|
);
|
|
2785
2839
|
} else if (sinceDays !== undefined) {
|
|
2786
|
-
toolArguments.sort_type = "
|
|
2840
|
+
toolArguments.sort_type = "time_descending";
|
|
2787
2841
|
}
|
|
2788
2842
|
if (options.durationRange !== undefined) {
|
|
2789
2843
|
toolArguments.duration_range = parseAllowedStringOption(
|
|
@@ -2881,22 +2935,6 @@ function buildWeiboRepliesCall(options) {
|
|
|
2881
2935
|
};
|
|
2882
2936
|
}
|
|
2883
2937
|
|
|
2884
|
-
function buildWeiboPostListByPostIdCall(options, action, tool) {
|
|
2885
|
-
if (!options.postId) {
|
|
2886
|
-
throw new Error(`Missing --post-id for weibo ${action}.`);
|
|
2887
|
-
}
|
|
2888
|
-
const toolArguments = {
|
|
2889
|
-
post_id: options.postId,
|
|
2890
|
-
};
|
|
2891
|
-
if (options.pageToken) {
|
|
2892
|
-
toolArguments.page_token = options.pageToken;
|
|
2893
|
-
}
|
|
2894
|
-
return {
|
|
2895
|
-
tool,
|
|
2896
|
-
toolArguments,
|
|
2897
|
-
};
|
|
2898
|
-
}
|
|
2899
|
-
|
|
2900
2938
|
function buildWechatCommentsCall(options) {
|
|
2901
2939
|
const hasObjectInput = Boolean(options.objectId || options.objectNonceId);
|
|
2902
2940
|
const hasUrlInput = Boolean(options.url);
|
|
@@ -3196,6 +3234,10 @@ function recordPaginatedItemDedupeKeys(itemDedupeState, dedupeKeys) {
|
|
|
3196
3234
|
}
|
|
3197
3235
|
|
|
3198
3236
|
function paginatedItemDedupeKeys(operation, item) {
|
|
3237
|
+
if (operation.operation === "user-search") {
|
|
3238
|
+
const userId = itemStringField(item, "user_id");
|
|
3239
|
+
return userId ? [`${operation.operation}:${operation.platform.id}:user_id:${userId}`] : [];
|
|
3240
|
+
}
|
|
3199
3241
|
if (shouldDeduplicateCommentItems(operation)) {
|
|
3200
3242
|
const commentId = itemStringField(item, "comment_id");
|
|
3201
3243
|
return commentId ? [`comment:${commentId}`] : [];
|
package/package.json
CHANGED
|
@@ -81,7 +81,7 @@ Optional arguments:
|
|
|
81
81
|
- Kuaishou `--page-token <next_page_token>`: opaque pagination token; omit it on the first search request. Continue only with the complete returned `next_page_token` from the same search pagination chain. Do not modify, truncate, redact, mask, omit, normalize, rebuild, generate, or replace the middle with ellipses.
|
|
82
82
|
- Weibo `--page-token <next_page_token>`: opaque pagination token; omit it on the first search request. Continue only with the complete returned `next_page_token` from the same search pagination chain. Do not modify, truncate, redact, mask, omit, normalize, rebuild, generate, or replace the middle with ellipses.
|
|
83
83
|
- WeChat Channels / 视频号 `--page-token <next_page_token>`: opaque pagination token; omit it on the first search request. Continue only with the complete returned `next_page_token` from the same search pagination chain. Do not modify, truncate, redact, mask, omit, normalize, rebuild, generate, or replace the middle with ellipses.
|
|
84
|
-
- WeChat Channels / 视频号 `--sort-type <all|
|
|
84
|
+
- WeChat Channels / 视频号 `--sort-type <all|time_descending|collect_count_descending>`: optional sort value; omit it for the default sort.
|
|
85
85
|
- WeChat Channels / 视频号 `--duration-range <all|under_5_min|between_5_and_20_min|over_20_min>`: optional duration filter; omit it for no duration filter.
|
|
86
86
|
- Weibo `--pages <n>`: fetch and merge N search pages from the current starting point; continue with returned `next_page_token`.
|
|
87
87
|
- WeChat Channels / 视频号 `--pages <n>`: fetch and merge N search pages from the current starting point; continue with returned `next_page_token`.
|
|
@@ -127,15 +127,15 @@ Douyin content type filter values:
|
|
|
127
127
|
- `image`: image/text posts.
|
|
128
128
|
|
|
129
129
|
The command prints JSON with `platform`, `tool`, `arguments`, and `data`. Search supports `--pages` and `--max-items`, but not `--all`, because search has no stable complete-result boundary. Multi-page output keeps merged results in `data.items` and adds `page_count`, `item_count`, and the next-page marker.
|
|
130
|
-
With CLI `--since-days <n>`, XHS and Douyin search automatically prefer newest-first sorting and the closest native publish-time range unless the user explicitly sets sort or publish-time filters; WeChat Channels search defaults to `
|
|
130
|
+
With CLI `--since-days <n>`, XHS and Douyin search automatically prefer newest-first sorting and the closest native publish-time range unless the user explicitly sets sort or publish-time filters; WeChat Channels search defaults to `time_descending`; Kuaishou and Weibo only apply CLI-side `publish_time` filtering.
|
|
131
131
|
Kuaishou search pagination:
|
|
132
132
|
- Continue only when `next_page_token` is not empty.
|
|
133
133
|
- Pass the complete returned `next_page_token` back unchanged as `page_token` for the same search pagination chain. Do not modify, truncate, redact, mask, omit, normalize, rebuild, generate, or replace the middle with ellipses.
|
|
134
134
|
|
|
135
135
|
WeChat Channels / 视频号 sort values:
|
|
136
|
-
- `all`:
|
|
137
|
-
- `
|
|
138
|
-
- `
|
|
136
|
+
- `all`: no sort restriction.
|
|
137
|
+
- `time_descending`: newest first.
|
|
138
|
+
- `collect_count_descending`: hottest first / most collected first.
|
|
139
139
|
|
|
140
140
|
WeChat Channels / 视频号 duration filter values:
|
|
141
141
|
- `all`: no duration filter.
|
|
@@ -197,7 +197,7 @@ For WeChat Channels / 视频号, call `wechat_search_videos` with:
|
|
|
197
197
|
- `keyword`: required search phrase or topic.
|
|
198
198
|
- `page_token`: optional opaque pagination token. Continue only with the complete returned `next_page_token` from the same search pagination chain. Do not modify, truncate, redact, mask, omit, normalize, rebuild, generate, or replace the middle with ellipses.
|
|
199
199
|
Do not pass `page` to `wechat_search_videos`; omit `page_token` on the first request.
|
|
200
|
-
- `sort_type`: optional, one of `all`, `
|
|
200
|
+
- `sort_type`: optional, one of `all`, `time_descending`, `collect_count_descending`; omit it for the default sort.
|
|
201
201
|
- `duration_range`: optional duration filter, one of `all`, `under_5_min`, `between_5_and_20_min`, `over_20_min`; omit it for no duration filter.
|
|
202
202
|
Continue WeChat Channels pagination only when `next_page_token` is not empty. Pass the complete returned `next_page_token` back unchanged as `page_token` for the same keyword and filter chain.
|
|
203
203
|
`--since-days` uses CLI-side filtering only and is not an MCP tool argument; for MCP-only calls, request newest-first/native publish-time filters where available and filter returned `publish_time` values in your analysis.
|
|
@@ -28,6 +28,7 @@ Current platform support:
|
|
|
28
28
|
- Xiaohongshu / XHS / RedNote creators through the `xhs_get_user_info_by_*` tools.
|
|
29
29
|
- Douyin / 抖音 creators through the `douyin_get_user_info_by_*` tools.
|
|
30
30
|
- Kuaishou / 快手 creators through the `kuaishou_get_user_info_by_*` tools.
|
|
31
|
+
- Kuaishou / 快手 creator discovery through `kuaishou_search_users` before profile lookup when only an account keyword or niche is known.
|
|
31
32
|
- Weibo / 微博 creators through the `weibo_get_user_info_by_*` tools.
|
|
32
33
|
- WeChat Channels / 视频号 creators through `wechat_get_user_info_by_user_id`.
|
|
33
34
|
|
|
@@ -45,6 +46,7 @@ npx -y socialdatax-skills@latest xhs user-info --user-id "<user_id>" --pretty
|
|
|
45
46
|
npx -y socialdatax-skills@latest xhs user-info --profile-url "<profile_url_or_share_text>" --pretty
|
|
46
47
|
npx -y socialdatax-skills@latest douyin user-info --sec-user-id "<sec_user_id>" --pretty
|
|
47
48
|
npx -y socialdatax-skills@latest douyin user-info --profile-url "<profile_url_or_share_text>" --pretty
|
|
49
|
+
npx -y socialdatax-skills@latest kuaishou user-search --keyword "<creator_keyword>" --pretty
|
|
48
50
|
npx -y socialdatax-skills@latest kuaishou user-info --user-id "<user_id>" --pretty
|
|
49
51
|
npx -y socialdatax-skills@latest kuaishou user-info --profile-url "<profile_url_or_share_text>" --pretty
|
|
50
52
|
npx -y socialdatax-skills@latest weibo user-info --user-id "<user_id>" --pretty
|
|
@@ -59,6 +61,9 @@ Optional arguments:
|
|
|
59
61
|
- Douyin `--sec-user-id <sec_user_id>`: preferred when the creator sec_user_id is already known.
|
|
60
62
|
- Douyin `--profile-url <profile_url_or_share_text>`: use for a profile URL, short link, or profile share text.
|
|
61
63
|
- `--pretty`: output formatting only.
|
|
64
|
+
- Kuaishou `user-search --keyword <creator_keyword>`: use when the user only has a creator name, account keyword, or niche and needs possible Kuaishou user_id candidates before profile lookup.
|
|
65
|
+
- Kuaishou user-search `--page-token <next_page_token>`: opaque pagination token; omit it on the first request and continue only with the complete returned `next_page_token` from the same creator-search chain.
|
|
66
|
+
- Kuaishou user-search `--pages <n>` and `--max-items <n>`: fetch and merge bounded creator-search pages; user-search does not support `--since-days` because creator search results are accounts, not published content items.
|
|
62
67
|
- Kuaishou `--user-id <user_id>`: preferred when the creator user_id is already known.
|
|
63
68
|
- Kuaishou `--profile-url <profile_url_or_share_text>`: use for a profile URL, short link, or profile share text.
|
|
64
69
|
- Weibo `--user-id <user_id>`: preferred when the creator user_id is already known.
|
|
@@ -81,6 +86,7 @@ MCP tools matching the direct CLI commands above:
|
|
|
81
86
|
- `xhs_get_user_info_by_profile_url`
|
|
82
87
|
- `douyin_get_user_info_by_sec_user_id`
|
|
83
88
|
- `douyin_get_user_info_by_profile_url`
|
|
89
|
+
- `kuaishou_search_users`
|
|
84
90
|
- `kuaishou_get_user_info_by_user_id`
|
|
85
91
|
- `kuaishou_get_user_info_by_profile_url`
|
|
86
92
|
- `weibo_get_user_info_by_user_id`
|
|
@@ -92,6 +98,7 @@ If MCP tools are already available in the current agent, use one of these tools:
|
|
|
92
98
|
- `xhs_get_user_info_by_profile_url`: use for profile URLs, short links, or profile share text.
|
|
93
99
|
- `douyin_get_user_info_by_sec_user_id`: preferred when `sec_user_id` is already known from search, detail, comments, or creator work lists.
|
|
94
100
|
- `douyin_get_user_info_by_profile_url`: use for profile URLs, short links, or profile share text.
|
|
101
|
+
- `kuaishou_search_users`: use when the user only has a creator keyword and needs possible Kuaishou user_id candidates. Pass `keyword`; pass `page_token` only for continuation. Do not pass `page`.
|
|
95
102
|
- `kuaishou_get_user_info_by_user_id`: preferred when `user_id` is already known from search, detail, comments, or creator work lists.
|
|
96
103
|
- `kuaishou_get_user_info_by_profile_url`: use for profile URLs, short links, or profile share text.
|
|
97
104
|
- `weibo_get_user_info_by_user_id`: preferred when `user_id` is already known.
|
|
@@ -101,3 +108,4 @@ If MCP tools are already available in the current agent, use one of these tools:
|
|
|
101
108
|
## Output Guidance
|
|
102
109
|
|
|
103
110
|
Report profile fields such as name, platform IDs, bio, verification, follower count, following count, received like count, IP location, and gender when available. Separate profile facts from strategic interpretation.
|
|
111
|
+
For Kuaishou creator search results, present account candidates separately from confirmed profile facts; use a returned `user_id` for profile lookup when the user chooses a candidate.
|
|
@@ -27,7 +27,6 @@ Current platform support:
|
|
|
27
27
|
|
|
28
28
|
- Xiaohongshu / XHS / RedNote search hot list through `xhs_get_search_hot_list`.
|
|
29
29
|
- Douyin / 抖音 hot-search through `douyin_get_hot_search_list`.
|
|
30
|
-
- Kuaishou / 快手 hot-search through `kuaishou_get_hot_search_list`.
|
|
31
30
|
- Weibo / 微博 hot-search through `weibo_get_hot_search_list`.
|
|
32
31
|
- WeChat Channels / 视频号 hot-search through `wechat_get_hot_search_list`.
|
|
33
32
|
- Xiaohongshu / XHS / RedNote notes through `xhs_search_notes`.
|
|
@@ -48,6 +47,7 @@ Current platform support:
|
|
|
48
47
|
- Xiaohongshu / XHS / RedNote creators through the `xhs_get_user_info_by_*` tools.
|
|
49
48
|
- Douyin / 抖音 creators through the `douyin_get_user_info_by_*` tools.
|
|
50
49
|
- Kuaishou / 快手 creators through the `kuaishou_get_user_info_by_*` tools.
|
|
50
|
+
- Kuaishou / 快手 creator discovery through `kuaishou_search_users` before profile lookup when only an account keyword or niche is known.
|
|
51
51
|
- Weibo / 微博 creators through the `weibo_get_user_info_by_*` tools.
|
|
52
52
|
- WeChat Channels / 视频号 creators through `wechat_get_user_info_by_user_id`.
|
|
53
53
|
- Xiaohongshu / XHS / RedNote creator notes through the `xhs_get_user_posted_notes_by_*` tools.
|
|
@@ -85,9 +85,9 @@ npx -y socialdatax-skills@latest douyin comments --aweme-id "<aweme_id>" --all -
|
|
|
85
85
|
npx -y socialdatax-skills@latest douyin user-info --sec-user-id "<sec_user_id>" --pretty
|
|
86
86
|
npx -y socialdatax-skills@latest douyin user-posts --sec-user-id "<sec_user_id>" --pretty
|
|
87
87
|
npx -y socialdatax-skills@latest douyin user-posts --sec-user-id "<sec_user_id>" --all --pretty
|
|
88
|
-
npx -y socialdatax-skills@latest kuaishou hot-search --pretty
|
|
89
88
|
npx -y socialdatax-skills@latest kuaishou search --keyword "<keyword>" --pretty
|
|
90
89
|
npx -y socialdatax-skills@latest kuaishou search --keyword "<keyword>" --pages 3 --pretty
|
|
90
|
+
npx -y socialdatax-skills@latest kuaishou user-search --keyword "<creator_keyword>" --pretty
|
|
91
91
|
npx -y socialdatax-skills@latest kuaishou detail --photo-id "<photo_id>" --pretty
|
|
92
92
|
npx -y socialdatax-skills@latest kuaishou comments --photo-id "<photo_id>" --pretty
|
|
93
93
|
npx -y socialdatax-skills@latest kuaishou comments --photo-id "<photo_id>" --all --include-replies --pretty
|
|
@@ -115,7 +115,6 @@ npx -y socialdatax-skills@latest wechat user-posts --user-id "<finder_user_id>"
|
|
|
115
115
|
```
|
|
116
116
|
|
|
117
117
|
Additional direct CLI entrypoints:
|
|
118
|
-
|
|
119
118
|
```bash
|
|
120
119
|
npx -y socialdatax-skills@latest xhs detail --url "<note_url_or_share_text>" --pretty
|
|
121
120
|
npx -y socialdatax-skills@latest xhs comments --url "<note_url_or_share_text>" --pretty
|
|
@@ -130,6 +129,7 @@ npx -y socialdatax-skills@latest douyin user-series --sec-user-id "<sec_user_id>
|
|
|
130
129
|
npx -y socialdatax-skills@latest douyin user-series --profile-url "<profile_url_or_share_text>" --pretty
|
|
131
130
|
npx -y socialdatax-skills@latest xhs sub-comments --note-id "<note_id>" --comment-id "<comment_id>" --pretty
|
|
132
131
|
npx -y socialdatax-skills@latest douyin replies --aweme-id "<aweme_id>" --comment-id "<comment_id>" --pretty
|
|
132
|
+
npx -y socialdatax-skills@latest kuaishou user-search --keyword "<creator_keyword>" --pages 3 --pretty
|
|
133
133
|
npx -y socialdatax-skills@latest kuaishou detail --url "<kuaishou_content_url_or_share_text>" --pretty
|
|
134
134
|
npx -y socialdatax-skills@latest kuaishou comments --url "<kuaishou_content_url_or_share_text>" --pretty
|
|
135
135
|
npx -y socialdatax-skills@latest kuaishou user-info --profile-url "<profile_url_or_share_text>" --pretty
|
|
@@ -138,7 +138,9 @@ npx -y socialdatax-skills@latest kuaishou replies --photo-id "<photo_id>" --comm
|
|
|
138
138
|
npx -y socialdatax-skills@latest weibo detail --post-url "<weibo_post_url_or_share_text>" --pretty
|
|
139
139
|
npx -y socialdatax-skills@latest weibo comments --post-url "<weibo_post_url_or_share_text>" --pretty
|
|
140
140
|
npx -y socialdatax-skills@latest weibo likers --post-id "<post_id>" --pretty
|
|
141
|
+
npx -y socialdatax-skills@latest weibo likers --post-url "<weibo_post_url_or_share_text>" --pretty
|
|
141
142
|
npx -y socialdatax-skills@latest weibo reposts --post-id "<post_id>" --pretty
|
|
143
|
+
npx -y socialdatax-skills@latest weibo reposts --post-url "<weibo_post_url_or_share_text>" --pretty
|
|
142
144
|
npx -y socialdatax-skills@latest weibo user-info --profile-url "<profile_url_or_share_text>" --pretty
|
|
143
145
|
npx -y socialdatax-skills@latest weibo user-posts --profile-url "<profile_url_or_share_text>" --pretty
|
|
144
146
|
npx -y socialdatax-skills@latest weibo replies --post-id "<post_id>" --comment-id "<comment_id>" --pretty
|
|
@@ -155,19 +157,18 @@ Required arguments:
|
|
|
155
157
|
- Use `xhs hot-search` without keyword when the user asks for current Xiaohongshu / XHS / RedNote hot topics or 小红书搜索热榜.
|
|
156
158
|
- Use `douyin hot-search` without keyword when the user asks for current Douyin hot topics.
|
|
157
159
|
- Use `xhs search --keyword <text>`, `douyin search --keyword <text>`, `kuaishou search --keyword <text>`, `weibo search --keyword <text>`, or `wechat search --keyword <text>` for keyword research.
|
|
160
|
+
- Use `kuaishou user-search --keyword <creator_keyword>` when the user wants to discover Kuaishou creator or account candidates by name, keyword, or niche before profile lookup.
|
|
158
161
|
- For detail, comments, replies, creator profile, creator posts, and creator series commands, use the ID argument shown in the CLI example or the matching URL/profile-url entrypoint, not both.
|
|
159
|
-
- Use `kuaishou hot-search` without keyword when the user asks for current Kuaishou / 快手 hot topics.
|
|
160
|
-
- Use `kuaishou search --keyword <text>` for Kuaishou keyword research.
|
|
161
|
-
- Use `weibo hot-search` without keyword when the user asks for current Weibo / 微博 hot topics.
|
|
162
162
|
- Use `wechat hot-search` without keyword when the user asks for current WeChat Channels / 视频号 hot topics.
|
|
163
163
|
|
|
164
164
|
Optional arguments:
|
|
165
165
|
|
|
166
166
|
- Search continuation uses `--page-token <next_page_token>` when a returned `next_page_token` is available. Omit `page_token` on the first token-paginated search request, and continue only with the complete returned `next_page_token` from the same chain.
|
|
167
|
-
- `--page-token <next_page_token>`: use for XHS/Douyin/Kuaishou/Weibo/WeChat Channels search continuation and
|
|
167
|
+
- `--page-token <next_page_token>`: use for XHS/Douyin/Kuaishou/Weibo/WeChat Channels search continuation, Kuaishou creator search continuation, and token-paginated comments, replies, creator posts, creator notes, creator videos, and creator series. Keep the original topic, content item, creator-search keyword, or creator target stable. Do not modify, truncate, redact, mask, omit, normalize, rebuild, generate, or replace the middle with ellipses.
|
|
168
168
|
- `--pages <n>`: fetch and merge N pages for search, comments, replies, creator posts, or creator series.
|
|
169
169
|
- `--all`: fetch comments, replies, creator posts, or creator series until `next_page_token` is empty; do not use it for search.
|
|
170
170
|
- `--max-items <n>`: stop after collecting N primary results.
|
|
171
|
+
- Kuaishou `user-search` supports `--pages <n>` and `--max-items <n>` for bounded creator candidate discovery; it does not support `--since-days`.
|
|
171
172
|
- `--since-days <1-365>`: keep search or creator content-list items whose public `publish_time` is within the last N days. Search stays bounded by `--pages`; creator content lists continue until the publish-time boundary when `--pages` is omitted.
|
|
172
173
|
- `--include-replies`: for first-level comments, also fetch nested second-level replies under each returned comment.
|
|
173
174
|
- `--sort-type`, `--note-type`, `--publish-time-range`, `--duration-range`, and `--content-type`: apply only to XHS, Douyin, or WeChat Channels keyword research commands when the user asks for filtering; Kuaishou and Weibo search currently use `--keyword` and optional `--page-token`.
|
|
@@ -178,7 +179,7 @@ Optional arguments:
|
|
|
178
179
|
|
|
179
180
|
- Use XHS commands for Xiaohongshu / XHS / RedNote / 小红书 search hot list, notes, comments, creators, and creator note lists.
|
|
180
181
|
- Use Douyin commands for Douyin / 抖音 works, comments, creators, hot topics, creator works, and creator short-drama series.
|
|
181
|
-
- Use Kuaishou commands for Kuaishou / 快手 short videos, comments, creators, creator works
|
|
182
|
+
- Use Kuaishou commands for Kuaishou / 快手 short videos, keyword research, comments, creators, and creator works.
|
|
182
183
|
- Use Weibo commands for Weibo / 微博 posts, comments, creators, creator posts, and hot topics.
|
|
183
184
|
- Use WeChat Channels / 视频号 commands for videos, comments, creators, creator videos, and hot topics.
|
|
184
185
|
- If the user asks for both platforms, keep findings separated by platform before comparing patterns.
|
|
@@ -198,8 +199,8 @@ MCP tools matching the direct CLI commands above:
|
|
|
198
199
|
|
|
199
200
|
- XHS: `xhs_get_search_hot_list`, `xhs_search_notes`, `xhs_get_note_detail_by_note_id`, `xhs_get_note_comments_by_note_id`, `xhs_get_user_info_by_user_id`, `xhs_get_user_posted_notes_by_user_id`, `xhs_get_note_detail_by_note_url`, `xhs_get_note_comments_by_note_url`, `xhs_get_user_info_by_profile_url`, `xhs_get_user_posted_notes_by_profile_url`, `xhs_get_note_sub_comments_by_comment_id`
|
|
200
201
|
- DOUYIN: `douyin_get_hot_search_list`, `douyin_search_videos`, `douyin_get_video_detail_by_aweme_id`, `douyin_get_video_comments_by_aweme_id`, `douyin_get_user_info_by_sec_user_id`, `douyin_get_user_posted_videos_by_sec_user_id`, `douyin_get_video_detail_by_url`, `douyin_get_video_comments_by_url`, `douyin_get_user_info_by_profile_url`, `douyin_get_user_posted_videos_by_profile_url`, `douyin_get_user_series_by_sec_user_id`, `douyin_get_user_series_by_profile_url`, `douyin_get_video_comment_replies_by_comment_id`
|
|
201
|
-
- KUAISHOU: `
|
|
202
|
-
- WEIBO: `weibo_get_hot_search_list`, `weibo_search_posts`, `weibo_get_post_detail_by_post_id`, `weibo_get_post_comments_by_post_id`, `weibo_get_user_info_by_user_id`, `weibo_get_user_posts_by_user_id`, `weibo_get_post_detail_by_post_url`, `weibo_get_post_comments_by_post_url`, `weibo_get_post_liker_list_by_post_id`, `weibo_get_post_repost_list_by_post_id`, `weibo_get_user_info_by_profile_url`, `weibo_get_user_posts_by_profile_url`, `weibo_get_post_comment_replies_by_comment_id`
|
|
202
|
+
- KUAISHOU: `kuaishou_search_videos`, `kuaishou_search_users`, `kuaishou_get_video_detail_by_photo_id`, `kuaishou_get_video_comments_by_photo_id`, `kuaishou_get_user_info_by_user_id`, `kuaishou_get_user_posted_videos_by_user_id`, `kuaishou_get_video_detail_by_url`, `kuaishou_get_video_comments_by_url`, `kuaishou_get_user_info_by_profile_url`, `kuaishou_get_user_posted_videos_by_profile_url`, `kuaishou_get_video_comment_replies_by_comment_id`
|
|
203
|
+
- WEIBO: `weibo_get_hot_search_list`, `weibo_search_posts`, `weibo_get_post_detail_by_post_id`, `weibo_get_post_comments_by_post_id`, `weibo_get_user_info_by_user_id`, `weibo_get_user_posts_by_user_id`, `weibo_get_post_detail_by_post_url`, `weibo_get_post_comments_by_post_url`, `weibo_get_post_liker_list_by_post_id`, `weibo_get_post_liker_list_by_post_url`, `weibo_get_post_repost_list_by_post_id`, `weibo_get_post_repost_list_by_post_url`, `weibo_get_user_info_by_profile_url`, `weibo_get_user_posts_by_profile_url`, `weibo_get_post_comment_replies_by_comment_id`
|
|
203
204
|
- WECHAT: `wechat_get_hot_search_list`, `wechat_search_videos`, `wechat_get_video_detail_by_encrypted_object_id`, `wechat_get_video_comments_by_object_id`, `wechat_get_user_info_by_user_id`, `wechat_get_user_posted_videos_by_user_id`, `wechat_get_video_detail_by_url`, `wechat_get_video_comments_by_url`, `wechat_get_user_posted_videos_by_url`, `wechat_get_video_comment_replies_by_comment_id`
|
|
204
205
|
|
|
205
206
|
Use the automatically listed MCP tools above as the source of truth for tool names. Pick the narrowest tool for the user's platform and task.
|