@decodo/mcp-server 1.2.3 → 1.2.5
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 +142 -31
- package/build/auth/constants.js +12 -0
- package/build/auth/constants.js.map +1 -0
- package/build/auth/credential.js +27 -0
- package/build/auth/credential.js.map +1 -0
- package/build/auth/detect-credential-type.js +14 -0
- package/build/auth/detect-credential-type.js.map +1 -0
- package/build/auth/index.js +12 -0
- package/build/auth/index.js.map +1 -0
- package/build/{clients → auth}/types.js.map +1 -1
- package/build/clients/retry.js +17 -19
- package/build/clients/retry.js.map +1 -1
- package/build/clients/scraper-api-client.js +99 -42
- package/build/clients/scraper-api-client.js.map +1 -1
- package/build/constants.js +1 -34
- package/build/constants.js.map +1 -1
- package/build/index.js +8 -4
- package/build/index.js.map +1 -1
- package/build/logger.js +16 -0
- package/build/logger.js.map +1 -0
- package/build/server/cors.js +30 -0
- package/build/server/cors.js.map +1 -0
- package/build/server/sapi-base-server.js +0 -1
- package/build/server/sapi-base-server.js.map +1 -1
- package/build/server/sapi-http-server.js.map +1 -1
- package/build/server/sapi-stdio-server.js.map +1 -1
- package/build/server.js +9 -7
- package/build/server.js.map +1 -1
- package/build/tools/amazon-bestsellers/amazon-bestsellers-tool.js +5 -3
- package/build/tools/amazon-bestsellers/amazon-bestsellers-tool.js.map +1 -1
- package/build/tools/amazon-pricing/amazon-pricing-tool.js +5 -2
- package/build/tools/amazon-pricing/amazon-pricing-tool.js.map +1 -1
- package/build/tools/amazon-product/amazon-product-tool.js +5 -2
- package/build/tools/amazon-product/amazon-product-tool.js.map +1 -1
- package/build/tools/amazon-search/amazon-search-tool.js +5 -2
- package/build/tools/amazon-search/amazon-search-tool.js.map +1 -1
- package/build/tools/amazon-sellers/amazon-sellers-tool.js +5 -2
- package/build/tools/amazon-sellers/amazon-sellers-tool.js.map +1 -1
- package/build/tools/bing-search/bing-search-tool.js +11 -9
- package/build/tools/bing-search/bing-search-tool.js.map +1 -1
- package/build/tools/chatgpt/chatgpt-tool.js +5 -1
- package/build/tools/chatgpt/chatgpt-tool.js.map +1 -1
- package/build/tools/google-ads/google-ads-tool.js +5 -1
- package/build/tools/google-ads/google-ads-tool.js.map +1 -1
- package/build/tools/google-ai-mode/google-ai-mode-tool.js +13 -7
- package/build/tools/google-ai-mode/google-ai-mode-tool.js.map +1 -1
- package/build/tools/google-lens/google-lens-tool.js +5 -1
- package/build/tools/google-lens/google-lens-tool.js.map +1 -1
- package/build/tools/google-search/google-search-tool.js +5 -1
- package/build/tools/google-search/google-search-tool.js.map +1 -1
- package/build/tools/google-travel-hotels/google-travel-hotels-tool.js +5 -1
- package/build/tools/google-travel-hotels/google-travel-hotels-tool.js.map +1 -1
- package/build/tools/perplexity/perplexity-tool.js +5 -1
- package/build/tools/perplexity/perplexity-tool.js.map +1 -1
- package/build/tools/reddit-post/reddit-post-tool.js +5 -1
- package/build/tools/reddit-post/reddit-post-tool.js.map +1 -1
- package/build/tools/reddit-subreddit/reddit-subreddit-tool.js +5 -1
- package/build/tools/reddit-subreddit/reddit-subreddit-tool.js.map +1 -1
- package/build/tools/reddit-user/reddit-user-tool.js +5 -1
- package/build/tools/reddit-user/reddit-user-tool.js.map +1 -1
- package/build/tools/scrape-as-markdown/scrape-as-markdown-tool.js +3 -0
- package/build/tools/scrape-as-markdown/scrape-as-markdown-tool.js.map +1 -1
- package/build/tools/screenshot/screenshot-tool.js +3 -0
- package/build/tools/screenshot/screenshot-tool.js.map +1 -1
- package/build/tools/target-product/target-product-tool.js +5 -3
- package/build/tools/target-product/target-product-tool.js.map +1 -1
- package/build/tools/target-search/target-search-tool.js +5 -3
- package/build/tools/target-search/target-search-tool.js.map +1 -1
- package/build/tools/tiktok-post/tiktok-post-tool.js +5 -1
- package/build/tools/tiktok-post/tiktok-post-tool.js.map +1 -1
- package/build/tools/tiktok-shop-product/tiktok-shop-product-tool.js +5 -1
- package/build/tools/tiktok-shop-product/tiktok-shop-product-tool.js.map +1 -1
- package/build/tools/tiktok-shop-search/tiktok-shop-search-tool.js +5 -2
- package/build/tools/tiktok-shop-search/tiktok-shop-search-tool.js.map +1 -1
- package/build/tools/tiktok-shop-url/tiktok-shop-url-tool.js +5 -1
- package/build/tools/tiktok-shop-url/tiktok-shop-url-tool.js.map +1 -1
- package/build/tools/tool.js.map +1 -1
- package/build/tools/walmart-product/walmart-product-tool.js +18 -2
- package/build/tools/walmart-product/walmart-product-tool.js.map +1 -1
- package/build/tools/walmart-search/walmart-search-tool.js +18 -3
- package/build/tools/walmart-search/walmart-search-tool.js.map +1 -1
- package/build/tools/youtube-channel/youtube-channel-tool.js +5 -1
- package/build/tools/youtube-channel/youtube-channel-tool.js.map +1 -1
- package/build/tools/youtube-metadata/youtube-metadata-tool.js +5 -1
- package/build/tools/youtube-metadata/youtube-metadata-tool.js.map +1 -1
- package/build/tools/youtube-search/youtube-search-tool.js +5 -1
- package/build/tools/youtube-search/youtube-search-tool.js.map +1 -1
- package/build/tools/youtube-subtitles/youtube-subtitles-tool.js +5 -1
- package/build/tools/youtube-subtitles/youtube-subtitles-tool.js.map +1 -1
- package/package.json +5 -2
- /package/build/{clients → auth}/types.js +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google-ads-tool.js","sourceRoot":"","sources":["../../../src/tools/google-ads/google-ads-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"google-ads-tool.js","sourceRoot":"","sources":["../../../src/tools/google-ads/google-ads-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,uCAAuE;AACvE,mDAAoF;AACpF,kCAAqD;AAErD,MAAM,WAAW,GAAG,aAAC;KAClB,MAAM,EAAE;KACR,QAAQ,CAAC,qCAAqC,CAAC;KAC/C,QAAQ,EAAE,CAAC;AAEd,MAAa,aAAc,SAAQ,WAAI;IAAvC;;QACE,YAAO,GAAG,mBAAO,CAAC,MAAM,CAAC;QAIzB,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,KAAK,MAAM,aAAa,IAAI,aAAa,CAAC,2BAA2B,EAAE,CAAC;gBACtE,IAAI,GAAG,IAAA,iCAAyB,EAAC,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;YAC9E,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;gBACE,KAAK,EAAE,YAAY;gBACnB,WAAW,EAAE,yDAAyD;gBACtE,WAAW,EAAE;oBACX,KAAK,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8CAA8C,CAAC;oBAC1E,GAAG,EAAE,kBAAM;oBACX,MAAM,EAAE,qBAAS;oBACjB,QAAQ,EAAE,uBAAW;oBACrB,UAAU,EAAE,yBAAa;oBACzB,QAAQ,EAAE,WAAW;iBACtB;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,YAAY;oBACnB,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,gCACV,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,SAAS,EACxB,KAAK,EAAE,IAAI,GACe,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBAExD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI;yBACL;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;;AAxDD,sCAwDC;AArDgB,yCAA2B,GAAG,CAAC,KAAK,CAAC,AAAV,CAAW"}
|
|
@@ -5,13 +5,14 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.GoogleAiModeTool = void 0;
|
|
7
7
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
+
const sdk_ts_1 = require("@decodo/sdk-ts");
|
|
8
9
|
const constants_1 = require("../../constants");
|
|
9
|
-
const zod_types_1 = require("../../zod/zod-types");
|
|
10
10
|
const tool_1 = require("../tool");
|
|
11
|
-
const
|
|
12
|
-
.
|
|
13
|
-
.describe('
|
|
11
|
+
const zodDeviceType = zod_1.default
|
|
12
|
+
.enum(['desktop', 'mobile'])
|
|
13
|
+
.describe('Device type to emulate for the request')
|
|
14
14
|
.optional();
|
|
15
|
+
const zodGeo = zod_1.default.string().describe('Geo location for AI mode search (e.g., "us", "uk")').optional();
|
|
15
16
|
class GoogleAiModeTool extends tool_1.Tool {
|
|
16
17
|
constructor() {
|
|
17
18
|
super(...arguments);
|
|
@@ -21,18 +22,23 @@ class GoogleAiModeTool extends tool_1.Tool {
|
|
|
21
22
|
};
|
|
22
23
|
this.register = ({ server, sapiClient, auth }) => {
|
|
23
24
|
server.registerTool('google_ai_mode', {
|
|
25
|
+
title: 'Google AI Mode',
|
|
24
26
|
description: 'Scrape Google AI Mode (Search with AI) results with automatic parsing',
|
|
25
27
|
inputSchema: {
|
|
26
|
-
query: zod_1.default
|
|
28
|
+
query: zod_1.default
|
|
29
|
+
.string()
|
|
30
|
+
.describe('Search query for Google AI Mode (e.g., "What are the top three dog breeds?")'),
|
|
27
31
|
geo: zodGeo,
|
|
28
|
-
deviceType:
|
|
32
|
+
deviceType: zodDeviceType,
|
|
29
33
|
},
|
|
30
34
|
annotations: {
|
|
35
|
+
title: 'Google AI Mode',
|
|
31
36
|
readOnlyHint: true,
|
|
37
|
+
destructiveHint: false,
|
|
32
38
|
openWorldHint: true,
|
|
33
39
|
},
|
|
34
40
|
}, async (scrapingParams, extra) => {
|
|
35
|
-
const params = Object.assign(Object.assign({}, scrapingParams), { target:
|
|
41
|
+
const params = Object.assign(Object.assign({}, scrapingParams), { target: sdk_ts_1.Target.GoogleAiMode, parse: true });
|
|
36
42
|
const { data } = await sapiClient.scrape({ auth, scrapingParams: params, extra });
|
|
37
43
|
return {
|
|
38
44
|
content: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google-ai-mode-tool.js","sourceRoot":"","sources":["../../../src/tools/google-ai-mode/google-ai-mode-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"google-ai-mode-tool.js","sourceRoot":"","sources":["../../../src/tools/google-ai-mode/google-ai-mode-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,kCAAqD;AAGrD,MAAM,aAAa,GAAG,aAAC;KACpB,IAAI,CAAC,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;KAC3B,QAAQ,CAAC,wCAAwC,CAAC;KAClD,QAAQ,EAAE,CAAC;AAEd,MAAM,MAAM,GAAG,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,oDAAoD,CAAC,CAAC,QAAQ,EAAE,CAAC;AAEpG,MAAa,gBAAiB,SAAQ,WAAI;IAA1C;;QACE,YAAO,GAAG,mBAAO,CAAC,EAAE,CAAC;QAErB,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;gBACE,KAAK,EAAE,gBAAgB;gBACvB,WAAW,EAAE,uEAAuE;gBACpF,WAAW,EAAE;oBACX,KAAK,EAAE,aAAC;yBACL,MAAM,EAAE;yBACR,QAAQ,CACP,8EAA8E,CAC/E;oBACH,GAAG,EAAE,MAAM;oBACX,UAAU,EAAE,aAAa;iBAC1B;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,gBAAgB;oBACvB,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,gCACV,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,YAAY,EAC3B,KAAK,EAAE,IAAI,GACe,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;yBAC3B;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CAAA;AAjDD,4CAiDC"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.GoogleLensTool = void 0;
|
|
7
7
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
+
const sdk_ts_1 = require("@decodo/sdk-ts");
|
|
8
9
|
const constants_1 = require("../../constants");
|
|
9
10
|
const utils_1 = require("../../utils");
|
|
10
11
|
const zod_types_1 = require("../../zod/zod-types");
|
|
@@ -21,6 +22,7 @@ class GoogleLensTool extends tool_1.Tool {
|
|
|
21
22
|
};
|
|
22
23
|
this.register = ({ server, sapiClient, auth }) => {
|
|
23
24
|
server.registerTool('google_lens', {
|
|
25
|
+
title: 'Google Lens',
|
|
24
26
|
description: 'Scrape Google Lens image search results with automatic parsing',
|
|
25
27
|
inputSchema: {
|
|
26
28
|
query: zod_1.default.string().describe('Image URL for Google Lens search (e.g., "https://example.com/image.jpg")'),
|
|
@@ -28,11 +30,13 @@ class GoogleLensTool extends tool_1.Tool {
|
|
|
28
30
|
deviceType: zod_types_1.zodDeviceType,
|
|
29
31
|
},
|
|
30
32
|
annotations: {
|
|
33
|
+
title: 'Google Lens',
|
|
31
34
|
readOnlyHint: true,
|
|
35
|
+
destructiveHint: false,
|
|
32
36
|
openWorldHint: true,
|
|
33
37
|
},
|
|
34
38
|
}, async (scrapingParams, extra) => {
|
|
35
|
-
const params = Object.assign(Object.assign({}, scrapingParams), { target:
|
|
39
|
+
const params = Object.assign(Object.assign({}, scrapingParams), { target: sdk_ts_1.Target.GoogleLens, parse: true });
|
|
36
40
|
const { data } = await sapiClient.scrape({ auth, scrapingParams: params, extra });
|
|
37
41
|
const { data: text } = this.transformResponse({ data });
|
|
38
42
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google-lens-tool.js","sourceRoot":"","sources":["../../../src/tools/google-lens/google-lens-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"google-lens-tool.js","sourceRoot":"","sources":["../../../src/tools/google-lens/google-lens-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,uCAAuE;AACvE,mDAAiE;AACjE,kCAAqD;AAErD,MAAa,cAAe,SAAQ,WAAI;IAAxC;;QACE,YAAO,GAAG,mBAAO,CAAC,MAAM,CAAC;QAIzB,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,KAAK,MAAM,aAAa,IAAI,cAAc,CAAC,2BAA2B,EAAE,CAAC;gBACvE,IAAI,GAAG,IAAA,iCAAyB,EAAC,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;YAC9E,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;gBACE,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,gEAAgE;gBAC7E,WAAW,EAAE;oBACX,KAAK,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,0EAA0E,CAAC;oBACtG,QAAQ,EAAE,uBAAW;oBACrB,UAAU,EAAE,yBAAa;iBAC1B;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,aAAa;oBACpB,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,gCACV,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,UAAU,EACzB,KAAK,EAAE,IAAI,GACe,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBAExD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI;yBACL;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;;AArDD,wCAqDC;AAlDgB,0CAA2B,GAAG,CAAC,eAAe,CAAC,AAApB,CAAqB"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.GoogleSearchTool = void 0;
|
|
7
7
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
+
const sdk_ts_1 = require("@decodo/sdk-ts");
|
|
8
9
|
const constants_1 = require("../../constants");
|
|
9
10
|
const utils_1 = require("../../utils");
|
|
10
11
|
const zod_types_1 = require("../../zod/zod-types");
|
|
@@ -21,6 +22,7 @@ class GoogleSearchTool extends tool_1.Tool {
|
|
|
21
22
|
};
|
|
22
23
|
this.register = ({ server, sapiClient, auth }) => {
|
|
23
24
|
server.registerTool('google_search', {
|
|
25
|
+
title: 'Google Search',
|
|
24
26
|
description: 'Scrape Google Search results with automatic parsing',
|
|
25
27
|
inputSchema: {
|
|
26
28
|
query: zod_1.default.string().describe('Search query'),
|
|
@@ -29,11 +31,13 @@ class GoogleSearchTool extends tool_1.Tool {
|
|
|
29
31
|
jsRender: zod_types_1.zodJsRender,
|
|
30
32
|
},
|
|
31
33
|
annotations: {
|
|
34
|
+
title: 'Google Search',
|
|
32
35
|
readOnlyHint: true,
|
|
36
|
+
destructiveHint: false,
|
|
33
37
|
openWorldHint: true,
|
|
34
38
|
},
|
|
35
39
|
}, async (scrapingParams, extra) => {
|
|
36
|
-
const params = Object.assign(Object.assign({}, scrapingParams), { target:
|
|
40
|
+
const params = Object.assign(Object.assign({}, scrapingParams), { target: sdk_ts_1.Target.GoogleSearch, parse: true });
|
|
37
41
|
const { data } = await sapiClient.scrape({ auth, scrapingParams: params, extra });
|
|
38
42
|
const { data: text } = this.transformResponse({ data });
|
|
39
43
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google-search-tool.js","sourceRoot":"","sources":["../../../src/tools/google-search/google-search-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"google-search-tool.js","sourceRoot":"","sources":["../../../src/tools/google-search/google-search-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,uCAAuE;AACvE,mDAAqE;AACrE,kCAAqD;AAErD,MAAa,gBAAiB,SAAQ,WAAI;IAA1C;;QACE,YAAO,GAAG,mBAAO,CAAC,MAAM,CAAC;QAWzB,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,KAAK,MAAM,aAAa,IAAI,gBAAgB,CAAC,2BAA2B,EAAE,CAAC;gBACzE,IAAI,GAAG,IAAA,iCAAyB,EAAC,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;YAC9E,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;gBACE,KAAK,EAAE,eAAe;gBACtB,WAAW,EAAE,qDAAqD;gBAClE,WAAW,EAAE;oBACX,KAAK,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,cAAc,CAAC;oBAC1C,GAAG,EAAE,kBAAM;oBACX,MAAM,EAAE,qBAAS;oBACjB,QAAQ,EAAE,uBAAW;iBACtB;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,eAAe;oBACtB,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,gCACV,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,YAAY,EAC3B,KAAK,EAAE,IAAI,GACe,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBAExD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI;yBACL;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;;AA7DD,4CA6DC;AA1DQ,4CAA2B,GAAG;IACnC,QAAQ;IACR,YAAY;IACZ,uBAAuB;IACvB,UAAU;IACV,sBAAsB;IACtB,wBAAwB;CACzB,AAPiC,CAOhC"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.GoogleTravelHotelsTool = void 0;
|
|
7
7
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
+
const sdk_ts_1 = require("@decodo/sdk-ts");
|
|
8
9
|
const constants_1 = require("../../constants");
|
|
9
10
|
const zod_types_1 = require("../../zod/zod-types");
|
|
10
11
|
const tool_1 = require("../tool");
|
|
@@ -21,6 +22,7 @@ class GoogleTravelHotelsTool extends tool_1.Tool {
|
|
|
21
22
|
};
|
|
22
23
|
this.register = ({ server, sapiClient, auth }) => {
|
|
23
24
|
server.registerTool('google_travel_hotels', {
|
|
25
|
+
title: 'Google Travel Hotels',
|
|
24
26
|
description: 'Scrape Google Travel Hotels search results',
|
|
25
27
|
inputSchema: {
|
|
26
28
|
query: zod_1.default.string().describe('Hotel search query (e.g., "trivago", "hotels in Paris")'),
|
|
@@ -30,11 +32,13 @@ class GoogleTravelHotelsTool extends tool_1.Tool {
|
|
|
30
32
|
pageFrom: zodPageFrom,
|
|
31
33
|
},
|
|
32
34
|
annotations: {
|
|
35
|
+
title: 'Google Travel Hotels',
|
|
33
36
|
readOnlyHint: true,
|
|
37
|
+
destructiveHint: false,
|
|
34
38
|
openWorldHint: true,
|
|
35
39
|
},
|
|
36
40
|
}, async (scrapingParams, extra) => {
|
|
37
|
-
const params = Object.assign(Object.assign({}, scrapingParams), { target:
|
|
41
|
+
const params = Object.assign(Object.assign({}, scrapingParams), { target: sdk_ts_1.Target.GoogleTravelHotels, markdown: true });
|
|
38
42
|
const { data } = await sapiClient.scrape({ auth, scrapingParams: params, extra });
|
|
39
43
|
return {
|
|
40
44
|
content: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"google-travel-hotels-tool.js","sourceRoot":"","sources":["../../../src/tools/google-travel-hotels/google-travel-hotels-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"google-travel-hotels-tool.js","sourceRoot":"","sources":["../../../src/tools/google-travel-hotels/google-travel-hotels-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,mDAA4E;AAC5E,kCAAqD;AAGrD,MAAM,WAAW,GAAG,aAAC;KAClB,MAAM,EAAE;KACR,QAAQ,CAAC,qCAAqC,CAAC;KAC/C,QAAQ,EAAE,CAAC;AAEd,MAAa,sBAAuB,SAAQ,WAAI;IAAhD;;QACE,YAAO,GAAG,mBAAO,CAAC,MAAM,CAAC;QAEzB,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,sBAAsB,EACtB;gBACE,KAAK,EAAE,sBAAsB;gBAC7B,WAAW,EAAE,4CAA4C;gBACzD,WAAW,EAAE;oBACX,KAAK,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,yDAAyD,CAAC;oBACrF,QAAQ,EAAE,uBAAW;oBACrB,MAAM,EAAE,qBAAS;oBACjB,UAAU,EAAE,yBAAa;oBACzB,QAAQ,EAAE,WAAW;iBACtB;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,sBAAsB;oBAC7B,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,gCACV,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,kBAAkB,EACjC,QAAQ,EAAE,IAAI,GACY,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;yBAC3B;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CAAA;AA/CD,wDA+CC"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.PerplexityTool = void 0;
|
|
7
7
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
+
const sdk_ts_1 = require("@decodo/sdk-ts");
|
|
8
9
|
const constants_1 = require("../../constants");
|
|
9
10
|
const zod_types_1 = require("../../zod/zod-types");
|
|
10
11
|
const tool_1 = require("../tool");
|
|
@@ -17,17 +18,20 @@ class PerplexityTool extends tool_1.Tool {
|
|
|
17
18
|
};
|
|
18
19
|
this.register = ({ server, sapiClient, auth }) => {
|
|
19
20
|
server.registerTool('perplexity', {
|
|
21
|
+
title: 'Perplexity',
|
|
20
22
|
description: 'Search and interact with Perplexity for AI-powered responses and conversations',
|
|
21
23
|
inputSchema: {
|
|
22
24
|
prompt: zod_1.default.string().describe('Prompt to send to Perplexity'),
|
|
23
25
|
geo: zod_types_1.zodGeo,
|
|
24
26
|
},
|
|
25
27
|
annotations: {
|
|
28
|
+
title: 'Perplexity',
|
|
26
29
|
readOnlyHint: true,
|
|
30
|
+
destructiveHint: false,
|
|
27
31
|
openWorldHint: true,
|
|
28
32
|
},
|
|
29
33
|
}, async (scrapingParams, extra) => {
|
|
30
|
-
const params = Object.assign(Object.assign({}, scrapingParams), { target:
|
|
34
|
+
const params = Object.assign(Object.assign({}, scrapingParams), { target: sdk_ts_1.Target.Perplexity, parse: true });
|
|
31
35
|
const { data } = await sapiClient.scrape({ auth, scrapingParams: params, extra });
|
|
32
36
|
const { data: text } = this.transformResponse({ data });
|
|
33
37
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"perplexity-tool.js","sourceRoot":"","sources":["../../../src/tools/perplexity/perplexity-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"perplexity-tool.js","sourceRoot":"","sources":["../../../src/tools/perplexity/perplexity-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,mDAA6C;AAC7C,kCAAqD;AAGrD,MAAa,cAAe,SAAQ,WAAI;IAAxC;;QACE,YAAO,GAAG,mBAAO,CAAC,EAAE,CAAC;QAErB,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;QACjD,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;gBACE,KAAK,EAAE,YAAY;gBACnB,WAAW,EACT,gFAAgF;gBAClF,WAAW,EAAE;oBACX,MAAM,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,8BAA8B,CAAC;oBAC3D,GAAG,EAAE,kBAAM;iBACZ;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,YAAY;oBACnB,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,gCACV,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,UAAU,EACzB,KAAK,EAAE,IAAI,GACe,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBAExD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI;yBACL;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CAAA;AA/CD,wCA+CC"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.RedditPostTool = void 0;
|
|
7
7
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
+
const sdk_ts_1 = require("@decodo/sdk-ts");
|
|
8
9
|
const constants_1 = require("../../constants");
|
|
9
10
|
const utils_1 = require("../../utils");
|
|
10
11
|
const tool_1 = require("../tool");
|
|
@@ -20,6 +21,7 @@ class RedditPostTool extends tool_1.Tool {
|
|
|
20
21
|
};
|
|
21
22
|
this.register = ({ server, sapiClient, auth }) => {
|
|
22
23
|
server.registerTool('reddit_post', {
|
|
24
|
+
title: 'Reddit Post',
|
|
23
25
|
description: 'Scrape a specific Reddit post',
|
|
24
26
|
inputSchema: {
|
|
25
27
|
url: zod_1.default
|
|
@@ -27,11 +29,13 @@ class RedditPostTool extends tool_1.Tool {
|
|
|
27
29
|
.describe('reddit post URL (eg. https://www.reddit.com/r/hometheater/comments/1jz9xk5/lg_ubk90_only_works_when_plugged_into_tv_via)'),
|
|
28
30
|
},
|
|
29
31
|
annotations: {
|
|
32
|
+
title: 'Reddit Post',
|
|
30
33
|
readOnlyHint: true,
|
|
34
|
+
destructiveHint: false,
|
|
31
35
|
openWorldHint: true,
|
|
32
36
|
},
|
|
33
37
|
}, async (scrapingParams, extra) => {
|
|
34
|
-
const params = Object.assign(Object.assign({}, scrapingParams), { target:
|
|
38
|
+
const params = Object.assign(Object.assign({}, scrapingParams), { target: sdk_ts_1.Target.RedditPost });
|
|
35
39
|
const { data } = await sapiClient.scrape({ auth, scrapingParams: params, extra });
|
|
36
40
|
const { data: text } = this.transformResponse({ data });
|
|
37
41
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reddit-post-tool.js","sourceRoot":"","sources":["../../../src/tools/reddit-post/reddit-post-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"reddit-post-tool.js","sourceRoot":"","sources":["../../../src/tools/reddit-post/reddit-post-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,uCAAuE;AACvE,kCAAqD;AAErD,MAAa,cAAe,SAAQ,WAAI;IAAxC;;QACE,YAAO,GAAG,mBAAO,CAAC,YAAY,CAAC;QAI/B,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,KAAK,MAAM,aAAa,IAAI,cAAc,CAAC,2BAA2B,EAAE,CAAC;gBACvE,IAAI,GAAG,IAAA,iCAAyB,EAAC,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;YAC9E,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;gBACE,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,+BAA+B;gBAC5C,WAAW,EAAE;oBACX,GAAG,EAAE,aAAC;yBACH,MAAM,EAAE;yBACR,QAAQ,CACP,0HAA0H,CAC3H;iBACJ;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,aAAa;oBACpB,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,gCACV,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,UAAU,GACC,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBAExD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI;yBACL;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;;AAtDD,wCAsDC;AAnDgB,0CAA2B,GAAG,CAAC,uBAAuB,CAAC,AAA5B,CAA6B"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.RedditSubredditTool = void 0;
|
|
7
7
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
+
const sdk_ts_1 = require("@decodo/sdk-ts");
|
|
8
9
|
const constants_1 = require("../../constants");
|
|
9
10
|
const utils_1 = require("../../utils");
|
|
10
11
|
const tool_1 = require("../tool");
|
|
@@ -20,16 +21,19 @@ class RedditSubredditTool extends tool_1.Tool {
|
|
|
20
21
|
};
|
|
21
22
|
this.register = ({ server, sapiClient, auth }) => {
|
|
22
23
|
server.registerTool('reddit_subreddit', {
|
|
24
|
+
title: 'Reddit Subreddit',
|
|
23
25
|
description: 'Scrape Reddit subreddit results with automatic parsing',
|
|
24
26
|
inputSchema: {
|
|
25
27
|
url: zod_1.default.string().describe('URL to subreddit'),
|
|
26
28
|
},
|
|
27
29
|
annotations: {
|
|
30
|
+
title: 'Reddit Subreddit',
|
|
28
31
|
readOnlyHint: true,
|
|
32
|
+
destructiveHint: false,
|
|
29
33
|
openWorldHint: true,
|
|
30
34
|
},
|
|
31
35
|
}, async (scrapingParams, extra) => {
|
|
32
|
-
const params = Object.assign(Object.assign({}, scrapingParams), { target:
|
|
36
|
+
const params = Object.assign(Object.assign({}, scrapingParams), { target: sdk_ts_1.Target.RedditSubreddit });
|
|
33
37
|
const { data } = await sapiClient.scrape({ auth, scrapingParams: params, extra });
|
|
34
38
|
const { data: text } = this.transformResponse({ data });
|
|
35
39
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reddit-subreddit-tool.js","sourceRoot":"","sources":["../../../src/tools/reddit-subreddit/reddit-subreddit-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"reddit-subreddit-tool.js","sourceRoot":"","sources":["../../../src/tools/reddit-subreddit/reddit-subreddit-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,uCAAuE;AACvE,kCAAqD;AAErD,MAAa,mBAAoB,SAAQ,WAAI;IAA7C;;QACE,YAAO,GAAG,mBAAO,CAAC,YAAY,CAAC;QAI/B,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,KAAK,MAAM,aAAa,IAAI,mBAAmB,CAAC,2BAA2B,EAAE,CAAC;gBAC5E,IAAI,GAAG,IAAA,iCAAyB,EAAC,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;YAC9E,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,kBAAkB,EAClB;gBACE,KAAK,EAAE,kBAAkB;gBACzB,WAAW,EAAE,wDAAwD;gBACrE,WAAW,EAAE;oBACX,GAAG,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;iBAC7C;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,kBAAkB;oBACzB,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,gCACV,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,eAAe,GACJ,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBAExD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI;yBACL;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;;AAlDD,kDAkDC;AA/CgB,+CAA2B,GAAG,CAAC,SAAS,EAAE,gBAAgB,CAAC,AAAhC,CAAiC"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.RedditUserTool = void 0;
|
|
7
7
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
+
const sdk_ts_1 = require("@decodo/sdk-ts");
|
|
8
9
|
const constants_1 = require("../../constants");
|
|
9
10
|
const utils_1 = require("../../utils");
|
|
10
11
|
const tool_1 = require("../tool");
|
|
@@ -20,6 +21,7 @@ class RedditUserTool extends tool_1.Tool {
|
|
|
20
21
|
};
|
|
21
22
|
this.register = ({ server, sapiClient, auth }) => {
|
|
22
23
|
server.registerTool('reddit_user', {
|
|
24
|
+
title: 'Reddit User',
|
|
23
25
|
description: 'Scrape a Reddit user profile and their posts/comments',
|
|
24
26
|
inputSchema: {
|
|
25
27
|
url: zod_1.default
|
|
@@ -27,11 +29,13 @@ class RedditUserTool extends tool_1.Tool {
|
|
|
27
29
|
.describe('Reddit user profile URL (eg. https://www.reddit.com/user/IWasRightOnce/)'),
|
|
28
30
|
},
|
|
29
31
|
annotations: {
|
|
32
|
+
title: 'Reddit User',
|
|
30
33
|
readOnlyHint: true,
|
|
34
|
+
destructiveHint: false,
|
|
31
35
|
openWorldHint: true,
|
|
32
36
|
},
|
|
33
37
|
}, async (scrapingParams, extra) => {
|
|
34
|
-
const params = Object.assign(Object.assign({}, scrapingParams), { target:
|
|
38
|
+
const params = Object.assign(Object.assign({}, scrapingParams), { target: sdk_ts_1.Target.RedditUser });
|
|
35
39
|
const { data } = await sapiClient.scrape({ auth, scrapingParams: params, extra });
|
|
36
40
|
const { data: text } = this.transformResponse({ data });
|
|
37
41
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"reddit-user-tool.js","sourceRoot":"","sources":["../../../src/tools/reddit-user/reddit-user-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"reddit-user-tool.js","sourceRoot":"","sources":["../../../src/tools/reddit-user/reddit-user-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,uCAAuE;AACvE,kCAAqD;AAErD,MAAa,cAAe,SAAQ,WAAI;IAAxC;;QACE,YAAO,GAAG,mBAAO,CAAC,YAAY,CAAC;QAQ/B,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,KAAK,MAAM,aAAa,IAAI,cAAc,CAAC,2BAA2B,EAAE,CAAC;gBACvE,IAAI,GAAG,IAAA,iCAAyB,EAAC,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;YAC9E,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;gBACE,KAAK,EAAE,aAAa;gBACpB,WAAW,EAAE,uDAAuD;gBACpE,WAAW,EAAE;oBACX,GAAG,EAAE,aAAC;yBACH,MAAM,EAAE;yBACR,QAAQ,CAAC,0EAA0E,CAAC;iBACxF;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,aAAa;oBACpB,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,gCACV,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,UAAU,GACC,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBAExD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI;yBACL;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;;AAxDD,wCAwDC;AArDgB,0CAA2B,GAAG;IAC3C,uBAAuB;IACvB,SAAS;IACT,gBAAgB;CACjB,AAJyC,CAIxC"}
|
|
@@ -38,6 +38,7 @@ class ScrapeAsMarkdownTool extends tool_1.Tool {
|
|
|
38
38
|
};
|
|
39
39
|
this.register = ({ server, sapiClient, auth }) => {
|
|
40
40
|
server.registerTool('scrape_as_markdown', {
|
|
41
|
+
title: 'Scrape as Markdown',
|
|
41
42
|
description: 'Scrape the contents of a website and return Markdown-formatted results',
|
|
42
43
|
inputSchema: {
|
|
43
44
|
url: zod_1.default.string().describe('URL to scrape'),
|
|
@@ -47,7 +48,9 @@ class ScrapeAsMarkdownTool extends tool_1.Tool {
|
|
|
47
48
|
tokenLimit: zod_types_1.zodTokenLimit,
|
|
48
49
|
},
|
|
49
50
|
annotations: {
|
|
51
|
+
title: 'Scrape as Markdown',
|
|
50
52
|
readOnlyHint: true,
|
|
53
|
+
destructiveHint: false,
|
|
51
54
|
openWorldHint: true,
|
|
52
55
|
},
|
|
53
56
|
}, async (scrapingParams, extra) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scrape-as-markdown-tool.js","sourceRoot":"","sources":["../../../src/tools/scrape-as-markdown/scrape-as-markdown-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AAEpB,2DAAsD;AACtD,mDAAoF;AACpF,+CAA0C;AAC1C,kCAAqD;AAGrD,MAAa,oBAAqB,SAAQ,WAAI;IAA9C;;QACE,YAAO,GAAG,mBAAO,CAAC,GAAG,CAAC;QAItB,wBAAmB,GAAG,CAAC,OAAe,EAAE,EAAE;YACxC,OAAO,OAAO,CAAC,MAAM,GAAG,oBAAoB,CAAC,0BAA0B,CAAC;QAC1E,CAAC,CAAC;QAEF,qBAAgB,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAsC,EAAE,EAAE;YAC5E,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACrC,CAAC,CAAC;QAEF,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAyC,EAAE,EAAE;YAClF,IAAI,QAAgB,CAAC;YAErB,IAAI,CAAC;gBACH,QAAQ,GAAG,qCAAgB,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClD,CAAC;YAAC,WAAM,CAAC;gBACP,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;YAED,IAAI,UAAU,IAAI,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC;oBACtC,OAAO,EAAE,QAAQ;oBACjB,KAAK,EAAE,UAAU,IAAI,oBAAoB,CAAC,0BAA0B;iBACrE,CAAC,CAAC;gBAEH,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YAChD,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QAChD,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,oBAAoB,EACpB;gBACE,WAAW,EAAE,wEAAwE;gBACrF,WAAW,EAAE;oBACX,GAAG,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;oBACzC,GAAG,EAAE,kBAAM;oBACX,MAAM,EAAE,qBAAS;oBACjB,QAAQ,EAAE,uBAAW;oBACrB,UAAU,EAAE,yBAAa;iBAC1B;gBACD,WAAW,EAAE;oBACX,YAAY,EAAE,IAAI;oBAClB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1E,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC;oBAC7D,IAAI;oBACJ,UAAU,EAAE,cAAc,CAAC,UAAU;iBACtC,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,WAAW;gCACf,CAAC,CAAC,+BAA+B,oBAAoB,CAAC,0BAA0B,sLAAsL;gCACtQ,CAAC,CAAC,iCAAiC;yBACtC;wBACD;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,QAAQ;yBACf;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;;
|
|
1
|
+
{"version":3,"file":"scrape-as-markdown-tool.js","sourceRoot":"","sources":["../../../src/tools/scrape-as-markdown/scrape-as-markdown-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AAEpB,2DAAsD;AACtD,mDAAoF;AACpF,+CAA0C;AAC1C,kCAAqD;AAGrD,MAAa,oBAAqB,SAAQ,WAAI;IAA9C;;QACE,YAAO,GAAG,mBAAO,CAAC,GAAG,CAAC;QAItB,wBAAmB,GAAG,CAAC,OAAe,EAAE,EAAE;YACxC,OAAO,OAAO,CAAC,MAAM,GAAG,oBAAoB,CAAC,0BAA0B,CAAC;QAC1E,CAAC,CAAC;QAEF,qBAAgB,GAAG,CAAC,EAAE,OAAO,EAAE,KAAK,EAAsC,EAAE,EAAE;YAC5E,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;QACrC,CAAC,CAAC;QAEF,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAE,UAAU,EAAyC,EAAE,EAAE;YAClF,IAAI,QAAgB,CAAC;YAErB,IAAI,CAAC;gBACH,QAAQ,GAAG,qCAAgB,CAAC,SAAS,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YAClD,CAAC;YAAC,WAAM,CAAC;gBACP,QAAQ,GAAG,IAAI,CAAC;YAClB,CAAC;YAED,IAAI,UAAU,IAAI,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,EAAE,CAAC;gBACrD,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC;oBACtC,OAAO,EAAE,QAAQ;oBACjB,KAAK,EAAE,UAAU,IAAI,oBAAoB,CAAC,0BAA0B;iBACrE,CAAC,CAAC;gBAEH,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;YAChD,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;QAChD,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,oBAAoB,EACpB;gBACE,KAAK,EAAE,oBAAoB;gBAC3B,WAAW,EAAE,wEAAwE;gBACrF,WAAW,EAAE;oBACX,GAAG,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;oBACzC,GAAG,EAAE,kBAAM;oBACX,MAAM,EAAE,qBAAS;oBACjB,QAAQ,EAAE,uBAAW;oBACrB,UAAU,EAAE,yBAAa;iBAC1B;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,oBAAoB;oBAC3B,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,cAAc,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1E,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC;oBAC7D,IAAI;oBACJ,UAAU,EAAE,cAAc,CAAC,UAAU;iBACtC,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,WAAW;gCACf,CAAC,CAAC,+BAA+B,oBAAoB,CAAC,0BAA0B,sLAAsL;gCACtQ,CAAC,CAAC,iCAAiC;yBACtC;wBACD;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,QAAQ;yBACf;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;;AA/ED,oDA+EC;AA5EgB,+CAA0B,GAAG,MAAO,AAAV,CAAW"}
|
|
@@ -17,13 +17,16 @@ class ScreenshotTool extends tool_1.Tool {
|
|
|
17
17
|
};
|
|
18
18
|
this.register = ({ server, sapiClient, auth }) => {
|
|
19
19
|
server.registerTool('screenshot', {
|
|
20
|
+
title: 'Screenshot',
|
|
20
21
|
description: 'Capture a screenshot of any webpage and return it as a PNG image',
|
|
21
22
|
inputSchema: {
|
|
22
23
|
url: zod_1.default.string().describe('URL to screenshot'),
|
|
23
24
|
geo: zod_types_1.zodGeo,
|
|
24
25
|
},
|
|
25
26
|
annotations: {
|
|
27
|
+
title: 'Screenshot',
|
|
26
28
|
readOnlyHint: true,
|
|
29
|
+
destructiveHint: false,
|
|
27
30
|
openWorldHint: true,
|
|
28
31
|
},
|
|
29
32
|
}, async (scrapingParams, extra) => {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"screenshot-tool.js","sourceRoot":"","sources":["../../../src/tools/screenshot/screenshot-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AAEpB,mDAA6C;AAC7C,+CAA0C;AAC1C,kCAAqD;AAGrD,MAAa,cAAe,SAAQ,WAAI;IAAxC;;QACE,YAAO,GAAG,mBAAO,CAAC,GAAG,CAAC;QAEtB,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,OAAO,EAAE,IAAI,EAAE,CAAC;QAClB,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;gBACE,WAAW,EAAE,kEAAkE;gBAC/E,WAAW,EAAE;oBACX,GAAG,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;oBAC7C,GAAG,EAAE,kBAAM;iBACZ;gBACD,WAAW,EAAE;oBACX,YAAY,EAAE,IAAI;oBAClB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC;oBACvC,IAAI;oBACJ,cAAc,kCAAO,cAAc,KAAE,QAAQ,EAAE,KAAK,GAAE;oBACtD,KAAK;iBACN,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,OAAgB;4BACtB,IAAI,EAAE,IAAc;4BACpB,QAAQ,EAAE,WAAW;yBACtB;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CAAA;
|
|
1
|
+
{"version":3,"file":"screenshot-tool.js","sourceRoot":"","sources":["../../../src/tools/screenshot/screenshot-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AAEpB,mDAA6C;AAC7C,+CAA0C;AAC1C,kCAAqD;AAGrD,MAAa,cAAe,SAAQ,WAAI;IAAxC;;QACE,YAAO,GAAG,mBAAO,CAAC,GAAG,CAAC;QAEtB,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,OAAO,EAAE,IAAI,EAAE,CAAC;QAClB,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,YAAY,EACZ;gBACE,KAAK,EAAE,YAAY;gBACnB,WAAW,EAAE,kEAAkE;gBAC/E,WAAW,EAAE;oBACX,GAAG,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,mBAAmB,CAAC;oBAC7C,GAAG,EAAE,kBAAM;iBACZ;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,YAAY;oBACnB,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAC;oBACvC,IAAI;oBACJ,cAAc,kCAAO,cAAc,KAAE,QAAQ,EAAE,KAAK,GAAE;oBACtD,KAAK;iBACN,CAAC,CAAC;gBAEH,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,OAAgB;4BACtB,IAAI,EAAE,IAAc;4BACpB,QAAQ,EAAE,WAAW;yBACtB;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CAAA;AA3CD,wCA2CC"}
|
|
@@ -5,11 +5,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.TargetProductTool = void 0;
|
|
7
7
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
+
const sdk_ts_1 = require("@decodo/sdk-ts");
|
|
8
9
|
const constants_1 = require("../../constants");
|
|
9
10
|
const zod_types_1 = require("../../zod/zod-types");
|
|
10
11
|
const tool_1 = require("../tool");
|
|
11
12
|
const zodDeliveryZip = zod_1.default.string().describe('ZIP code for delivery location').optional();
|
|
12
|
-
const zodStoreId = zod_1.default.string().describe('Target store ID for local inventory').optional();
|
|
13
13
|
class TargetProductTool extends tool_1.Tool {
|
|
14
14
|
constructor() {
|
|
15
15
|
super(...arguments);
|
|
@@ -19,20 +19,22 @@ class TargetProductTool extends tool_1.Tool {
|
|
|
19
19
|
};
|
|
20
20
|
this.register = ({ server, sapiClient, auth }) => {
|
|
21
21
|
server.registerTool('target_product', {
|
|
22
|
+
title: 'Target Product',
|
|
22
23
|
description: 'Scrape Target Product page with automatic parsing',
|
|
23
24
|
inputSchema: {
|
|
24
25
|
product_id: zod_1.default.string().describe('Target product ID (e.g., "1003921355")'),
|
|
25
26
|
jsRender: zod_types_1.zodJsRender,
|
|
26
27
|
deviceType: zod_types_1.zodDeviceType,
|
|
27
28
|
deliveryZip: zodDeliveryZip,
|
|
28
|
-
storeId: zodStoreId,
|
|
29
29
|
},
|
|
30
30
|
annotations: {
|
|
31
|
+
title: 'Target Product',
|
|
31
32
|
readOnlyHint: true,
|
|
33
|
+
destructiveHint: false,
|
|
32
34
|
openWorldHint: true,
|
|
33
35
|
},
|
|
34
36
|
}, async (scrapingParams, extra) => {
|
|
35
|
-
const params = Object.assign(Object.assign({ headless: 'html' }, scrapingParams), { target:
|
|
37
|
+
const params = Object.assign(Object.assign({ headless: 'html' }, scrapingParams), { target: sdk_ts_1.Target.TargetProduct, parse: true });
|
|
36
38
|
const { data } = await sapiClient.scrape({ auth, scrapingParams: params, extra });
|
|
37
39
|
return {
|
|
38
40
|
content: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"target-product-tool.js","sourceRoot":"","sources":["../../../src/tools/target-product/target-product-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"target-product-tool.js","sourceRoot":"","sources":["../../../src/tools/target-product/target-product-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,mDAAiE;AACjE,kCAAqD;AAGrD,MAAM,cAAc,GAAG,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAExF,MAAa,iBAAkB,SAAQ,WAAI;IAA3C;;QACE,YAAO,GAAG,mBAAO,CAAC,SAAS,CAAC;QAE5B,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,gBAAgB,EAChB;gBACE,KAAK,EAAE,gBAAgB;gBACvB,WAAW,EAAE,mDAAmD;gBAChE,WAAW,EAAE;oBACX,UAAU,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,wCAAwC,CAAC;oBACzE,QAAQ,EAAE,uBAAW;oBACrB,UAAU,EAAE,yBAAa;oBACzB,WAAW,EAAE,cAAc;iBAC5B;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,gBAAgB;oBACvB,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,8BACb,QAAQ,EAAE,MAAM,IACb,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,aAAa,EAC5B,KAAK,EAAE,IAAI,GACe,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;yBAC3B;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CAAA;AA/CD,8CA+CC"}
|
|
@@ -5,12 +5,12 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.TargetSearchTool = void 0;
|
|
7
7
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
+
const sdk_ts_1 = require("@decodo/sdk-ts");
|
|
8
9
|
const constants_1 = require("../../constants");
|
|
9
10
|
const utils_1 = require("../../utils");
|
|
10
11
|
const zod_types_1 = require("../../zod/zod-types");
|
|
11
12
|
const tool_1 = require("../tool");
|
|
12
13
|
const zodDeliveryZip = zod_1.default.string().describe('ZIP code for delivery location').optional();
|
|
13
|
-
const zodStoreId = zod_1.default.string().describe('Target store ID for local inventory').optional();
|
|
14
14
|
class TargetSearchTool extends tool_1.Tool {
|
|
15
15
|
constructor() {
|
|
16
16
|
super(...arguments);
|
|
@@ -23,20 +23,22 @@ class TargetSearchTool extends tool_1.Tool {
|
|
|
23
23
|
};
|
|
24
24
|
this.register = ({ server, sapiClient, auth }) => {
|
|
25
25
|
server.registerTool('target_search', {
|
|
26
|
+
title: 'Target Search',
|
|
26
27
|
description: 'Scrape Target Search results with automatic parsing',
|
|
27
28
|
inputSchema: {
|
|
28
29
|
query: zod_1.default.string().describe('Search query for Target products'),
|
|
29
30
|
jsRender: zod_types_1.zodJsRender,
|
|
30
31
|
deviceType: zod_types_1.zodDeviceType,
|
|
31
32
|
deliveryZip: zodDeliveryZip,
|
|
32
|
-
storeId: zodStoreId,
|
|
33
33
|
},
|
|
34
34
|
annotations: {
|
|
35
|
+
title: 'Target Search',
|
|
35
36
|
readOnlyHint: true,
|
|
37
|
+
destructiveHint: false,
|
|
36
38
|
openWorldHint: true,
|
|
37
39
|
},
|
|
38
40
|
}, async (scrapingParams, extra) => {
|
|
39
|
-
const params = Object.assign(Object.assign({ headless: 'html' }, scrapingParams), { target:
|
|
41
|
+
const params = Object.assign(Object.assign({ headless: 'html' }, scrapingParams), { target: sdk_ts_1.Target.TargetSearch, markdown: true });
|
|
40
42
|
const { data } = await sapiClient.scrape({ auth, scrapingParams: params, extra });
|
|
41
43
|
const { data: text } = this.transformResponse({ data });
|
|
42
44
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"target-search-tool.js","sourceRoot":"","sources":["../../../src/tools/target-search/target-search-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"target-search-tool.js","sourceRoot":"","sources":["../../../src/tools/target-search/target-search-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,uCAAuE;AACvE,mDAAiE;AACjE,kCAAqD;AAErD,MAAM,cAAc,GAAG,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,gCAAgC,CAAC,CAAC,QAAQ,EAAE,CAAC;AAExF,MAAa,gBAAiB,SAAQ,WAAI;IAA1C;;QACE,YAAO,GAAG,mBAAO,CAAC,SAAS,CAAC;QAI5B,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,KAAK,MAAM,aAAa,IAAI,gBAAgB,CAAC,2BAA2B,EAAE,CAAC;gBACzE,IAAI,GAAG,IAAA,iCAAyB,EAAC,EAAE,GAAG,EAAE,IAAI,EAAE,WAAW,EAAE,aAAa,EAAE,CAAC,CAAC;YAC9E,CAAC;YAED,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,eAAe,EACf;gBACE,KAAK,EAAE,eAAe;gBACtB,WAAW,EAAE,qDAAqD;gBAClE,WAAW,EAAE;oBACX,KAAK,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,kCAAkC,CAAC;oBAC9D,QAAQ,EAAE,uBAAW;oBACrB,UAAU,EAAE,yBAAa;oBACzB,WAAW,EAAE,cAAc;iBAC5B;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,eAAe;oBACtB,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,8BACb,QAAQ,EAAE,MAAM,IACb,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,YAAY,EAC3B,QAAQ,EAAE,IAAI,GACY,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBAExD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI;yBACL;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;;AAvDD,4CAuDC;AApDgB,4CAA2B,GAAG,CAAC,WAAW,EAAE,aAAa,CAAC,AAA/B,CAAgC"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.TiktokPostTool = void 0;
|
|
7
7
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
+
const sdk_ts_1 = require("@decodo/sdk-ts");
|
|
8
9
|
const constants_1 = require("../../constants");
|
|
9
10
|
const zod_types_1 = require("../../zod/zod-types");
|
|
10
11
|
const tool_1 = require("../tool");
|
|
@@ -17,6 +18,7 @@ class TiktokPostTool extends tool_1.Tool {
|
|
|
17
18
|
};
|
|
18
19
|
this.register = ({ server, sapiClient, auth }) => {
|
|
19
20
|
server.registerTool('tiktok_post', {
|
|
21
|
+
title: 'TikTok Post',
|
|
20
22
|
description: 'Scrape a TikTok post URL for structured data such as engagement, captions, and hashtags',
|
|
21
23
|
inputSchema: {
|
|
22
24
|
url: zod_1.default
|
|
@@ -25,11 +27,13 @@ class TiktokPostTool extends tool_1.Tool {
|
|
|
25
27
|
xhr: zod_types_1.zodXhr,
|
|
26
28
|
},
|
|
27
29
|
annotations: {
|
|
30
|
+
title: 'TikTok Post',
|
|
28
31
|
readOnlyHint: true,
|
|
32
|
+
destructiveHint: false,
|
|
29
33
|
openWorldHint: true,
|
|
30
34
|
},
|
|
31
35
|
}, async (scrapingParams, extra) => {
|
|
32
|
-
const params = Object.assign(Object.assign({}, scrapingParams), { target:
|
|
36
|
+
const params = Object.assign(Object.assign({}, scrapingParams), { target: sdk_ts_1.Target.TiktokPost });
|
|
33
37
|
const { data } = await sapiClient.scrape({ auth, scrapingParams: params, extra });
|
|
34
38
|
const { data: text } = this.transformResponse({ data });
|
|
35
39
|
return {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tiktok-post-tool.js","sourceRoot":"","sources":["../../../src/tools/tiktok-post/tiktok-post-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"tiktok-post-tool.js","sourceRoot":"","sources":["../../../src/tools/tiktok-post/tiktok-post-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,mDAA6C;AAC7C,kCAAqD;AAGrD,MAAa,cAAe,SAAQ,WAAI;IAAxC;;QACE,YAAO,GAAG,mBAAO,CAAC,YAAY,CAAC;QAE/B,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,aAAa,EACb;gBACE,KAAK,EAAE,aAAa;gBACpB,WAAW,EACT,yFAAyF;gBAC3F,WAAW,EAAE;oBACX,GAAG,EAAE,aAAC;yBACH,MAAM,EAAE;yBACR,QAAQ,CAAC,qEAAqE,CAAC;oBAClF,GAAG,EAAE,kBAAM;iBACZ;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,aAAa;oBACpB,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,gCACV,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,UAAU,GACC,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,iBAAiB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;gBAExD,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI;yBACL;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CAAA;AAhDD,wCAgDC"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.TiktokShopProductTool = void 0;
|
|
7
7
|
const zod_1 = __importDefault(require("zod"));
|
|
8
|
+
const sdk_ts_1 = require("@decodo/sdk-ts");
|
|
8
9
|
const constants_1 = require("../../constants");
|
|
9
10
|
const zod_types_1 = require("../../zod/zod-types");
|
|
10
11
|
const tool_1 = require("../tool");
|
|
@@ -17,6 +18,7 @@ class TiktokShopProductTool extends tool_1.Tool {
|
|
|
17
18
|
};
|
|
18
19
|
this.register = ({ server, sapiClient, auth }) => {
|
|
19
20
|
server.registerTool('tiktok_shop_product', {
|
|
21
|
+
title: 'TikTok Shop Product',
|
|
20
22
|
description: 'Scrape TikTok Shop Product page',
|
|
21
23
|
inputSchema: {
|
|
22
24
|
product_id: zod_1.default.string().describe('TikTok Shop product ID (e.g., "1731541214379741272")'),
|
|
@@ -25,11 +27,13 @@ class TiktokShopProductTool extends tool_1.Tool {
|
|
|
25
27
|
country: zod_types_1.zodCountry,
|
|
26
28
|
},
|
|
27
29
|
annotations: {
|
|
30
|
+
title: 'TikTok Shop Product',
|
|
28
31
|
readOnlyHint: true,
|
|
32
|
+
destructiveHint: false,
|
|
29
33
|
openWorldHint: true,
|
|
30
34
|
},
|
|
31
35
|
}, async (scrapingParams, extra) => {
|
|
32
|
-
const params = Object.assign(Object.assign({}, scrapingParams), { target:
|
|
36
|
+
const params = Object.assign(Object.assign({}, scrapingParams), { target: sdk_ts_1.Target.TiktokShopProduct, markdown: true });
|
|
33
37
|
const { data } = await sapiClient.scrape({ auth, scrapingParams: params, extra });
|
|
34
38
|
return {
|
|
35
39
|
content: [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tiktok-shop-product-tool.js","sourceRoot":"","sources":["../../../src/tools/tiktok-shop-product/tiktok-shop-product-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;
|
|
1
|
+
{"version":3,"file":"tiktok-shop-product-tool.js","sourceRoot":"","sources":["../../../src/tools/tiktok-shop-product/tiktok-shop-product-tool.ts"],"names":[],"mappings":";;;;;;AAAA,8CAAoB;AACpB,2CAAwC;AAExC,+CAA0C;AAC1C,mDAA6E;AAC7E,kCAAqD;AAGrD,MAAa,qBAAsB,SAAQ,WAAI;IAA/C;;QACE,YAAO,GAAG,mBAAO,CAAC,SAAS,CAAC;QAE5B,sBAAiB,GAAG,CAAC,EAAE,IAAI,EAAoB,EAAE,EAAE;YACjD,OAAO,EAAE,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC;QACxC,CAAC,CAAC;QAEF,aAAQ,GAAG,CAAC,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAwB,EAAE,EAAE;YAChE,MAAM,CAAC,YAAY,CACjB,qBAAqB,EACrB;gBACE,KAAK,EAAE,qBAAqB;gBAC5B,WAAW,EAAE,iCAAiC;gBAC9C,WAAW,EAAE;oBACX,UAAU,EAAE,aAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,sDAAsD,CAAC;oBACvF,QAAQ,EAAE,uBAAW;oBACrB,UAAU,EAAE,yBAAa;oBACzB,OAAO,EAAE,sBAAU;iBACpB;gBACD,WAAW,EAAE;oBACX,KAAK,EAAE,qBAAqB;oBAC5B,YAAY,EAAE,IAAI;oBAClB,eAAe,EAAE,KAAK;oBACtB,aAAa,EAAE,IAAI;iBACpB;aACF,EACD,KAAK,EAAE,cAAiC,EAAE,KAAoB,EAAE,EAAE;gBAChE,MAAM,MAAM,GAAG,gCACV,cAAc,KACjB,MAAM,EAAE,eAAM,CAAC,iBAAiB,EAChC,QAAQ,EAAE,IAAI,GACY,CAAC;gBAE7B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,UAAU,CAAC,MAAM,CAAS,EAAE,IAAI,EAAE,cAAc,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;gBAE1F,OAAO;oBACL,OAAO,EAAE;wBACP;4BACE,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;yBAC3B;qBACF;iBACF,CAAC;YACJ,CAAC,CACF,CAAC;QACJ,CAAC,CAAC;IACJ,CAAC;CAAA;AA9CD,sDA8CC"}
|