@apify/actors-mcp-server 0.4.7 → 0.4.10

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.
Files changed (89) hide show
  1. package/README.md +3 -0
  2. package/dist/actor/server.d.ts.map +1 -1
  3. package/dist/actor/server.js +7 -4
  4. package/dist/actor/server.js.map +1 -1
  5. package/dist/apify-client.d.ts +6 -1
  6. package/dist/apify-client.d.ts.map +1 -1
  7. package/dist/apify-client.js +18 -3
  8. package/dist/apify-client.js.map +1 -1
  9. package/dist/const.d.ts +10 -1
  10. package/dist/const.d.ts.map +1 -1
  11. package/dist/const.js +10 -1
  12. package/dist/const.js.map +1 -1
  13. package/dist/index-internals.d.ts +2 -1
  14. package/dist/index-internals.d.ts.map +1 -1
  15. package/dist/index-internals.js +2 -1
  16. package/dist/index-internals.js.map +1 -1
  17. package/dist/main.js +3 -1
  18. package/dist/main.js.map +1 -1
  19. package/dist/mcp/actors.d.ts +0 -1
  20. package/dist/mcp/actors.d.ts.map +1 -1
  21. package/dist/mcp/actors.js +0 -14
  22. package/dist/mcp/actors.js.map +1 -1
  23. package/dist/mcp/server.d.ts +14 -4
  24. package/dist/mcp/server.d.ts.map +1 -1
  25. package/dist/mcp/server.js +91 -13
  26. package/dist/mcp/server.js.map +1 -1
  27. package/dist/mcp/utils.d.ts +2 -1
  28. package/dist/mcp/utils.d.ts.map +1 -1
  29. package/dist/mcp/utils.js +2 -2
  30. package/dist/mcp/utils.js.map +1 -1
  31. package/dist/state.d.ts +2 -0
  32. package/dist/state.d.ts.map +1 -1
  33. package/dist/state.js +3 -1
  34. package/dist/state.js.map +1 -1
  35. package/dist/stdio.js +3 -1
  36. package/dist/stdio.js.map +1 -1
  37. package/dist/tools/actor.d.ts +5 -4
  38. package/dist/tools/actor.d.ts.map +1 -1
  39. package/dist/tools/actor.js +111 -79
  40. package/dist/tools/actor.js.map +1 -1
  41. package/dist/tools/build.d.ts +2 -1
  42. package/dist/tools/build.d.ts.map +1 -1
  43. package/dist/tools/build.js +4 -4
  44. package/dist/tools/build.js.map +1 -1
  45. package/dist/tools/fetch-actor-details.d.ts.map +1 -1
  46. package/dist/tools/fetch-actor-details.js +3 -1
  47. package/dist/tools/fetch-actor-details.js.map +1 -1
  48. package/dist/tools/get-actor-output.d.ts.map +1 -1
  49. package/dist/tools/get-actor-output.js +26 -5
  50. package/dist/tools/get-actor-output.js.map +1 -1
  51. package/dist/tools/get-html-skeleton.d.ts +3 -0
  52. package/dist/tools/get-html-skeleton.d.ts.map +1 -0
  53. package/dist/tools/get-html-skeleton.js +76 -0
  54. package/dist/tools/get-html-skeleton.js.map +1 -0
  55. package/dist/tools/helpers.d.ts.map +1 -1
  56. package/dist/tools/helpers.js +3 -1
  57. package/dist/tools/helpers.js.map +1 -1
  58. package/dist/tools/index.d.ts +1 -0
  59. package/dist/tools/index.d.ts.map +1 -1
  60. package/dist/tools/index.js +4 -0
  61. package/dist/tools/index.js.map +1 -1
  62. package/dist/tsconfig.tsbuildinfo +1 -1
  63. package/dist/types.d.ts +6 -0
  64. package/dist/types.d.ts.map +1 -1
  65. package/dist/utils/actor-details.d.ts +2 -1
  66. package/dist/utils/actor-details.d.ts.map +1 -1
  67. package/dist/utils/actor-details.js +3 -5
  68. package/dist/utils/actor-details.js.map +1 -1
  69. package/dist/utils/generic.d.ts +15 -9
  70. package/dist/utils/generic.d.ts.map +1 -1
  71. package/dist/utils/generic.js +28 -10
  72. package/dist/utils/generic.js.map +1 -1
  73. package/dist/utils/html.d.ts +11 -0
  74. package/dist/utils/html.d.ts.map +1 -0
  75. package/dist/utils/html.js +48 -0
  76. package/dist/utils/html.js.map +1 -0
  77. package/dist/utils/mcp.d.ts +10 -0
  78. package/dist/utils/mcp.d.ts.map +1 -0
  79. package/dist/utils/mcp.js +9 -0
  80. package/dist/utils/mcp.js.map +1 -0
  81. package/dist/utils/progress.d.ts +2 -1
  82. package/dist/utils/progress.d.ts.map +1 -1
  83. package/dist/utils/progress.js +2 -4
  84. package/dist/utils/progress.js.map +1 -1
  85. package/dist/utils/tools-loader.d.ts +2 -1
  86. package/dist/utils/tools-loader.d.ts.map +1 -1
  87. package/dist/utils/tools-loader.js +2 -2
  88. package/dist/utils/tools-loader.js.map +1 -1
  89. package/package.json +4 -1
@@ -2,7 +2,7 @@ import { z } from 'zod';
2
2
  import zodToJsonSchema from 'zod-to-json-schema';
3
3
  import log from '@apify/log';
4
4
  import { ApifyClient } from '../apify-client.js';
5
- import { ACTOR_ADDITIONAL_INSTRUCTIONS, ACTOR_MAX_MEMORY_MBYTES, HelperTools, TOOL_MAX_OUTPUT_CHARS, } from '../const.js';
5
+ import { ACTOR_ADDITIONAL_INSTRUCTIONS, ACTOR_MAX_MEMORY_MBYTES, HelperTools, SKYFIRE_TOOL_INSTRUCTIONS, TOOL_MAX_OUTPUT_CHARS, } from '../const.js';
6
6
  import { getActorMCPServerPath, getActorMCPServerURL } from '../mcp/actors.js';
7
7
  import { connectMCPClient } from '../mcp/client.js';
8
8
  import { getMCPServerTools } from '../mcp/proxy.js';
@@ -24,82 +24,74 @@ import { actorNameToToolName, fixedAjvCompile, getToolSchemaID, transformActorIn
24
24
  * If the `APIFY_IS_AT_HOME` the dataset items are pushed to the Apify dataset.
25
25
  *
26
26
  * @param {string} actorName - The name of the Actor to call.
27
- * @param {ActorCallOptions} callOptions - The options to pass to the Actor.
28
27
  * @param {unknown} input - The input to pass to the actor.
29
- * @param {string} apifyToken - The Apify token to use for authentication.
28
+ * @param {ApifyClient} apifyClient - The Apify client to use for authentication.
29
+ * @param {ActorCallOptions} callOptions - The options to pass to the Actor.
30
30
  * @param {ProgressTracker} progressTracker - Optional progress tracker for real-time updates.
31
31
  * @param {AbortSignal} abortSignal - Optional abort signal to cancel the actor run.
32
32
  * @returns {Promise<CallActorGetDatasetResult | null>} - A promise that resolves to an object containing the actor run and dataset items.
33
33
  * @throws {Error} - Throws an error if the `APIFY_TOKEN` is not set
34
34
  */
35
- export async function callActorGetDataset(actorName, input, apifyToken, callOptions = undefined, progressTracker, abortSignal) {
35
+ export async function callActorGetDataset(actorName, input, apifyClient, callOptions = undefined, progressTracker, abortSignal) {
36
36
  var _a, _b;
37
37
  const CLIENT_ABORT = Symbol('CLIENT_ABORT'); // Just internal symbol to identify client abort
38
- // TODO: we should remove this throw, we are just catching and then rethrowing with generic message
39
- try {
40
- const client = new ApifyClient({ token: apifyToken });
41
- const actorClient = client.actor(actorName);
42
- // Start the actor run
43
- const actorRun = await actorClient.start(input, callOptions);
44
- // Start progress tracking if tracker is provided
45
- if (progressTracker) {
46
- progressTracker.startActorRunUpdates(actorRun.id, apifyToken, actorName);
47
- }
48
- // Create abort promise that handles both API abort and race rejection
49
- const abortPromise = async () => new Promise((resolve) => {
50
- abortSignal === null || abortSignal === void 0 ? void 0 : abortSignal.addEventListener('abort', async () => {
51
- // Abort the actor run via API
52
- try {
53
- await client.run(actorRun.id).abort({ gracefully: false });
54
- }
55
- catch (e) {
56
- log.error('Error aborting Actor run', { error: e, runId: actorRun.id });
57
- }
58
- // Reject to stop waiting
59
- resolve(CLIENT_ABORT);
60
- }, { once: true });
61
- });
62
- // Wait for completion or cancellation
63
- const potentialAbortedRun = await Promise.race([
64
- client.run(actorRun.id).waitForFinish(),
65
- ...(abortSignal ? [abortPromise()] : []),
66
- ]);
67
- if (potentialAbortedRun === CLIENT_ABORT) {
68
- log.info('Actor run aborted by client', { actorName, input });
69
- return null;
70
- }
71
- const completedRun = potentialAbortedRun;
72
- // Process the completed run
73
- const dataset = client.dataset(completedRun.defaultDatasetId);
74
- const [datasetItems, defaultBuild] = await Promise.all([
75
- dataset.listItems(),
76
- (await actorClient.defaultBuild()).get(),
77
- ]);
78
- // Generate schema using the shared utility
79
- const generatedSchema = generateSchemaFromItems(datasetItems.items, {
80
- clean: true,
81
- arrayMode: 'all',
82
- });
83
- const schema = generatedSchema || { type: 'object', properties: {} };
84
- /**
85
- * Get important fields that are using in any dataset view as they MAY be used in filtering to ensure the output fits
86
- * the tool output limits. Client has to use the get-actor-output tool to retrieve the full dataset or filtered out fields.
87
- */
88
- const storageDefinition = (_b = (_a = defaultBuild === null || defaultBuild === void 0 ? void 0 : defaultBuild.actorDefinition) === null || _a === void 0 ? void 0 : _a.storages) === null || _b === void 0 ? void 0 : _b.dataset;
89
- const importantProperties = getActorDefinitionStorageFieldNames(storageDefinition || {});
90
- const previewItems = ensureOutputWithinCharLimit(datasetItems.items, importantProperties, TOOL_MAX_OUTPUT_CHARS);
91
- return {
92
- runId: actorRun.id,
93
- datasetId: completedRun.defaultDatasetId,
94
- itemCount: datasetItems.count,
95
- schema,
96
- previewItems,
97
- };
38
+ const actorClient = apifyClient.actor(actorName);
39
+ // Start the actor run
40
+ const actorRun = await actorClient.start(input, callOptions);
41
+ // Start progress tracking if tracker is provided
42
+ if (progressTracker) {
43
+ progressTracker.startActorRunUpdates(actorRun.id, apifyClient, actorName);
98
44
  }
99
- catch (error) {
100
- log.error('Error calling Actor', { error, actorName, input });
101
- throw new Error(`Error calling Actor: ${error}`);
45
+ // Create abort promise that handles both API abort and race rejection
46
+ const abortPromise = async () => new Promise((resolve) => {
47
+ abortSignal === null || abortSignal === void 0 ? void 0 : abortSignal.addEventListener('abort', async () => {
48
+ // Abort the actor run via API
49
+ try {
50
+ await apifyClient.run(actorRun.id).abort({ gracefully: false });
51
+ }
52
+ catch (e) {
53
+ log.error('Error aborting Actor run', { error: e, runId: actorRun.id });
54
+ }
55
+ // Reject to stop waiting
56
+ resolve(CLIENT_ABORT);
57
+ }, { once: true });
58
+ });
59
+ // Wait for completion or cancellation
60
+ const potentialAbortedRun = await Promise.race([
61
+ apifyClient.run(actorRun.id).waitForFinish(),
62
+ ...(abortSignal ? [abortPromise()] : []),
63
+ ]);
64
+ if (potentialAbortedRun === CLIENT_ABORT) {
65
+ log.info('Actor run aborted by client', { actorName, input });
66
+ return null;
102
67
  }
68
+ const completedRun = potentialAbortedRun;
69
+ // Process the completed run
70
+ const dataset = apifyClient.dataset(completedRun.defaultDatasetId);
71
+ const [datasetItems, defaultBuild] = await Promise.all([
72
+ dataset.listItems(),
73
+ (await actorClient.defaultBuild()).get(),
74
+ ]);
75
+ // Generate schema using the shared utility
76
+ const generatedSchema = generateSchemaFromItems(datasetItems.items, {
77
+ clean: true,
78
+ arrayMode: 'all',
79
+ });
80
+ const schema = generatedSchema || { type: 'object', properties: {} };
81
+ /**
82
+ * Get important fields that are using in any dataset view as they MAY be used in filtering to ensure the output fits
83
+ * the tool output limits. Client has to use the get-actor-output tool to retrieve the full dataset or filtered out fields.
84
+ */
85
+ const storageDefinition = (_b = (_a = defaultBuild === null || defaultBuild === void 0 ? void 0 : defaultBuild.actorDefinition) === null || _a === void 0 ? void 0 : _a.storages) === null || _b === void 0 ? void 0 : _b.dataset;
86
+ const importantProperties = getActorDefinitionStorageFieldNames(storageDefinition || {});
87
+ const previewItems = ensureOutputWithinCharLimit(datasetItems.items, importantProperties, TOOL_MAX_OUTPUT_CHARS);
88
+ return {
89
+ runId: actorRun.id,
90
+ datasetId: completedRun.defaultDatasetId,
91
+ itemCount: datasetItems.count,
92
+ schema,
93
+ previewItems,
94
+ };
103
95
  }
104
96
  /**
105
97
  * This function is used to fetch normal non-MCP server Actors as a tool.
@@ -152,7 +144,8 @@ Instructions: ${ACTOR_ADDITIONAL_INSTRUCTIONS}`,
152
144
  properties: {},
153
145
  required: [],
154
146
  },
155
- ajvValidate: fixedAjvCompile(ajv, actorDefinitionPruned.input || {}),
147
+ // Additional props true to allow skyfire-pay-id
148
+ ajvValidate: fixedAjvCompile(ajv, { ...actorDefinitionPruned.input, additionalProperties: true }),
156
149
  memoryMbytes: memoryMbytes > ACTOR_MAX_MEMORY_MBYTES ? ACTOR_MAX_MEMORY_MBYTES : memoryMbytes,
157
150
  },
158
151
  };
@@ -166,6 +159,13 @@ Instructions: ${ACTOR_ADDITIONAL_INSTRUCTIONS}`,
166
159
  return tools;
167
160
  }
168
161
  async function getMCPServersAsTools(actorsInfo, apifyToken) {
162
+ /**
163
+ * This is case for the Skyfire request without any Apify token, we do not support
164
+ * standby Actors in this case so we can skip MCP servers since they would fail anyway (they are standby Actors).
165
+ */
166
+ if (apifyToken === null || apifyToken === undefined) {
167
+ return [];
168
+ }
169
169
  const actorsMCPServerTools = [];
170
170
  for (const actorInfo of actorsInfo) {
171
171
  const actorId = actorInfo.actorDefinitionPruned.id;
@@ -196,7 +196,7 @@ async function getMCPServersAsTools(actorsInfo, apifyToken) {
196
196
  }
197
197
  return actorsMCPServerTools;
198
198
  }
199
- export async function getActorsAsTools(actorIdsOrNames, apifyToken) {
199
+ export async function getActorsAsTools(actorIdsOrNames, apifyClient) {
200
200
  log.debug('Fetching Actors as tools', { actorNames: actorIdsOrNames });
201
201
  const actorsInfo = await Promise.all(actorIdsOrNames.map(async (actorIdOrName) => {
202
202
  const actorDefinitionPrunedCached = actorDefinitionPrunedCache.get(actorIdOrName);
@@ -206,7 +206,7 @@ export async function getActorsAsTools(actorIdsOrNames, apifyToken) {
206
206
  webServerMcpPath: getActorMCPServerPath(actorDefinitionPrunedCached),
207
207
  };
208
208
  }
209
- const actorDefinitionPruned = await getActorDefinition(actorIdOrName, apifyToken);
209
+ const actorDefinitionPruned = await getActorDefinition(actorIdOrName, apifyClient);
210
210
  if (!actorDefinitionPruned) {
211
211
  log.error('Actor not found or definition is not available', { actorName: actorIdOrName });
212
212
  return null;
@@ -224,7 +224,7 @@ export async function getActorsAsTools(actorIdsOrNames, apifyToken) {
224
224
  const normalActorsInfo = clonedActors.filter((actorInfo) => actorInfo && !actorInfo.webServerMcpPath);
225
225
  const [normalTools, mcpServerTools] = await Promise.all([
226
226
  getNormalActorsAsTools(normalActorsInfo),
227
- getMCPServersAsTools(actorMCPServersInfo, apifyToken),
227
+ getMCPServersAsTools(actorMCPServersInfo, apifyClient.token),
228
228
  ]);
229
229
  return [...normalTools, ...mcpServerTools];
230
230
  }
@@ -276,25 +276,57 @@ Step 2: Call Actor (step="call")
276
276
 
277
277
  The step parameter enforces this workflow - you cannot call an Actor without first getting its info.`,
278
278
  inputSchema: zodToJsonSchema(callActorArgs),
279
- ajvValidate: ajv.compile(zodToJsonSchema(callActorArgs)),
279
+ ajvValidate: ajv.compile({
280
+ ...zodToJsonSchema(callActorArgs),
281
+ // Additional props true to allow skyfire-pay-id
282
+ additionalProperties: true,
283
+ }),
280
284
  call: async (toolArgs) => {
281
- const { args, apifyToken, progressTracker, extra } = toolArgs;
285
+ const { args, apifyToken, progressTracker, extra, apifyMcpServer } = toolArgs;
282
286
  const { actor: actorName, step, input, callOptions } = callActorArgs.parse(args);
283
287
  try {
284
288
  if (step === 'info') {
289
+ const apifyClient = new ApifyClient({ token: apifyToken });
285
290
  // Step 1: Return Actor card and schema directly
286
- const details = await fetchActorDetails(apifyToken, actorName);
291
+ const details = await fetchActorDetails(apifyClient, actorName);
287
292
  if (!details) {
288
293
  return {
289
294
  content: [{ type: 'text', text: `Actor information for '${actorName}' was not found. Please check the Actor ID or name and ensure the Actor exists.` }],
290
295
  };
291
296
  }
297
+ const content = [
298
+ { type: 'text', text: `**Input Schema:**\n${JSON.stringify(details.inputSchema, null, 0)}` },
299
+ ];
300
+ /**
301
+ * Add Skyfire instructions also in the info step since clients are most likely truncating the long tool description of the call-actor.
302
+ */
303
+ if (apifyMcpServer.options.skyfireMode) {
304
+ content.push({
305
+ type: 'text',
306
+ text: SKYFIRE_TOOL_INSTRUCTIONS,
307
+ });
308
+ }
309
+ return { content };
310
+ }
311
+ /**
312
+ * In Skyfire mode, we check for the presence of `skyfire-pay-id`.
313
+ * If it is missing, we return instructions to the LLM on how to create it and pass it to the tool.
314
+ */
315
+ if (apifyMcpServer.options.skyfireMode
316
+ && args['skyfire-pay-id'] === undefined) {
292
317
  return {
293
- content: [
294
- { type: 'text', text: `**Input Schema:**\n${JSON.stringify(details.inputSchema, null, 0)}` },
295
- ],
318
+ content: [{
319
+ type: 'text',
320
+ text: SKYFIRE_TOOL_INSTRUCTIONS,
321
+ }],
296
322
  };
297
323
  }
324
+ /**
325
+ * Create Apify token, for Skyfire mode use `skyfire-pay-id` and for normal mode use `apifyToken`.
326
+ */
327
+ const apifyClient = apifyMcpServer.options.skyfireMode && typeof args['skyfire-pay-id'] === 'string'
328
+ ? new ApifyClient({ skyfirePayId: args['skyfire-pay-id'] })
329
+ : new ApifyClient({ token: apifyToken });
298
330
  // Step 2: Call the Actor
299
331
  if (!input) {
300
332
  return {
@@ -303,7 +335,7 @@ The step parameter enforces this workflow - you cannot call an Actor without fir
303
335
  ],
304
336
  };
305
337
  }
306
- const [actor] = await getActorsAsTools([actorName], apifyToken);
338
+ const [actor] = await getActorsAsTools([actorName], apifyClient);
307
339
  if (!actor) {
308
340
  return {
309
341
  content: [
@@ -322,7 +354,7 @@ The step parameter enforces this workflow - you cannot call an Actor without fir
322
354
  };
323
355
  }
324
356
  }
325
- const callResult = await callActorGetDataset(actorName, input, apifyToken, callOptions, progressTracker, extra.signal);
357
+ const callResult = await callActorGetDataset(actorName, input, apifyClient, callOptions, progressTracker, extra.signal);
326
358
  if (!callResult) {
327
359
  // Receivers of cancellation notifications SHOULD NOT send a response for the cancelled request
328
360
  // https://modelcontextprotocol.io/specification/2025-06-18/basic/utilities/cancellation#behavior-requirements
@@ -1 +1 @@
1
- {"version":3,"file":"actor.js","sourceRoot":"","sources":["../../src/tools/actor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"actor.js","sourceRoot":"","sources":["../../src/tools/actor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,eAAe,MAAM,oBAAoB,CAAC;AAEjD,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EACH,6BAA6B,EAC7B,uBAAuB,EACvB,WAAW,EACX,yBAAyB,EACzB,qBAAqB,GACxB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AACpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,0BAA0B,EAAE,MAAM,aAAa,CAAC;AAEzD,OAAO,EAAE,2BAA2B,EAAE,mCAAmC,EAAE,MAAM,mBAAmB,CAAC;AACrG,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,yBAAyB,EAAE,MAAM,4BAA4B,CAAC;AACvE,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAGtC,OAAO,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,mBAAmB,EAAE,eAAe,EAAE,eAAe,EAAE,mCAAmC,EAAE,MAAM,YAAY,CAAC;AAWxH;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACrC,SAAiB,EACjB,KAAc,EACd,WAAwB,EACxB,cAA4C,SAAS,EACrD,eAAwC,EACxC,WAAyB;;IAEzB,MAAM,YAAY,GAAG,MAAM,CAAC,cAAc,CAAC,CAAC,CAAC,gDAAgD;IAC7F,MAAM,WAAW,GAAG,WAAW,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;IAEjD,sBAAsB;IACtB,MAAM,QAAQ,GAAa,MAAM,WAAW,CAAC,KAAK,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;IAEvE,iDAAiD;IACjD,IAAI,eAAe,EAAE,CAAC;QAClB,eAAe,CAAC,oBAAoB,CAAC,QAAQ,CAAC,EAAE,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IAC9E,CAAC;IAED,sEAAsE;IACtE,MAAM,YAAY,GAAG,KAAK,IAAI,EAAE,CAAC,IAAI,OAAO,CAAsB,CAAC,OAAO,EAAE,EAAE;QAC1E,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,gBAAgB,CAAC,OAAO,EAAE,KAAK,IAAI,EAAE;YAC9C,8BAA8B;YAC9B,IAAI,CAAC;gBACD,MAAM,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;YACpE,CAAC;YAAC,OAAO,CAAC,EAAE,CAAC;gBACT,GAAG,CAAC,KAAK,CAAC,0BAA0B,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5E,CAAC;YACD,yBAAyB;YACzB,OAAO,CAAC,YAAY,CAAC,CAAC;QAC1B,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IACvB,CAAC,CAAC,CAAC;IAEH,sCAAsC;IACtC,MAAM,mBAAmB,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;QAC3C,WAAW,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,aAAa,EAAE;QAC5C,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KAC3C,CAAC,CAAC;IAEH,IAAI,mBAAmB,KAAK,YAAY,EAAE,CAAC;QACvC,GAAG,CAAC,IAAI,CAAC,6BAA6B,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC;QAC9D,OAAO,IAAI,CAAC;IAChB,CAAC;IACD,MAAM,YAAY,GAAG,mBAA+B,CAAC;IAErD,4BAA4B;IAC5B,MAAM,OAAO,GAAG,WAAW,CAAC,OAAO,CAAC,YAAY,CAAC,gBAAgB,CAAC,CAAC;IACnE,MAAM,CAAC,YAAY,EAAE,YAAY,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACnD,OAAO,CAAC,SAAS,EAAE;QACnB,CAAC,MAAM,WAAW,CAAC,YAAY,EAAE,CAAC,CAAC,GAAG,EAAE;KAC3C,CAAC,CAAC;IAEH,2CAA2C;IAC3C,MAAM,eAAe,GAAG,uBAAuB,CAAC,YAAY,CAAC,KAAK,EAAE;QAChE,KAAK,EAAE,IAAI;QACX,SAAS,EAAE,KAAK;KACnB,CAAC,CAAC;IACH,MAAM,MAAM,GAAG,eAAe,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,CAAC;IAErE;;;OAGG;IACH,MAAM,iBAAiB,GAAG,MAAA,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,eAAe,0CAAE,QAAQ,0CAAE,OAA6C,CAAC;IACjH,MAAM,mBAAmB,GAAG,mCAAmC,CAAC,iBAAiB,IAAI,EAAE,CAAC,CAAC;IACzF,MAAM,YAAY,GAAG,2BAA2B,CAAC,YAAY,CAAC,KAAK,EAAE,mBAAmB,EAAE,qBAAqB,CAAC,CAAC;IAEjH,OAAO;QACH,KAAK,EAAE,QAAQ,CAAC,EAAE;QAClB,SAAS,EAAE,YAAY,CAAC,gBAAgB;QACxC,SAAS,EAAE,YAAY,CAAC,KAAK;QAC7B,MAAM;QACN,YAAY;KACf,CAAC;AACN,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CACxC,UAAuB;;IAEvB,MAAM,KAAK,GAAgB,EAAE,CAAC;IAE9B,oDAAoD;IACpD,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACjC,MAAM,EAAE,qBAAqB,EAAE,GAAG,SAAS,CAAC;QAE5C,IAAI,qBAAqB,EAAE,CAAC;YACxB,MAAM,QAAQ,GAAG,eAAe,CAAC,qBAAqB,CAAC,aAAa,CAAC,CAAC;YACtE,IAAI,qBAAqB,CAAC,KAAK,IAAI,YAAY,IAAI,qBAAqB,CAAC,KAAK,IAAI,qBAAqB,CAAC,KAAK,EAAE,CAAC;gBAC5G,qBAAqB,CAAC,KAAK,CAAC,UAAU,GAAG,mCAAmC,CAAC,qBAAqB,CAAC,KAAK,CAAC,CAAC;gBAC1G,kEAAkE;gBAClE,6FAA6F;gBAC7F,qBAAqB,CAAC,KAAK,CAAC,GAAG,GAAG,QAAQ,CAAC;YAC/C,CAAC;YACD,IAAI,CAAC;gBACD,MAAM,YAAY,GAAG,CAAA,MAAA,qBAAqB,CAAC,iBAAiB,0CAAE,YAAY,KAAI,uBAAuB,CAAC;gBACtG,MAAM,IAAI,GAAc;oBACpB,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE;wBACF,IAAI,EAAE,mBAAmB,CAAC,qBAAqB,CAAC,aAAa,CAAC;wBAC9D,aAAa,EAAE,qBAAqB,CAAC,aAAa;wBAClD,WAAW,EAAE,8BAA8B,qBAAqB,CAAC,aAAa,qEAAqE,WAAW,CAAC,UAAU;qBAC5K,qBAAqB,CAAC,WAAW;gBACtC,6BAA6B,EAAE;wBACvB,WAAW,EAAE,qBAAqB,CAAC,KAAK;4BACxC,oFAAoF;+BACjF;gCACC,IAAI,EAAE,QAAQ;gCACd,UAAU,EAAE,EAAE;gCACd,QAAQ,EAAE,EAAE;6BACf;wBACD,gDAAgD;wBAChD,WAAW,EAAE,eAAe,CAAC,GAAG,EAAE,EAAE,GAAG,qBAAqB,CAAC,KAAK,EAAE,oBAAoB,EAAE,IAAI,EAAE,CAAC;wBACjG,YAAY,EAAE,YAAY,GAAG,uBAAuB,CAAC,CAAC,CAAC,uBAAuB,CAAC,CAAC,CAAC,YAAY;qBAChG;iBACJ,CAAC;gBACF,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACrB,CAAC;YAAC,OAAO,eAAe,EAAE,CAAC;gBACvB,GAAG,CAAC,KAAK,CAAC,wCAAwC,EAAE,EAAE,SAAS,EAAE,qBAAqB,CAAC,aAAa,EAAE,KAAK,EAAE,eAAe,EAAE,CAAC,CAAC;YACpI,CAAC;QACL,CAAC;IACL,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,KAAK,UAAU,oBAAoB,CAC/B,UAAuB,EACvB,UAAsB;IAEtB;;;OAGG;IACH,IAAI,UAAU,KAAK,IAAI,IAAI,UAAU,KAAK,SAAS,EAAE,CAAC;QAClD,OAAO,EAAE,CAAC;IACd,CAAC;IAED,MAAM,oBAAoB,GAAgB,EAAE,CAAC;IAC7C,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACjC,MAAM,OAAO,GAAG,SAAS,CAAC,qBAAqB,CAAC,EAAE,CAAC;QACnD,IAAI,CAAC,SAAS,CAAC,gBAAgB,EAAE,CAAC;YAC9B,GAAG,CAAC,OAAO,CAAC,qDAAqD,EAAE;gBAC/D,aAAa,EAAE,SAAS,CAAC,qBAAqB,CAAC,aAAa;gBAC5D,OAAO;aACV,CAAC,CAAC;YACH,SAAS;QACb,CAAC;QACD,MAAM,YAAY,GAAG,MAAM,oBAAoB,CAC3C,SAAS,CAAC,qBAAqB,CAAC,EAAE,EAAE,uBAAuB;QAC3D,SAAS,CAAC,gBAAgB,CAC7B,CAAC;QACF,GAAG,CAAC,KAAK,CAAC,oCAAoC,EAAE;YAC5C,aAAa,EAAE,SAAS,CAAC,qBAAqB,CAAC,aAAa;YAC5D,OAAO;YACP,YAAY;SACf,CAAC,CAAC;QAEH,IAAI,MAA0B,CAAC;QAC/B,IAAI,CAAC;YACD,MAAM,GAAG,MAAM,gBAAgB,CAAC,YAAY,EAAE,UAAU,CAAC,CAAC;YAC1D,MAAM,WAAW,GAAG,MAAM,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,YAAY,CAAC,CAAC;YAC3E,oBAAoB,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;QAC9C,CAAC;gBAAS,CAAC;YACP,IAAI,MAAM;gBAAE,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;QACrC,CAAC;IACL,CAAC;IAED,OAAO,oBAAoB,CAAC;AAChC,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,gBAAgB,CAClC,eAAyB,EACzB,WAAwB;IAExB,GAAG,CAAC,KAAK,CAAC,0BAA0B,EAAE,EAAE,UAAU,EAAE,eAAe,EAAE,CAAC,CAAC;IAEvE,MAAM,UAAU,GAAyB,MAAM,OAAO,CAAC,GAAG,CACtD,eAAe,CAAC,GAAG,CAAC,KAAK,EAAE,aAAa,EAAE,EAAE;QACxC,MAAM,2BAA2B,GAAG,0BAA0B,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;QAClF,IAAI,2BAA2B,EAAE,CAAC;YAC9B,OAAO;gBACH,qBAAqB,EAAE,2BAA2B;gBAClD,gBAAgB,EAAE,qBAAqB,CAAC,2BAA2B,CAAC;aAE1D,CAAC;QACnB,CAAC;QAED,MAAM,qBAAqB,GAAG,MAAM,kBAAkB,CAAC,aAAa,EAAE,WAAW,CAAC,CAAC;QACnF,IAAI,CAAC,qBAAqB,EAAE,CAAC;YACzB,GAAG,CAAC,KAAK,CAAC,gDAAgD,EAAE,EAAE,SAAS,EAAE,aAAa,EAAE,CAAC,CAAC;YAC1F,OAAO,IAAI,CAAC;QAChB,CAAC;QACD,oCAAoC;QACpC,0BAA0B,CAAC,GAAG,CAAC,aAAa,EAAE,qBAAqB,CAAC,CAAC;QACrE,OAAO;YACH,qBAAqB;YACrB,gBAAgB,EAAE,qBAAqB,CAAC,qBAAqB,CAAC;SACpD,CAAC;IACnB,CAAC,CAAC,CACL,CAAC;IAEF,MAAM,YAAY,GAAG,eAAe,CAAC,UAAU,CAAC,CAAC;IAEjD,0EAA0E;IAC1E,MAAM,mBAAmB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,IAAI,SAAS,CAAC,gBAAgB,CAAgB,CAAC;IACvH,MAAM,gBAAgB,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,IAAI,CAAC,SAAS,CAAC,gBAAgB,CAAgB,CAAC;IAErH,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;QACpD,sBAAsB,CAAC,gBAAgB,CAAC;QACxC,oBAAoB,CAAC,mBAAmB,EAAE,WAAW,CAAC,KAAK,CAAC;KAC/D,CAAC,CAAC;IAEH,OAAO,CAAC,GAAG,WAAW,EAAE,GAAG,cAAc,CAAC,CAAC;AAC/C,CAAC;AAED,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3B,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;SACZ,QAAQ,CAAC,sEAAsE,CAAC;IACrF,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;SACzB,OAAO,CAAC,MAAM,CAAC;SACf,QAAQ,CAAC,6IAA6I,CAAC;IAC5J,KAAK,EAAE,CAAC,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,WAAW,EAAE;SAC5B,QAAQ,EAAE;SACV,QAAQ,CAAC,0JAA0J,CAAC;IACzK,WAAW,EAAE,CAAC,CAAC,MAAM,CAAC;QAClB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;aACb,GAAG,CAAC,GAAG,EAAE,gCAAgC,CAAC;aAC1C,GAAG,CAAC,KAAK,EAAE,uCAAuC,CAAC;aACnD,QAAQ,EAAE;aACV,QAAQ,CAAC,sKAAsK,CAAC;QACrL,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;aACd,GAAG,CAAC,CAAC,EAAE,8BAA8B,CAAC;aACtC,QAAQ,EAAE;aACV,QAAQ,CAAC,2LAA2L,CAAC;KAC7M,CAAC,CAAC,QAAQ,EAAE;SACR,QAAQ,CAAC,wDAAwD,CAAC;CAC1E,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,SAAS,GAAc;IAChC,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE;QACF,IAAI,EAAE,WAAW,CAAC,UAAU;QAC5B,aAAa,EAAE,WAAW,CAAC,UAAU;QACrC,WAAW,EAAE;;;;;;sCAMiB,mBAAmB,CAAC,uBAAuB,CAAC;;;;;;;;;;;;;qGAamB;QAC7F,WAAW,EAAE,eAAe,CAAC,aAAa,CAAC;QAC3C,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC;YACrB,GAAG,eAAe,CAAC,aAAa,CAAC;YACjC,gDAAgD;YAChD,oBAAoB,EAAE,IAAI;SAC7B,CAAC;QACF,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;YACrB,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,QAAQ,CAAC;YAC9E,MAAM,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,WAAW,EAAE,GAAG,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAEjF,IAAI,CAAC;gBACD,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;oBAClB,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;oBAC3D,gDAAgD;oBAChD,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;oBAChE,IAAI,CAAC,OAAO,EAAE,CAAC;wBACX,OAAO;4BACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,0BAA0B,SAAS,iFAAiF,EAAE,CAAC;yBAC1J,CAAC;oBACN,CAAC;oBACD,MAAM,OAAO,GAAG;wBACZ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;qBAC/F,CAAC;oBACF;;uBAEG;oBACH,IAAI,cAAc,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;wBACrC,OAAO,CAAC,IAAI,CAAC;4BACT,IAAI,EAAE,MAAM;4BACZ,IAAI,EAAE,yBAAyB;yBAClC,CAAC,CAAC;oBACP,CAAC;oBACD,OAAO,EAAE,OAAO,EAAE,CAAC;gBACvB,CAAC;gBAED;;;mBAGG;gBACH,IAAI,cAAc,CAAC,OAAO,CAAC,WAAW;uBAC/B,IAAI,CAAC,gBAAgB,CAAC,KAAK,SAAS,EACzC,CAAC;oBACC,OAAO;wBACH,OAAO,EAAE,CAAC;gCACN,IAAI,EAAE,MAAM;gCACZ,IAAI,EAAE,yBAAyB;6BAClC,CAAC;qBACL,CAAC;gBACN,CAAC;gBAED;;mBAEG;gBACH,MAAM,WAAW,GAAG,cAAc,CAAC,OAAO,CAAC,WAAW,IAAI,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,QAAQ;oBAChG,CAAC,CAAC,IAAI,WAAW,CAAC,EAAE,YAAY,EAAE,IAAI,CAAC,gBAAgB,CAAC,EAAE,CAAC;oBAC3D,CAAC,CAAC,IAAI,WAAW,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;gBAE7C,yBAAyB;gBACzB,IAAI,CAAC,KAAK,EAAE,CAAC;oBACT,OAAO;wBACH,OAAO,EAAE;4BACL,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,2GAA2G,EAAE;yBACtI;qBACJ,CAAC;gBACN,CAAC;gBAED,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,gBAAgB,CAAC,CAAC,SAAS,CAAC,EAAE,WAAW,CAAC,CAAC;gBAEjE,IAAI,CAAC,KAAK,EAAE,CAAC;oBACT,OAAO;wBACH,OAAO,EAAE;4BACL,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,UAAU,SAAS,cAAc,EAAE;yBAC5D;qBACJ,CAAC;gBACN,CAAC;gBAED,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;oBACjC,MAAM,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC;oBAC1C,IAAI,MAAM,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;wBAC9B,OAAO;4BACH,OAAO,EAAE;gCACL,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sCAAsC,SAAS,MAAM,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE;gCACtH,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,kBAAkB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,EAAE;6BACrF;yBACJ,CAAC;oBACN,CAAC;gBACL,CAAC;gBAED,MAAM,UAAU,GAAG,MAAM,mBAAmB,CACxC,SAAS,EACT,KAAK,EACL,WAAW,EACX,WAAW,EACX,eAAe,EACf,KAAK,CAAC,MAAM,CACf,CAAC;gBAEF,IAAI,CAAC,UAAU,EAAE,CAAC;oBACd,+FAA+F;oBAC/F,8GAA8G;oBAC9G,OAAO,EAAG,CAAC;gBACf,CAAC;gBAED,MAAM,OAAO,GAAG,yBAAyB,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;gBAEjE,OAAO,EAAE,OAAO,EAAE,CAAC;YACvB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,GAAG,CAAC,KAAK,CAAC,4BAA4B,EAAE,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;gBACpE,OAAO;oBACH,OAAO,EAAE;wBACL,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,+BAA+B,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,EAAE;qBAClH;iBACJ,CAAC;YACN,CAAC;QACL,CAAC;KACJ;CACJ,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { ApifyClient } from '../apify-client.js';
1
2
  import type { ActorDefinitionPruned, ToolEntry } from '../types.js';
2
3
  /**
3
4
  * Get Actor input schema by Actor name.
@@ -8,7 +9,7 @@ import type { ActorDefinitionPruned, ToolEntry } from '../types.js';
8
9
  * @param {string} apifyToken
9
10
  * @returns {Promise<ActorDefinitionWithDesc | null>} - The actor definition with description or null if not found.
10
11
  */
11
- export declare function getActorDefinition(actorIdOrName: string, apifyToken: string, limit?: number): Promise<ActorDefinitionPruned | null>;
12
+ export declare function getActorDefinition(actorIdOrName: string, apifyClient: ApifyClient, limit?: number): Promise<ActorDefinitionPruned | null>;
12
13
  /**
13
14
  * https://docs.apify.com/api/v2/actor-build-get
14
15
  */
@@ -1 +1 @@
1
- {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/tools/build.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EACR,qBAAqB,EAIrB,SAAS,EACZ,MAAM,aAAa,CAAC;AAIrB;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACpC,aAAa,EAAE,MAAM,EACrB,UAAU,EAAE,MAAM,EAClB,KAAK,GAAE,MAAgC,GACxC,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CA6BvC;AA+CD;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,SA2BjC,CAAC"}
1
+ {"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../src/tools/build.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEjD,OAAO,KAAK,EACR,qBAAqB,EAIrB,SAAS,EACZ,MAAM,aAAa,CAAC;AAIrB;;;;;;;;GAQG;AACH,wBAAsB,kBAAkB,CACpC,aAAa,EAAE,MAAM,EACrB,WAAW,EAAE,WAAW,EACxB,KAAK,GAAE,MAAgC,GACxC,OAAO,CAAC,qBAAqB,GAAG,IAAI,CAAC,CA4BvC;AA+CD;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,SA4BjC,CAAC"}
@@ -14,9 +14,8 @@ import { filterSchemaProperties, shortenProperties } from './utils.js';
14
14
  * @param {string} apifyToken
15
15
  * @returns {Promise<ActorDefinitionWithDesc | null>} - The actor definition with description or null if not found.
16
16
  */
17
- export async function getActorDefinition(actorIdOrName, apifyToken, limit = ACTOR_README_MAX_LENGTH) {
18
- const client = new ApifyClient({ token: apifyToken });
19
- const actorClient = client.actor(actorIdOrName);
17
+ export async function getActorDefinition(actorIdOrName, apifyClient, limit = ACTOR_README_MAX_LENGTH) {
18
+ const actorClient = apifyClient.actor(actorIdOrName);
20
19
  try {
21
20
  // Fetch actor details
22
21
  const actor = await actorClient.get();
@@ -105,7 +104,8 @@ export const actorDefinitionTool = {
105
104
  call: async (toolArgs) => {
106
105
  const { args, apifyToken } = toolArgs;
107
106
  const parsed = getActorDefinitionArgsSchema.parse(args);
108
- const v = await getActorDefinition(parsed.actorName, apifyToken, parsed.limit);
107
+ const apifyClient = new ApifyClient({ token: apifyToken });
108
+ const v = await getActorDefinition(parsed.actorName, apifyClient, parsed.limit);
109
109
  if (!v) {
110
110
  return { content: [{ type: 'text', text: `Actor '${parsed.actorName}' not found.` }] };
111
111
  }
@@ -1 +1 @@
1
- {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/tools/build.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/tools/build.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-actor-details.d.ts","sourceRoot":"","sources":["../../src/tools/fetch-actor-details.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,aAAa,CAAC;AAU3D,eAAO,MAAM,qBAAqB,EAAE,SAiCnC,CAAC"}
1
+ {"version":3,"file":"fetch-actor-details.d.ts","sourceRoot":"","sources":["../../src/tools/fetch-actor-details.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,aAAa,CAAC;AAU3D,eAAO,MAAM,qBAAqB,EAAE,SAkCnC,CAAC"}
@@ -1,5 +1,6 @@
1
1
  import { z } from 'zod';
2
2
  import zodToJsonSchema from 'zod-to-json-schema';
3
+ import { ApifyClient } from '../apify-client.js';
3
4
  import { HelperTools } from '../const.js';
4
5
  import { fetchActorDetails } from '../utils/actor-details.js';
5
6
  import { ajv } from '../utils/ajv.js';
@@ -26,7 +27,8 @@ export const fetchActorDetailsTool = {
26
27
  call: async (toolArgs) => {
27
28
  const { args, apifyToken } = toolArgs;
28
29
  const parsed = fetchActorDetailsToolArgsSchema.parse(args);
29
- const details = await fetchActorDetails(apifyToken, parsed.actor);
30
+ const apifyClient = new ApifyClient({ token: apifyToken });
31
+ const details = await fetchActorDetails(apifyClient, parsed.actor);
30
32
  if (!details) {
31
33
  return {
32
34
  content: [{ type: 'text', text: `Actor information for '${parsed.actor}' was not found. Please check the Actor ID or name and ensure the Actor exists.` }],
@@ -1 +1 @@
1
- {"version":3,"file":"fetch-actor-details.js","sourceRoot":"","sources":["../../src/tools/fetch-actor-details.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,eAAe,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;SACZ,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,qFAAqF,CAAC;CACvG,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAc;IAC5C,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE;QACF,IAAI,EAAE,WAAW,CAAC,iBAAiB;QACnC,WAAW,EAAE,mEAAmE;cAC1E,mHAAmH;cACnH,+FAA+F;cAC/F,uEAAuE;cACvE,UAAU;cACV,oFAAoF;cACpF,aAAa;cACb,kDAAkD;cAClD,kEAAkE;QACxE,WAAW,EAAE,eAAe,CAAC,+BAA+B,CAAC;QAC7D,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,+BAA+B,CAAC,CAAC;QAC1E,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;YACrB,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC;YACtC,MAAM,MAAM,GAAG,+BAA+B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,UAAU,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YAClE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,OAAO;oBACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,0BAA0B,MAAM,CAAC,KAAK,iFAAiF,EAAE,CAAC;iBAC7J,CAAC;YACN,CAAC;YACD,OAAO;gBACH,OAAO,EAAE;oBACL,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,OAAO,CAAC,SAAS,EAAE,EAAE;oBAC/D,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,OAAO,CAAC,MAAM,EAAE,EAAE;oBACxD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;iBAC/F;aACJ,CAAC;QACN,CAAC;KACY;CACpB,CAAC"}
1
+ {"version":3,"file":"fetch-actor-details.js","sourceRoot":"","sources":["../../src/tools/fetch-actor-details.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,eAAe,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,GAAG,EAAE,MAAM,iBAAiB,CAAC;AAEtC,MAAM,+BAA+B,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7C,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;SACZ,GAAG,CAAC,CAAC,CAAC;SACN,QAAQ,CAAC,qFAAqF,CAAC;CACvG,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAc;IAC5C,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE;QACF,IAAI,EAAE,WAAW,CAAC,iBAAiB;QACnC,WAAW,EAAE,mEAAmE;cAC1E,mHAAmH;cACnH,+FAA+F;cAC/F,uEAAuE;cACvE,UAAU;cACV,oFAAoF;cACpF,aAAa;cACb,kDAAkD;cAClD,kEAAkE;QACxE,WAAW,EAAE,eAAe,CAAC,+BAA+B,CAAC;QAC7D,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,+BAA+B,CAAC,CAAC;QAC1E,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;YACrB,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,GAAG,QAAQ,CAAC;YACtC,MAAM,MAAM,GAAG,+BAA+B,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC3D,MAAM,WAAW,GAAG,IAAI,WAAW,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;YAC3D,MAAM,OAAO,GAAG,MAAM,iBAAiB,CAAC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,CAAC;YACnE,IAAI,CAAC,OAAO,EAAE,CAAC;gBACX,OAAO;oBACH,OAAO,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,0BAA0B,MAAM,CAAC,KAAK,iFAAiF,EAAE,CAAC;iBAC7J,CAAC;YACN,CAAC;YACD,OAAO;gBACH,OAAO,EAAE;oBACL,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,oBAAoB,OAAO,CAAC,SAAS,EAAE,EAAE;oBAC/D,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,gBAAgB,OAAO,CAAC,MAAM,EAAE,EAAE;oBACxD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,sBAAsB,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,WAAW,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE;iBAC/F;aACJ,CAAC;QACN,CAAC;KACY;CACpB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"get-actor-output.d.ts","sourceRoot":"","sources":["../../src/tools/get-actor-output.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,aAAa,CAAC;AAwB3D;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAyB1D;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,SA2D5B,CAAC"}
1
+ {"version":3,"file":"get-actor-output.d.ts","sourceRoot":"","sources":["../../src/tools/get-actor-output.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,aAAa,CAAC;AAwB3D;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAyB1D;AAED;;;GAGG;AACH,eAAO,MAAM,cAAc,EAAE,SAmF5B,CAAC"}
@@ -1,7 +1,7 @@
1
1
  import { z } from 'zod';
2
2
  import zodToJsonSchema from 'zod-to-json-schema';
3
3
  import { ApifyClient } from '../apify-client.js';
4
- import { HelperTools, TOOL_MAX_OUTPUT_CHARS } from '../const.js';
4
+ import { HelperTools, SKYFIRE_TOOL_INSTRUCTIONS, TOOL_MAX_OUTPUT_CHARS } from '../const.js';
5
5
  import { ajv } from '../utils/ajv.js';
6
6
  import { getValuesByDotKeys, parseCommaSeparatedList } from '../utils/generic.js';
7
7
  /**
@@ -64,11 +64,32 @@ You can also retrieve only specific fields from the output if needed. Use this t
64
64
 
65
65
  Note: This tool is automatically included if the Apify MCP Server is configured with any Actor tools (e.g. \`apify-slash-rag-web-browser\`) or tools that can interact with Actors (e.g. \`call-actor\`, \`add-actor\`).`,
66
66
  inputSchema: zodToJsonSchema(getActorOutputArgs),
67
- ajvValidate: ajv.compile(zodToJsonSchema(getActorOutputArgs)),
67
+ /**
68
+ * Allow additional properties for Skyfire mode to pass `skyfire-pay-id`.
69
+ */
70
+ ajvValidate: ajv.compile({ ...zodToJsonSchema(getActorOutputArgs), additionalProperties: true }),
68
71
  call: async (toolArgs) => {
69
- const { args, apifyToken } = toolArgs;
72
+ const { args, apifyToken, apifyMcpServer } = toolArgs;
73
+ /**
74
+ * In Skyfire mode, we check for the presence of `skyfire-pay-id`.
75
+ * If it is missing, we return instructions to the LLM on how to create it and pass it to the tool.
76
+ */
77
+ if (apifyMcpServer.options.skyfireMode
78
+ && args['skyfire-pay-id'] === undefined) {
79
+ return {
80
+ content: [{
81
+ type: 'text',
82
+ text: SKYFIRE_TOOL_INSTRUCTIONS,
83
+ }],
84
+ };
85
+ }
86
+ /**
87
+ * Create Apify token, for Skyfire mode use `skyfire-pay-id` and for normal mode use `apifyToken`.
88
+ */
89
+ const apifyClient = apifyMcpServer.options.skyfireMode && typeof args['skyfire-pay-id'] === 'string'
90
+ ? new ApifyClient({ skyfirePayId: args['skyfire-pay-id'] })
91
+ : new ApifyClient({ token: apifyToken });
70
92
  const parsed = getActorOutputArgs.parse(args);
71
- const client = new ApifyClient({ token: apifyToken });
72
93
  // Parse fields into array
73
94
  const fieldsArray = parseCommaSeparatedList(parsed.fields);
74
95
  // TODO: we can optimize the API level field filtering in future
@@ -77,7 +98,7 @@ Note: This tool is automatically included if the Apify MCP Server is configured
77
98
  * If a dot is present, filtering is done here and not at the API level.
78
99
  */
79
100
  const hasDot = fieldsArray.some((field) => field.includes('.'));
80
- const response = await client.dataset(parsed.datasetId).listItems({
101
+ const response = await apifyClient.dataset(parsed.datasetId).listItems({
81
102
  offset: parsed.offset,
82
103
  limit: parsed.limit,
83
104
  fields: fieldsArray.length > 0 && !hasDot ? fieldsArray : undefined,
@@ -1 +1 @@
1
- {"version":3,"file":"get-actor-output.js","sourceRoot":"","sources":["../../src/tools/get-actor-output.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get-actor-output.js","sourceRoot":"","sources":["../../src/tools/get-actor-output.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ import type { ToolEntry } from '../types.js';
2
+ export declare const getHtmlSkeleton: ToolEntry;
3
+ //# sourceMappingURL=get-html-skeleton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-html-skeleton.d.ts","sourceRoot":"","sources":["../../src/tools/get-html-skeleton.ts"],"names":[],"mappings":"AAMA,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,aAAa,CAAC;AAgC3D,eAAO,MAAM,eAAe,EAAE,SA8D7B,CAAC"}
@@ -0,0 +1,76 @@
1
+ import { z } from 'zod';
2
+ import zodToJsonSchema from 'zod-to-json-schema';
3
+ import { ApifyClient } from '../apify-client.js';
4
+ import { ACTOR_RAG_WEB_BROWSER, HelperTools, TOOL_MAX_OUTPUT_CHARS } from '../const.js';
5
+ import { getHtmlSkeletonCache } from '../state.js';
6
+ import { ajv } from '../utils/ajv.js';
7
+ import { isValidHttpUrl } from '../utils/generic.js';
8
+ import { stripHtml } from '../utils/html.js';
9
+ import { buildMCPResponse } from '../utils/mcp.js';
10
+ const getHtmlSkeletonArgs = z.object({
11
+ url: z.string()
12
+ .min(1)
13
+ .describe('URL of the webpage to retrieve HTML skeleton from.'),
14
+ enableJavascript: z.boolean()
15
+ .optional()
16
+ .default(false)
17
+ .describe('Whether to enable JavaScript rendering. Enabling this may increase the time taken to retrieve the HTML skeleton.'),
18
+ chunk: z.number()
19
+ .optional()
20
+ .default(1)
21
+ .describe('Chunk number to retrieve when getting the content. The content is split into chunks to prevent exceeding the maximum tool output length.'),
22
+ });
23
+ export const getHtmlSkeleton = {
24
+ type: 'internal',
25
+ tool: {
26
+ name: HelperTools.GET_HTML_SKELETON,
27
+ actorFullName: HelperTools.GET_HTML_SKELETON,
28
+ description: `Retrieves the HTML skeleton (clean structure) from a given URL by stripping unwanted elements like scripts, styles, and non-essential attributes. This tool keeps only the core HTML structure, links, images, and data attributes for analysis. Supports optional JavaScript rendering for dynamic content and provides chunked output to handle large HTML. This tool is useful for building web scrapers and data extraction tasks where a clean HTML structure is needed for writing concrete selectors or parsers.`,
29
+ inputSchema: zodToJsonSchema(getHtmlSkeletonArgs),
30
+ ajvValidate: ajv.compile(zodToJsonSchema(getHtmlSkeletonArgs)),
31
+ call: async (toolArgs) => {
32
+ const { args, apifyToken } = toolArgs;
33
+ const parsed = getHtmlSkeletonArgs.parse(args);
34
+ if (!isValidHttpUrl(parsed.url)) {
35
+ return buildMCPResponse([`The provided URL is not a valid HTTP or HTTPS URL: ${parsed.url}`]);
36
+ }
37
+ // Try to get from cache first
38
+ let strippedHtml = getHtmlSkeletonCache.get(parsed.url);
39
+ if (!strippedHtml) {
40
+ // Not in cache, call the Actor for scraping
41
+ const client = new ApifyClient({ token: apifyToken });
42
+ const run = await client.actor(ACTOR_RAG_WEB_BROWSER).call({
43
+ query: parsed.url,
44
+ outputFormats: [
45
+ 'html',
46
+ ],
47
+ scrapingTool: parsed.enableJavascript ? 'browser-playwright' : 'raw-http',
48
+ });
49
+ const datasetItems = await client.dataset(run.defaultDatasetId).listItems();
50
+ if (datasetItems.items.length === 0) {
51
+ return buildMCPResponse([`The scraping Actor (${ACTOR_RAG_WEB_BROWSER}) did not return any output for the URL: ${parsed.url}. Please check the Actor run for more details: ${run.id}`]);
52
+ }
53
+ const firstItem = datasetItems.items[0];
54
+ if (firstItem.crawl.httpStatusMessage.toLocaleLowerCase() !== 'ok') {
55
+ return buildMCPResponse([`The scraping Actor (${ACTOR_RAG_WEB_BROWSER}) returned an HTTP status ${firstItem.crawl.httpStatusCode} (${firstItem.crawl.httpStatusMessage}) for the URL: ${parsed.url}. Please check the Actor run for more details: ${run.id}`]);
56
+ }
57
+ if (!firstItem.html) {
58
+ return buildMCPResponse([`The scraping Actor (${ACTOR_RAG_WEB_BROWSER}) did not return any HTML content for the URL: ${parsed.url}. Please check the Actor run for more details: ${run.id}`]);
59
+ }
60
+ strippedHtml = stripHtml(firstItem.html);
61
+ getHtmlSkeletonCache.set(parsed.url, strippedHtml);
62
+ }
63
+ // Pagination logic
64
+ const totalLength = strippedHtml.length;
65
+ const chunkSize = TOOL_MAX_OUTPUT_CHARS;
66
+ const totalChunks = Math.ceil(totalLength / chunkSize);
67
+ const startIndex = (parsed.chunk - 1) * chunkSize;
68
+ const endIndex = Math.min(startIndex + chunkSize, totalLength);
69
+ const chunkContent = strippedHtml.slice(startIndex, endIndex);
70
+ const hasNextChunk = parsed.chunk < totalChunks;
71
+ const chunkInfo = `\n\n--- Chunk ${parsed.chunk} of ${totalChunks} ---\n${hasNextChunk ? `Next chunk: ${parsed.chunk + 1}` : 'End of content'}`;
72
+ return buildMCPResponse([chunkContent + chunkInfo]);
73
+ },
74
+ },
75
+ };
76
+ //# sourceMappingURL=get-html-skeleton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-html-skeleton.js","sourceRoot":"","sources":["../../src/tools/get-html-skeleton.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/tools/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAIxB,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,aAAa,CAAC;AAG3D,eAAO,MAAM,iBAAiB;;;;;;EAI5B,CAAC;AACH,eAAO,MAAM,OAAO,EAAE,SAsDrB,CAAC"}
1
+ {"version":3,"file":"helpers.d.ts","sourceRoot":"","sources":["../../src/tools/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAKxB,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,aAAa,CAAC;AAG3D,eAAO,MAAM,iBAAiB;;;;;;EAI5B,CAAC;AACH,eAAO,MAAM,OAAO,EAAE,SAuDrB,CAAC"}