@scavio/mcp-server 0.13.1 → 0.14.1
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 +23 -10
- package/dist/auth/cimd.d.ts +2 -0
- package/dist/auth/cimd.js +20 -0
- package/dist/auth/cimd.js.map +1 -0
- package/dist/auth/provider.d.ts +12 -0
- package/dist/auth/provider.js +43 -0
- package/dist/auth/provider.js.map +1 -0
- package/dist/auth/routes.d.ts +2 -0
- package/dist/auth/routes.js +214 -0
- package/dist/auth/routes.js.map +1 -0
- package/dist/auth/stores.d.ts +33 -0
- package/dist/auth/stores.js +69 -0
- package/dist/auth/stores.js.map +1 -0
- package/dist/index.js +15 -1
- package/dist/index.js.map +1 -1
- package/dist/lib/client.js +4 -1
- package/dist/lib/client.js.map +1 -1
- package/dist/lib/env.d.ts +3 -0
- package/dist/lib/env.js +4 -0
- package/dist/lib/env.js.map +1 -1
- package/dist/lib/errors.d.ts +5 -1
- package/dist/lib/errors.js +5 -1
- package/dist/lib/errors.js.map +1 -1
- package/dist/lib/tool-error.js +10 -0
- package/dist/lib/tool-error.js.map +1 -1
- package/dist/lib/trim-response.d.ts +6 -0
- package/dist/lib/trim-response.js +26 -0
- package/dist/lib/trim-response.js.map +1 -0
- package/dist/tools/airbnb.js +30 -49
- package/dist/tools/airbnb.js.map +1 -1
- package/dist/tools/amazon.js +11 -18
- package/dist/tools/amazon.js.map +1 -1
- package/dist/tools/appstore.js +16 -15
- package/dist/tools/appstore.js.map +1 -1
- package/dist/tools/booking.js +28 -45
- package/dist/tools/booking.js.map +1 -1
- package/dist/tools/capterra.js +16 -15
- package/dist/tools/capterra.js.map +1 -1
- package/dist/tools/companieshouse.js +11 -10
- package/dist/tools/companieshouse.js.map +1 -1
- package/dist/tools/ebay.js +21 -30
- package/dist/tools/ebay.js.map +1 -1
- package/dist/tools/extract.js +6 -5
- package/dist/tools/extract.js.map +1 -1
- package/dist/tools/g2.js +23 -22
- package/dist/tools/g2.js.map +1 -1
- package/dist/tools/glassdoor.js +18 -17
- package/dist/tools/glassdoor.js.map +1 -1
- package/dist/tools/google.js +154 -153
- package/dist/tools/google.js.map +1 -1
- package/dist/tools/googleads.js +20 -19
- package/dist/tools/googleads.js.map +1 -1
- package/dist/tools/googleplay.js +14 -13
- package/dist/tools/googleplay.js.map +1 -1
- package/dist/tools/homedepot.js +15 -28
- package/dist/tools/homedepot.js.map +1 -1
- package/dist/tools/indeed.js +20 -39
- package/dist/tools/indeed.js.map +1 -1
- package/dist/tools/index.d.ts +5 -4
- package/dist/tools/index.js +5 -4
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/instagram.js +59 -58
- package/dist/tools/instagram.js.map +1 -1
- package/dist/tools/kuaishou.js +47 -46
- package/dist/tools/kuaishou.js.map +1 -1
- package/dist/tools/linkedin.js +26 -25
- package/dist/tools/linkedin.js.map +1 -1
- package/dist/tools/metaads.js +21 -20
- package/dist/tools/metaads.js.map +1 -1
- package/dist/tools/reddit.js +48 -47
- package/dist/tools/reddit.js.map +1 -1
- package/dist/tools/redfin.js +29 -28
- package/dist/tools/redfin.js.map +1 -1
- package/dist/tools/sec.js +36 -35
- package/dist/tools/sec.js.map +1 -1
- package/dist/tools/target.js +19 -40
- package/dist/tools/target.js.map +1 -1
- package/dist/tools/threads.js +20 -19
- package/dist/tools/threads.js.map +1 -1
- package/dist/tools/tiktok-shop.js +38 -37
- package/dist/tools/tiktok-shop.js.map +1 -1
- package/dist/tools/tiktok.js +54 -53
- package/dist/tools/tiktok.js.map +1 -1
- package/dist/tools/tripadvisor.js +20 -43
- package/dist/tools/tripadvisor.js.map +1 -1
- package/dist/tools/usage.js +3 -2
- package/dist/tools/usage.js.map +1 -1
- package/dist/tools/walmart.js +35 -34
- package/dist/tools/walmart.js.map +1 -1
- package/dist/tools/x.js +44 -43
- package/dist/tools/x.js.map +1 -1
- package/dist/tools/yelp.js +21 -20
- package/dist/tools/yelp.js.map +1 -1
- package/dist/tools/youtube.js +77 -76
- package/dist/tools/youtube.js.map +1 -1
- package/dist/tools/zillow.js +38 -53
- package/dist/tools/zillow.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"threads.js","sourceRoot":"","sources":["../../src/tools/threads.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"threads.js","sourceRoot":"","sources":["../../src/tools/threads.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,46 +3,47 @@ import { handleApiError } from "../lib/tool-error.js";
|
|
|
3
3
|
// ApiError is imported here (and nowhere else in tools/) because get_tiktok_shop_product
|
|
4
4
|
// has to special-case a 404 before falling through to the shared handler.
|
|
5
5
|
import { ApiError } from "../lib/errors.js";
|
|
6
|
+
import { trimResponse } from "../lib/trim-response.js";
|
|
6
7
|
const REGIONS_FULL = ["US", "GB", "SG", "MY", "PH", "TH", "VN", "ID"];
|
|
7
8
|
const REGIONS_LISTING = ["US", "GB"];
|
|
8
9
|
export function registerTiktokShopTools(server, getClient) {
|
|
9
|
-
server.tool("search_tiktok_shop", `Search TikTok Shop products
|
|
10
|
+
server.tool("search_tiktok_shop", `Search TikTok Shop products (US only). Has exact prices. ~44% of IDs resolve on get_tiktok_shop_product. Paginate with next_cursor/has_more. 1 credit.`, {
|
|
10
11
|
search: z.string().min(1).max(200)
|
|
11
|
-
.describe("
|
|
12
|
+
.describe("Product keyword, e.g. 'phone case'."),
|
|
12
13
|
cursor: z.string().optional()
|
|
13
|
-
.describe("Pagination cursor
|
|
14
|
+
.describe("Pagination cursor from previous response."),
|
|
14
15
|
}, async (params) => {
|
|
15
16
|
try {
|
|
16
17
|
const data = await getClient().post("/api/v1/tiktok-shop/search", params);
|
|
17
|
-
return
|
|
18
|
+
return trimResponse(data);
|
|
18
19
|
}
|
|
19
20
|
catch (err) {
|
|
20
21
|
return handleApiError(err);
|
|
21
22
|
}
|
|
22
23
|
});
|
|
23
|
-
server.tool("get_tiktok_shop_search_suggestions", `
|
|
24
|
+
server.tool("get_tiktok_shop_search_suggestions", `TikTok Shop keyword autocomplete. 1 credit.`, {
|
|
24
25
|
search: z.string().min(1).max(100)
|
|
25
|
-
.describe("Partial keyword
|
|
26
|
+
.describe("Partial keyword, e.g. 'wireless'."),
|
|
26
27
|
region: z.enum(REGIONS_FULL).optional()
|
|
27
|
-
.describe("
|
|
28
|
+
.describe("Region: US (default), GB, SG, MY, PH, TH, VN, ID."),
|
|
28
29
|
}, async (params) => {
|
|
29
30
|
try {
|
|
30
31
|
const data = await getClient().post("/api/v1/tiktok-shop/search/suggestions", params);
|
|
31
|
-
return
|
|
32
|
+
return trimResponse(data);
|
|
32
33
|
}
|
|
33
34
|
catch (err) {
|
|
34
35
|
return handleApiError(err);
|
|
35
36
|
}
|
|
36
37
|
});
|
|
37
|
-
server.tool("get_tiktok_shop_product", `Get
|
|
38
|
+
server.tool("get_tiktok_shop_product", `Get TikTok Shop product detail (no price - use search/category/shop tools for prices). ~44% of search IDs resolve; 404 is normal, don't retry. 1 credit (billed even on 404).`, {
|
|
38
39
|
product_id: z.string().regex(/^\d{6,25}$/)
|
|
39
|
-
.describe("
|
|
40
|
+
.describe("Product ID, e.g. '1732293553906094315'."),
|
|
40
41
|
region: z.enum(REGIONS_FULL).optional()
|
|
41
|
-
.describe("
|
|
42
|
+
.describe("Region: US (default), GB, SG, MY, PH, TH, VN, ID."),
|
|
42
43
|
}, async (params) => {
|
|
43
44
|
try {
|
|
44
45
|
const data = await getClient().post("/api/v1/tiktok-shop/product", params);
|
|
45
|
-
return
|
|
46
|
+
return trimResponse(data);
|
|
46
47
|
}
|
|
47
48
|
catch (err) {
|
|
48
49
|
// A 404 means upstream carries no detail data for this product id. It is the
|
|
@@ -68,80 +69,80 @@ export function registerTiktokShopTools(server, getClient) {
|
|
|
68
69
|
return handleApiError(err);
|
|
69
70
|
}
|
|
70
71
|
});
|
|
71
|
-
server.tool("get_tiktok_shop_product_reviews", `Get
|
|
72
|
+
server.tool("get_tiktok_shop_product_reviews", `Get TikTok Shop product reviews. Works for most IDs even when get_tiktok_shop_product returns 404. Paginate with has_more. 1 credit.`, {
|
|
72
73
|
product_id: z.string().regex(/^\d{6,25}$/)
|
|
73
|
-
.describe("
|
|
74
|
+
.describe("Product ID."),
|
|
74
75
|
page: z.number().int().min(1).max(500).optional()
|
|
75
|
-
.describe("1-based page number
|
|
76
|
+
.describe("1-based page number."),
|
|
76
77
|
page_size: z.number().int().min(1).max(200).optional()
|
|
77
|
-
.describe("Reviews per page
|
|
78
|
+
.describe("Reviews per page (default 20)."),
|
|
78
79
|
sort: z.enum(["relevant", "recent"]).optional()
|
|
79
|
-
.describe("'relevant' (default)
|
|
80
|
+
.describe("'relevant' (default) or 'recent'."),
|
|
80
81
|
rating: z.number().int().min(1).max(5).optional()
|
|
81
|
-
.describe("
|
|
82
|
+
.describe("Filter by star rating."),
|
|
82
83
|
has_media: z.boolean().optional()
|
|
83
|
-
.describe("Only reviews with
|
|
84
|
+
.describe("Only reviews with media."),
|
|
84
85
|
verified_only: z.boolean().optional()
|
|
85
|
-
.describe("Only verified purchases
|
|
86
|
+
.describe("Only verified purchases."),
|
|
86
87
|
region: z.enum(REGIONS_FULL).optional()
|
|
87
|
-
.describe("
|
|
88
|
+
.describe("Region: US (default), GB, SG, MY, PH, TH, VN, ID."),
|
|
88
89
|
}, async (params) => {
|
|
89
90
|
try {
|
|
90
91
|
const data = await getClient().post("/api/v1/tiktok-shop/product/reviews", params);
|
|
91
|
-
return
|
|
92
|
+
return trimResponse(data);
|
|
92
93
|
}
|
|
93
94
|
catch (err) {
|
|
94
95
|
return handleApiError(err);
|
|
95
96
|
}
|
|
96
97
|
});
|
|
97
|
-
server.tool("get_tiktok_shop_categories", `Get the
|
|
98
|
+
server.tool("get_tiktok_shop_categories", `Get the TikTok Shop category tree. Use IDs with get_tiktok_shop_category_products. 1 credit.`, {}, async () => {
|
|
98
99
|
try {
|
|
99
100
|
const data = await getClient().post("/api/v1/tiktok-shop/categories", {});
|
|
100
|
-
return
|
|
101
|
+
return trimResponse(data);
|
|
101
102
|
}
|
|
102
103
|
catch (err) {
|
|
103
104
|
return handleApiError(err);
|
|
104
105
|
}
|
|
105
106
|
});
|
|
106
|
-
server.tool("get_tiktok_shop_category_products", `List TikTok Shop products
|
|
107
|
+
server.tool("get_tiktok_shop_category_products", `List TikTok Shop products by category with exact prices. Paginate with next_cursor/has_more. 1 credit.`, {
|
|
107
108
|
category_id: z.string().regex(/^\d{4,20}$/)
|
|
108
|
-
.describe("Category ID from get_tiktok_shop_categories
|
|
109
|
+
.describe("Category ID from get_tiktok_shop_categories."),
|
|
109
110
|
cursor: z.string().optional()
|
|
110
|
-
.describe("Pagination cursor
|
|
111
|
+
.describe("Pagination cursor from previous response."),
|
|
111
112
|
region: z.enum(REGIONS_LISTING).optional()
|
|
112
|
-
.describe("
|
|
113
|
+
.describe("US (default) or GB only."),
|
|
113
114
|
}, async (params) => {
|
|
114
115
|
try {
|
|
115
116
|
const data = await getClient().post("/api/v1/tiktok-shop/category/products", params);
|
|
116
|
-
return
|
|
117
|
+
return trimResponse(data);
|
|
117
118
|
}
|
|
118
119
|
catch (err) {
|
|
119
120
|
return handleApiError(err);
|
|
120
121
|
}
|
|
121
122
|
});
|
|
122
|
-
server.tool("get_tiktok_shop_shop_products", `List a TikTok Shop seller's
|
|
123
|
+
server.tool("get_tiktok_shop_shop_products", `List a TikTok Shop seller's products with exact prices. Paginate with next_cursor/has_more. 1 credit.`, {
|
|
123
124
|
shop_id: z.string().regex(/^\d{6,25}$/)
|
|
124
|
-
.describe("
|
|
125
|
+
.describe("Shop/seller ID."),
|
|
125
126
|
cursor: z.string().optional()
|
|
126
|
-
.describe("Pagination cursor
|
|
127
|
+
.describe("Pagination cursor from previous response."),
|
|
127
128
|
region: z.enum(REGIONS_FULL).optional()
|
|
128
|
-
.describe("
|
|
129
|
+
.describe("Region: US (default), GB, SG, MY, PH, TH, VN, ID."),
|
|
129
130
|
}, async (params) => {
|
|
130
131
|
try {
|
|
131
132
|
const data = await getClient().post("/api/v1/tiktok-shop/shop/products", params);
|
|
132
|
-
return
|
|
133
|
+
return trimResponse(data);
|
|
133
134
|
}
|
|
134
135
|
catch (err) {
|
|
135
136
|
return handleApiError(err);
|
|
136
137
|
}
|
|
137
138
|
});
|
|
138
|
-
server.tool("resolve_tiktok_shop_url", `Resolve
|
|
139
|
+
server.tool("resolve_tiktok_shop_url", `Resolve a TikTok Shop URL or share link to product_id or shop_id. 1 credit.`, {
|
|
139
140
|
url: z.string().url().max(2000)
|
|
140
|
-
.describe("
|
|
141
|
+
.describe("TikTok Shop URL or share link."),
|
|
141
142
|
}, async (params) => {
|
|
142
143
|
try {
|
|
143
144
|
const data = await getClient().post("/api/v1/tiktok-shop/resolve", params);
|
|
144
|
-
return
|
|
145
|
+
return trimResponse(data);
|
|
145
146
|
}
|
|
146
147
|
catch (err) {
|
|
147
148
|
return handleApiError(err);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tiktok-shop.js","sourceRoot":"","sources":["../../src/tools/tiktok-shop.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,yFAAyF;AACzF,0EAA0E;AAC1E,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;
|
|
1
|
+
{"version":3,"file":"tiktok-shop.js","sourceRoot":"","sources":["../../src/tools/tiktok-shop.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/tiktok.js
CHANGED
|
@@ -1,181 +1,182 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
2
|
import { handleApiError } from "../lib/tool-error.js";
|
|
3
|
+
import { trimResponse } from "../lib/trim-response.js";
|
|
3
4
|
export function registerTiktokTools(server, getClient) {
|
|
4
|
-
server.tool("get_tiktok_profile", `Get a TikTok user's profile
|
|
5
|
+
server.tool("get_tiktok_profile", `Get a TikTok user's profile. Returns sec_user_id needed by user_posts/followers/followings tools. 1 credit.`, {
|
|
5
6
|
username: z.string().optional()
|
|
6
|
-
.describe("TikTok handle without
|
|
7
|
+
.describe("TikTok handle without @, e.g. 'charlidamelio'."),
|
|
7
8
|
sec_user_id: z.string().optional()
|
|
8
|
-
.describe("Secure user ID
|
|
9
|
+
.describe("Secure user ID from a previous request."),
|
|
9
10
|
}, async (params) => {
|
|
10
11
|
try {
|
|
11
12
|
const data = await getClient().post("/api/v1/tiktok/profile", params);
|
|
12
|
-
return
|
|
13
|
+
return trimResponse(data);
|
|
13
14
|
}
|
|
14
15
|
catch (err) {
|
|
15
16
|
return handleApiError(err);
|
|
16
17
|
}
|
|
17
18
|
});
|
|
18
|
-
server.tool("get_tiktok_user_posts", `List a TikTok user's videos
|
|
19
|
+
server.tool("get_tiktok_user_posts", `List a TikTok user's videos. Requires sec_user_id. Paginate with max_cursor/has_more. 1 credit.`, {
|
|
19
20
|
sec_user_id: z.string()
|
|
20
|
-
.describe("
|
|
21
|
+
.describe("From get_tiktok_profile."),
|
|
21
22
|
cursor: z.string().default("0")
|
|
22
|
-
.describe("
|
|
23
|
+
.describe("Use data.max_cursor from previous response."),
|
|
23
24
|
count: z.number().int().min(1).max(30).default(20)
|
|
24
|
-
.describe("
|
|
25
|
+
.describe("Results per page."),
|
|
25
26
|
sort_type: z.enum(["0", "1"]).default("0")
|
|
26
|
-
.describe("
|
|
27
|
+
.describe("'0' = latest, '1' = popular."),
|
|
27
28
|
}, async (params) => {
|
|
28
29
|
try {
|
|
29
30
|
const data = await getClient().post("/api/v1/tiktok/user/posts", params);
|
|
30
|
-
return
|
|
31
|
+
return trimResponse(data);
|
|
31
32
|
}
|
|
32
33
|
catch (err) {
|
|
33
34
|
return handleApiError(err);
|
|
34
35
|
}
|
|
35
36
|
});
|
|
36
|
-
server.tool("get_tiktok_video", `Get
|
|
37
|
+
server.tool("get_tiktok_video", `Get TikTok video details: caption, stats, play URLs, author, music. 1 credit.`, {
|
|
37
38
|
video_id: z.string()
|
|
38
|
-
.describe("TikTok video ID.
|
|
39
|
+
.describe("TikTok video ID."),
|
|
39
40
|
}, async (params) => {
|
|
40
41
|
try {
|
|
41
42
|
const data = await getClient().post("/api/v1/tiktok/video", params);
|
|
42
|
-
return
|
|
43
|
+
return trimResponse(data);
|
|
43
44
|
}
|
|
44
45
|
catch (err) {
|
|
45
46
|
return handleApiError(err);
|
|
46
47
|
}
|
|
47
48
|
});
|
|
48
|
-
server.tool("get_tiktok_video_comments", `Get comments on a TikTok video
|
|
49
|
+
server.tool("get_tiktok_video_comments", `Get comments on a TikTok video. Paginate with data.cursor/has_more. 1 credit.`, {
|
|
49
50
|
video_id: z.string()
|
|
50
51
|
.describe("TikTok video ID."),
|
|
51
52
|
cursor: z.string().default("0")
|
|
52
|
-
.describe("
|
|
53
|
+
.describe("From data.cursor of previous response."),
|
|
53
54
|
count: z.number().int().min(1).max(50).default(20)
|
|
54
|
-
.describe("
|
|
55
|
+
.describe("Comments per page."),
|
|
55
56
|
}, async (params) => {
|
|
56
57
|
try {
|
|
57
58
|
const data = await getClient().post("/api/v1/tiktok/video/comments", params);
|
|
58
|
-
return
|
|
59
|
+
return trimResponse(data);
|
|
59
60
|
}
|
|
60
61
|
catch (err) {
|
|
61
62
|
return handleApiError(err);
|
|
62
63
|
}
|
|
63
64
|
});
|
|
64
|
-
server.tool("get_tiktok_comment_replies", `Get replies to a
|
|
65
|
+
server.tool("get_tiktok_comment_replies", `Get replies to a TikTok comment. Paginate with data.cursor/has_more. 1 credit.`, {
|
|
65
66
|
video_id: z.string()
|
|
66
67
|
.describe("TikTok video ID."),
|
|
67
68
|
comment_id: z.string()
|
|
68
|
-
.describe("Comment ID
|
|
69
|
+
.describe("Comment ID from get_tiktok_video_comments."),
|
|
69
70
|
cursor: z.string().default("0")
|
|
70
|
-
.describe("
|
|
71
|
+
.describe("From data.cursor of previous response."),
|
|
71
72
|
count: z.number().int().min(1).max(50).default(20)
|
|
72
|
-
.describe("
|
|
73
|
+
.describe("Replies per page."),
|
|
73
74
|
}, async (params) => {
|
|
74
75
|
try {
|
|
75
76
|
const data = await getClient().post("/api/v1/tiktok/video/comments/replies", params);
|
|
76
|
-
return
|
|
77
|
+
return trimResponse(data);
|
|
77
78
|
}
|
|
78
79
|
catch (err) {
|
|
79
80
|
return handleApiError(err);
|
|
80
81
|
}
|
|
81
82
|
});
|
|
82
|
-
server.tool("search_tiktok_videos", `Search TikTok videos by keyword
|
|
83
|
+
server.tool("search_tiktok_videos", `Search TikTok videos by keyword. Paginate with data.cursor/has_more. 1 credit.`, {
|
|
83
84
|
keyword: z.string().min(1).max(500)
|
|
84
85
|
.describe("Search query."),
|
|
85
86
|
cursor: z.string().default("0")
|
|
86
|
-
.describe("
|
|
87
|
+
.describe("From data.cursor of previous response."),
|
|
87
88
|
count: z.number().int().min(1).max(30).default(20)
|
|
88
|
-
.describe("
|
|
89
|
+
.describe("Results per page."),
|
|
89
90
|
sort_type: z.enum(["0", "1"]).default("0")
|
|
90
|
-
.describe("
|
|
91
|
+
.describe("'0' = relevance, '1' = most likes."),
|
|
91
92
|
publish_time: z.enum(["0", "1", "7", "30", "90", "180"]).default("0")
|
|
92
|
-
.describe("
|
|
93
|
+
.describe("'0'=all, '1'=day, '7'=week, '30'=month, '90'=3mo, '180'=6mo."),
|
|
93
94
|
}, async (params) => {
|
|
94
95
|
try {
|
|
95
96
|
const data = await getClient().post("/api/v1/tiktok/search/videos", params);
|
|
96
|
-
return
|
|
97
|
+
return trimResponse(data);
|
|
97
98
|
}
|
|
98
99
|
catch (err) {
|
|
99
100
|
return handleApiError(err);
|
|
100
101
|
}
|
|
101
102
|
});
|
|
102
|
-
server.tool("search_tiktok_users", `Search TikTok users by keyword
|
|
103
|
+
server.tool("search_tiktok_users", `Search TikTok users by keyword. Paginate with data.cursor/has_more. 1 credit.`, {
|
|
103
104
|
keyword: z.string().min(1).max(500)
|
|
104
105
|
.describe("Search query."),
|
|
105
106
|
cursor: z.string().default("0")
|
|
106
|
-
.describe("
|
|
107
|
+
.describe("From data.cursor of previous response."),
|
|
107
108
|
count: z.number().int().min(1).max(30).default(20)
|
|
108
|
-
.describe("
|
|
109
|
+
.describe("Results per page."),
|
|
109
110
|
}, async (params) => {
|
|
110
111
|
try {
|
|
111
112
|
const data = await getClient().post("/api/v1/tiktok/search/users", params);
|
|
112
|
-
return
|
|
113
|
+
return trimResponse(data);
|
|
113
114
|
}
|
|
114
115
|
catch (err) {
|
|
115
116
|
return handleApiError(err);
|
|
116
117
|
}
|
|
117
118
|
});
|
|
118
|
-
server.tool("get_tiktok_hashtag", `Get TikTok hashtag
|
|
119
|
+
server.tool("get_tiktok_hashtag", `Get TikTok hashtag stats. Returns ID for use with get_tiktok_hashtag_videos. 1 credit.`, {
|
|
119
120
|
hashtag_name: z.string().optional()
|
|
120
|
-
.describe("Hashtag
|
|
121
|
+
.describe("Hashtag without #, e.g. 'fyp'."),
|
|
121
122
|
hashtag_id: z.string().optional()
|
|
122
|
-
.describe("Numeric hashtag ID
|
|
123
|
+
.describe("Numeric hashtag ID from a previous request."),
|
|
123
124
|
}, async (params) => {
|
|
124
125
|
try {
|
|
125
126
|
const data = await getClient().post("/api/v1/tiktok/hashtag", params);
|
|
126
|
-
return
|
|
127
|
+
return trimResponse(data);
|
|
127
128
|
}
|
|
128
129
|
catch (err) {
|
|
129
130
|
return handleApiError(err);
|
|
130
131
|
}
|
|
131
132
|
});
|
|
132
|
-
server.tool("get_tiktok_hashtag_videos", `List TikTok videos for a
|
|
133
|
+
server.tool("get_tiktok_hashtag_videos", `List TikTok videos for a hashtag. Requires hashtag_id from get_tiktok_hashtag. 1 credit.`, {
|
|
133
134
|
hashtag_id: z.string()
|
|
134
|
-
.describe("
|
|
135
|
+
.describe("From get_tiktok_hashtag."),
|
|
135
136
|
cursor: z.string().default("0")
|
|
136
|
-
.describe("
|
|
137
|
+
.describe("From data.cursor of previous response."),
|
|
137
138
|
count: z.number().int().min(1).max(30).default(20)
|
|
138
|
-
.describe("
|
|
139
|
+
.describe("Results per page."),
|
|
139
140
|
}, async (params) => {
|
|
140
141
|
try {
|
|
141
142
|
const data = await getClient().post("/api/v1/tiktok/hashtag/videos", params);
|
|
142
|
-
return
|
|
143
|
+
return trimResponse(data);
|
|
143
144
|
}
|
|
144
145
|
catch (err) {
|
|
145
146
|
return handleApiError(err);
|
|
146
147
|
}
|
|
147
148
|
});
|
|
148
|
-
server.tool("get_tiktok_user_followers", `Get a TikTok user's
|
|
149
|
+
server.tool("get_tiktok_user_followers", `Get a TikTok user's followers. Pass both page_token and min_time together for next page. 1 credit.`, {
|
|
149
150
|
sec_user_id: z.string()
|
|
150
|
-
.describe("
|
|
151
|
+
.describe("From get_tiktok_profile."),
|
|
151
152
|
count: z.number().int().min(1).max(20).default(20)
|
|
152
|
-
.describe("
|
|
153
|
+
.describe("Results per page."),
|
|
153
154
|
page_token: z.string().optional()
|
|
154
|
-
.describe("
|
|
155
|
+
.describe("From previous response."),
|
|
155
156
|
min_time: z.number().optional()
|
|
156
|
-
.describe("
|
|
157
|
+
.describe("From previous response, must accompany page_token."),
|
|
157
158
|
}, async (params) => {
|
|
158
159
|
try {
|
|
159
160
|
const data = await getClient().post("/api/v1/tiktok/user/followers", params);
|
|
160
|
-
return
|
|
161
|
+
return trimResponse(data);
|
|
161
162
|
}
|
|
162
163
|
catch (err) {
|
|
163
164
|
return handleApiError(err);
|
|
164
165
|
}
|
|
165
166
|
});
|
|
166
|
-
server.tool("get_tiktok_user_followings", `Get
|
|
167
|
+
server.tool("get_tiktok_user_followings", `Get accounts a TikTok user follows. Pass both page_token and min_time together for next page. 1 credit.`, {
|
|
167
168
|
sec_user_id: z.string()
|
|
168
|
-
.describe("
|
|
169
|
+
.describe("From get_tiktok_profile."),
|
|
169
170
|
count: z.number().int().min(1).max(20).default(20)
|
|
170
|
-
.describe("
|
|
171
|
+
.describe("Results per page."),
|
|
171
172
|
page_token: z.string().optional()
|
|
172
|
-
.describe("
|
|
173
|
+
.describe("From previous response."),
|
|
173
174
|
min_time: z.number().optional()
|
|
174
|
-
.describe("
|
|
175
|
+
.describe("From previous response, must accompany page_token."),
|
|
175
176
|
}, async (params) => {
|
|
176
177
|
try {
|
|
177
178
|
const data = await getClient().post("/api/v1/tiktok/user/followings", params);
|
|
178
|
-
return
|
|
179
|
+
return trimResponse(data);
|
|
179
180
|
}
|
|
180
181
|
catch (err) {
|
|
181
182
|
return handleApiError(err);
|
package/dist/tools/tiktok.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tiktok.js","sourceRoot":"","sources":["../../src/tools/tiktok.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAGxB,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;
|
|
1
|
+
{"version":3,"file":"tiktok.js","sourceRoot":"","sources":["../../src/tools/tiktok.ts"],"names":[],"mappings":"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"}
|