@apify/actors-mcp-server 0.4.5 → 0.4.9
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 +8 -0
- package/dist/actor/server.d.ts.map +1 -1
- package/dist/actor/server.js +7 -4
- package/dist/actor/server.js.map +1 -1
- package/dist/apify-client.d.ts +6 -1
- package/dist/apify-client.d.ts.map +1 -1
- package/dist/apify-client.js +18 -3
- package/dist/apify-client.js.map +1 -1
- package/dist/const.d.ts +16 -6
- package/dist/const.d.ts.map +1 -1
- package/dist/const.js +17 -6
- package/dist/const.js.map +1 -1
- package/dist/index-internals.d.ts +2 -1
- package/dist/index-internals.d.ts.map +1 -1
- package/dist/index-internals.js +2 -1
- package/dist/index-internals.js.map +1 -1
- package/dist/main.js +6 -4
- package/dist/main.js.map +1 -1
- package/dist/mcp/actors.d.ts +0 -1
- package/dist/mcp/actors.d.ts.map +1 -1
- package/dist/mcp/actors.js +2 -15
- package/dist/mcp/actors.js.map +1 -1
- package/dist/mcp/proxy.d.ts.map +1 -1
- package/dist/mcp/proxy.js +1 -2
- package/dist/mcp/proxy.js.map +1 -1
- package/dist/mcp/server.d.ts +14 -4
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +94 -22
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/utils.d.ts +2 -1
- package/dist/mcp/utils.d.ts.map +1 -1
- package/dist/mcp/utils.js +2 -2
- package/dist/mcp/utils.js.map +1 -1
- package/dist/stdio.js +6 -7
- package/dist/stdio.js.map +1 -1
- package/dist/tools/actor.d.ts +17 -11
- package/dist/tools/actor.d.ts.map +1 -1
- package/dist/tools/actor.js +126 -89
- package/dist/tools/actor.js.map +1 -1
- package/dist/tools/build.d.ts +2 -1
- package/dist/tools/build.d.ts.map +1 -1
- package/dist/tools/build.js +5 -6
- package/dist/tools/build.js.map +1 -1
- package/dist/tools/dataset.d.ts.map +1 -1
- package/dist/tools/dataset.js +20 -56
- package/dist/tools/dataset.js.map +1 -1
- package/dist/tools/dataset_collection.d.ts.map +1 -1
- package/dist/tools/dataset_collection.js +1 -2
- package/dist/tools/dataset_collection.js.map +1 -1
- package/dist/tools/fetch-actor-details.d.ts.map +1 -1
- package/dist/tools/fetch-actor-details.js +3 -1
- package/dist/tools/fetch-actor-details.js.map +1 -1
- package/dist/tools/get-actor-output.d.ts +13 -0
- package/dist/tools/get-actor-output.d.ts.map +1 -0
- package/dist/tools/get-actor-output.js +132 -0
- package/dist/tools/get-actor-output.js.map +1 -0
- package/dist/tools/helpers.d.ts +1 -11
- package/dist/tools/helpers.d.ts.map +1 -1
- package/dist/tools/helpers.js +4 -77
- package/dist/tools/helpers.js.map +1 -1
- package/dist/tools/index.d.ts.map +1 -1
- package/dist/tools/index.js +2 -0
- package/dist/tools/index.js.map +1 -1
- package/dist/tools/key_value_store.d.ts.map +1 -1
- package/dist/tools/key_value_store.js +1 -2
- package/dist/tools/key_value_store.js.map +1 -1
- package/dist/tools/key_value_store_collection.d.ts.map +1 -1
- package/dist/tools/key_value_store_collection.js +1 -2
- package/dist/tools/key_value_store_collection.js.map +1 -1
- package/dist/tools/run.d.ts.map +1 -1
- package/dist/tools/run.js +1 -2
- package/dist/tools/run.js.map +1 -1
- package/dist/tools/run_collection.d.ts.map +1 -1
- package/dist/tools/run_collection.js +1 -2
- package/dist/tools/run_collection.js.map +1 -1
- package/dist/tools/store_collection.d.ts.map +1 -1
- package/dist/tools/store_collection.js +1 -2
- package/dist/tools/store_collection.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types.d.ts +7 -0
- package/dist/types.d.ts.map +1 -1
- package/dist/utils/actor-details.d.ts +2 -1
- package/dist/utils/actor-details.d.ts.map +1 -1
- package/dist/utils/actor-details.js +3 -5
- package/dist/utils/actor-details.js.map +1 -1
- package/dist/utils/actor-response.d.ts +21 -0
- package/dist/utils/actor-response.d.ts.map +1 -0
- package/dist/utils/actor-response.js +53 -0
- package/dist/utils/actor-response.js.map +1 -0
- package/dist/utils/actor.d.ts +10 -1
- package/dist/utils/actor.d.ts.map +1 -1
- package/dist/utils/actor.js +39 -0
- package/dist/utils/actor.js.map +1 -1
- package/dist/utils/generic.d.ts +17 -1
- package/dist/utils/generic.d.ts.map +1 -1
- package/dist/utils/generic.js +21 -0
- package/dist/utils/generic.js.map +1 -1
- package/dist/utils/progress.d.ts +2 -1
- package/dist/utils/progress.d.ts.map +1 -1
- package/dist/utils/progress.js +2 -4
- package/dist/utils/progress.js.map +1 -1
- package/dist/utils/schema-generation.d.ts +40 -0
- package/dist/utils/schema-generation.d.ts.map +1 -0
- package/dist/utils/schema-generation.js +62 -0
- package/dist/utils/schema-generation.js.map +1 -0
- package/dist/utils/tools-loader.d.ts +2 -1
- package/dist/utils/tools-loader.d.ts.map +1 -1
- package/dist/utils/tools-loader.js +13 -2
- package/dist/utils/tools-loader.js.map +1 -1
- package/package.json +1 -1
package/dist/tools/actor.js
CHANGED
|
@@ -1,99 +1,104 @@
|
|
|
1
|
-
import { Ajv } from 'ajv';
|
|
2
1
|
import { z } from 'zod';
|
|
3
2
|
import zodToJsonSchema from 'zod-to-json-schema';
|
|
4
3
|
import log from '@apify/log';
|
|
5
4
|
import { ApifyClient } from '../apify-client.js';
|
|
6
|
-
import { ACTOR_ADDITIONAL_INSTRUCTIONS, ACTOR_MAX_MEMORY_MBYTES, HelperTools, } from '../const.js';
|
|
5
|
+
import { ACTOR_ADDITIONAL_INSTRUCTIONS, ACTOR_MAX_MEMORY_MBYTES, HelperTools, SKYFIRE_TOOL_INSTRUCTIONS, TOOL_MAX_OUTPUT_CHARS, } from '../const.js';
|
|
7
6
|
import { getActorMCPServerPath, getActorMCPServerURL } from '../mcp/actors.js';
|
|
8
7
|
import { connectMCPClient } from '../mcp/client.js';
|
|
9
8
|
import { getMCPServerTools } from '../mcp/proxy.js';
|
|
10
9
|
import { actorDefinitionPrunedCache } from '../state.js';
|
|
11
|
-
import { getActorDefinitionStorageFieldNames } from '../utils/actor.js';
|
|
10
|
+
import { ensureOutputWithinCharLimit, getActorDefinitionStorageFieldNames } from '../utils/actor.js';
|
|
12
11
|
import { fetchActorDetails } from '../utils/actor-details.js';
|
|
13
|
-
import {
|
|
12
|
+
import { buildActorResponseContent } from '../utils/actor-response.js';
|
|
13
|
+
import { ajv } from '../utils/ajv.js';
|
|
14
|
+
import { generateSchemaFromItems } from '../utils/schema-generation.js';
|
|
14
15
|
import { getActorDefinition } from './build.js';
|
|
15
16
|
import { actorNameToToolName, fixedAjvCompile, getToolSchemaID, transformActorInputSchemaProperties } from './utils.js';
|
|
16
|
-
const ajv = new Ajv({ coerceTypes: 'array', strict: false });
|
|
17
17
|
/**
|
|
18
|
-
* Calls an Apify
|
|
18
|
+
* Calls an Apify Actor and retrieves metadata about the dataset results.
|
|
19
19
|
*
|
|
20
|
+
* This function executes an Actor and returns summary information instead with a result items preview of the full dataset
|
|
21
|
+
* to prevent overwhelming responses. The actual data can be retrieved using the get-actor-output tool.
|
|
20
22
|
*
|
|
21
23
|
* It requires the `APIFY_TOKEN` environment variable to be set.
|
|
22
24
|
* If the `APIFY_IS_AT_HOME` the dataset items are pushed to the Apify dataset.
|
|
23
25
|
*
|
|
24
|
-
* @param {string} actorName - The name of the
|
|
25
|
-
* @param {ActorCallOptions} callOptions - The options to pass to the actor.
|
|
26
|
+
* @param {string} actorName - The name of the Actor to call.
|
|
26
27
|
* @param {unknown} input - The input to pass to the actor.
|
|
27
|
-
* @param {
|
|
28
|
+
* @param {ApifyClient} apifyClient - The Apify client to use for authentication.
|
|
29
|
+
* @param {ActorCallOptions} callOptions - The options to pass to the Actor.
|
|
28
30
|
* @param {ProgressTracker} progressTracker - Optional progress tracker for real-time updates.
|
|
29
31
|
* @param {AbortSignal} abortSignal - Optional abort signal to cancel the actor run.
|
|
30
32
|
* @returns {Promise<CallActorGetDatasetResult | null>} - A promise that resolves to an object containing the actor run and dataset items.
|
|
31
33
|
* @throws {Error} - Throws an error if the `APIFY_TOKEN` is not set
|
|
32
34
|
*/
|
|
33
|
-
export async function callActorGetDataset(actorName, input,
|
|
35
|
+
export async function callActorGetDataset(actorName, input, apifyClient, callOptions = undefined, progressTracker, abortSignal) {
|
|
34
36
|
var _a, _b;
|
|
35
37
|
const CLIENT_ABORT = Symbol('CLIENT_ABORT'); // Just internal symbol to identify client abort
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
if (progressTracker) {
|
|
43
|
-
progressTracker.startActorRunUpdates(actorRun.id, apifyToken, actorName);
|
|
44
|
-
}
|
|
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 client.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
|
-
client.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;
|
|
67
|
-
}
|
|
68
|
-
const completedRun = potentialAbortedRun;
|
|
69
|
-
// Process the completed run
|
|
70
|
-
const dataset = client.dataset(completedRun.defaultDatasetId);
|
|
71
|
-
const [items, defaultBuild] = await Promise.all([
|
|
72
|
-
dataset.listItems(),
|
|
73
|
-
(await actorClient.defaultBuild()).get(),
|
|
74
|
-
]);
|
|
75
|
-
// Get important properties from storage view definitions and if available return only those properties
|
|
76
|
-
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;
|
|
77
|
-
const importantProperties = getActorDefinitionStorageFieldNames(storageDefinition || {});
|
|
78
|
-
if (importantProperties.length > 0) {
|
|
79
|
-
items.items = items.items.map((item) => {
|
|
80
|
-
return getValuesByDotKeys(item, importantProperties);
|
|
81
|
-
});
|
|
82
|
-
}
|
|
83
|
-
log.debug('Actor finished', { actorName, itemCount: items.count });
|
|
84
|
-
return { runId: actorRun.id, datasetId: completedRun.defaultDatasetId, items };
|
|
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);
|
|
85
44
|
}
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
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;
|
|
89
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
|
+
};
|
|
90
95
|
}
|
|
91
96
|
/**
|
|
92
97
|
* This function is used to fetch normal non-MCP server Actors as a tool.
|
|
93
98
|
*
|
|
94
|
-
* Fetches
|
|
99
|
+
* Fetches Actor input schemas by Actor IDs or Actor full names and creates MCP tools.
|
|
95
100
|
*
|
|
96
|
-
* This function retrieves the input schemas for the specified
|
|
101
|
+
* This function retrieves the input schemas for the specified Actors and compiles them into MCP tools.
|
|
97
102
|
* It uses the AJV library to validate the input schemas.
|
|
98
103
|
*
|
|
99
104
|
* Tool name can't contain /, so it is replaced with _
|
|
@@ -139,7 +144,8 @@ Instructions: ${ACTOR_ADDITIONAL_INSTRUCTIONS}`,
|
|
|
139
144
|
properties: {},
|
|
140
145
|
required: [],
|
|
141
146
|
},
|
|
142
|
-
|
|
147
|
+
// Additional props true to allow skyfire-pay-id
|
|
148
|
+
ajvValidate: fixedAjvCompile(ajv, { ...actorDefinitionPruned.input, additionalProperties: true }),
|
|
143
149
|
memoryMbytes: memoryMbytes > ACTOR_MAX_MEMORY_MBYTES ? ACTOR_MAX_MEMORY_MBYTES : memoryMbytes,
|
|
144
150
|
},
|
|
145
151
|
};
|
|
@@ -153,6 +159,13 @@ Instructions: ${ACTOR_ADDITIONAL_INSTRUCTIONS}`,
|
|
|
153
159
|
return tools;
|
|
154
160
|
}
|
|
155
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
|
+
}
|
|
156
169
|
const actorsMCPServerTools = [];
|
|
157
170
|
for (const actorInfo of actorsInfo) {
|
|
158
171
|
const actorId = actorInfo.actorDefinitionPruned.id;
|
|
@@ -183,8 +196,8 @@ async function getMCPServersAsTools(actorsInfo, apifyToken) {
|
|
|
183
196
|
}
|
|
184
197
|
return actorsMCPServerTools;
|
|
185
198
|
}
|
|
186
|
-
export async function getActorsAsTools(actorIdsOrNames,
|
|
187
|
-
log.debug('Fetching
|
|
199
|
+
export async function getActorsAsTools(actorIdsOrNames, apifyClient) {
|
|
200
|
+
log.debug('Fetching Actors as tools', { actorNames: actorIdsOrNames });
|
|
188
201
|
const actorsInfo = await Promise.all(actorIdsOrNames.map(async (actorIdOrName) => {
|
|
189
202
|
const actorDefinitionPrunedCached = actorDefinitionPrunedCache.get(actorIdOrName);
|
|
190
203
|
if (actorDefinitionPrunedCached) {
|
|
@@ -193,7 +206,7 @@ export async function getActorsAsTools(actorIdsOrNames, apifyToken) {
|
|
|
193
206
|
webServerMcpPath: getActorMCPServerPath(actorDefinitionPrunedCached),
|
|
194
207
|
};
|
|
195
208
|
}
|
|
196
|
-
const actorDefinitionPruned = await getActorDefinition(actorIdOrName,
|
|
209
|
+
const actorDefinitionPruned = await getActorDefinition(actorIdOrName, apifyClient);
|
|
197
210
|
if (!actorDefinitionPruned) {
|
|
198
211
|
log.error('Actor not found or definition is not available', { actorName: actorIdOrName });
|
|
199
212
|
return null;
|
|
@@ -211,7 +224,7 @@ export async function getActorsAsTools(actorIdsOrNames, apifyToken) {
|
|
|
211
224
|
const normalActorsInfo = clonedActors.filter((actorInfo) => actorInfo && !actorInfo.webServerMcpPath);
|
|
212
225
|
const [normalTools, mcpServerTools] = await Promise.all([
|
|
213
226
|
getNormalActorsAsTools(normalActorsInfo),
|
|
214
|
-
getMCPServersAsTools(actorMCPServersInfo,
|
|
227
|
+
getMCPServersAsTools(actorMCPServersInfo, apifyClient.token),
|
|
215
228
|
]);
|
|
216
229
|
return [...normalTools, ...mcpServerTools];
|
|
217
230
|
}
|
|
@@ -263,25 +276,57 @@ Step 2: Call Actor (step="call")
|
|
|
263
276
|
|
|
264
277
|
The step parameter enforces this workflow - you cannot call an Actor without first getting its info.`,
|
|
265
278
|
inputSchema: zodToJsonSchema(callActorArgs),
|
|
266
|
-
ajvValidate: ajv.compile(
|
|
279
|
+
ajvValidate: ajv.compile({
|
|
280
|
+
...zodToJsonSchema(callActorArgs),
|
|
281
|
+
// Additional props true to allow skyfire-pay-id
|
|
282
|
+
additionalProperties: true,
|
|
283
|
+
}),
|
|
267
284
|
call: async (toolArgs) => {
|
|
268
|
-
const { args, apifyToken, progressTracker, extra } = toolArgs;
|
|
285
|
+
const { args, apifyToken, progressTracker, extra, apifyMcpServer } = toolArgs;
|
|
269
286
|
const { actor: actorName, step, input, callOptions } = callActorArgs.parse(args);
|
|
270
287
|
try {
|
|
271
288
|
if (step === 'info') {
|
|
272
|
-
|
|
273
|
-
|
|
289
|
+
const apifyClient = new ApifyClient({ token: apifyToken });
|
|
290
|
+
// Step 1: Return Actor card and schema directly
|
|
291
|
+
const details = await fetchActorDetails(apifyClient, actorName);
|
|
274
292
|
if (!details) {
|
|
275
293
|
return {
|
|
276
294
|
content: [{ type: 'text', text: `Actor information for '${actorName}' was not found. Please check the Actor ID or name and ensure the Actor exists.` }],
|
|
277
295
|
};
|
|
278
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) {
|
|
279
317
|
return {
|
|
280
|
-
content: [
|
|
281
|
-
|
|
282
|
-
|
|
318
|
+
content: [{
|
|
319
|
+
type: 'text',
|
|
320
|
+
text: SKYFIRE_TOOL_INSTRUCTIONS,
|
|
321
|
+
}],
|
|
283
322
|
};
|
|
284
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 });
|
|
285
330
|
// Step 2: Call the Actor
|
|
286
331
|
if (!input) {
|
|
287
332
|
return {
|
|
@@ -290,7 +335,7 @@ The step parameter enforces this workflow - you cannot call an Actor without fir
|
|
|
290
335
|
],
|
|
291
336
|
};
|
|
292
337
|
}
|
|
293
|
-
const [actor] = await getActorsAsTools([actorName],
|
|
338
|
+
const [actor] = await getActorsAsTools([actorName], apifyClient);
|
|
294
339
|
if (!actor) {
|
|
295
340
|
return {
|
|
296
341
|
content: [
|
|
@@ -304,26 +349,18 @@ The step parameter enforces this workflow - you cannot call an Actor without fir
|
|
|
304
349
|
return {
|
|
305
350
|
content: [
|
|
306
351
|
{ type: 'text', text: `Input validation failed for Actor '${actorName}': ${errors.map((e) => e.message).join(', ')}` },
|
|
307
|
-
{ type: '
|
|
352
|
+
{ type: 'text', text: `Input Schema:\n${JSON.stringify(actor.tool.inputSchema)}` },
|
|
308
353
|
],
|
|
309
354
|
};
|
|
310
355
|
}
|
|
311
356
|
}
|
|
312
|
-
const
|
|
313
|
-
if (!
|
|
357
|
+
const callResult = await callActorGetDataset(actorName, input, apifyClient, callOptions, progressTracker, extra.signal);
|
|
358
|
+
if (!callResult) {
|
|
314
359
|
// Receivers of cancellation notifications SHOULD NOT send a response for the cancelled request
|
|
315
360
|
// https://modelcontextprotocol.io/specification/2025-06-18/basic/utilities/cancellation#behavior-requirements
|
|
316
361
|
return {};
|
|
317
362
|
}
|
|
318
|
-
const
|
|
319
|
-
const content = [
|
|
320
|
-
{ type: 'text', text: `Actor finished with runId: ${runId}, datasetId ${datasetId}` },
|
|
321
|
-
];
|
|
322
|
-
const itemContents = items.items.map((item) => ({
|
|
323
|
-
type: 'text',
|
|
324
|
-
text: JSON.stringify(item),
|
|
325
|
-
}));
|
|
326
|
-
content.push(...itemContents);
|
|
363
|
+
const content = buildActorResponseContent(actorName, callResult);
|
|
327
364
|
return { content };
|
|
328
365
|
}
|
|
329
366
|
catch (error) {
|
package/dist/tools/actor.js.map
CHANGED
|
@@ -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":"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"}
|
package/dist/tools/build.d.ts
CHANGED
|
@@ -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,
|
|
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":"
|
|
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"}
|
package/dist/tools/build.js
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
import { Ajv } from 'ajv';
|
|
2
1
|
import { z } from 'zod';
|
|
3
2
|
import zodToJsonSchema from 'zod-to-json-schema';
|
|
4
3
|
import log from '@apify/log';
|
|
5
4
|
import { ApifyClient } from '../apify-client.js';
|
|
6
5
|
import { ACTOR_README_MAX_LENGTH, HelperTools } from '../const.js';
|
|
6
|
+
import { ajv } from '../utils/ajv.js';
|
|
7
7
|
import { filterSchemaProperties, shortenProperties } from './utils.js';
|
|
8
|
-
const ajv = new Ajv({ coerceTypes: 'array', strict: false });
|
|
9
8
|
/**
|
|
10
9
|
* Get Actor input schema by Actor name.
|
|
11
10
|
* First, fetch the Actor details to get the default build tag and buildId.
|
|
@@ -15,9 +14,8 @@ const ajv = new Ajv({ coerceTypes: 'array', strict: false });
|
|
|
15
14
|
* @param {string} apifyToken
|
|
16
15
|
* @returns {Promise<ActorDefinitionWithDesc | null>} - The actor definition with description or null if not found.
|
|
17
16
|
*/
|
|
18
|
-
export async function getActorDefinition(actorIdOrName,
|
|
19
|
-
const
|
|
20
|
-
const actorClient = client.actor(actorIdOrName);
|
|
17
|
+
export async function getActorDefinition(actorIdOrName, apifyClient, limit = ACTOR_README_MAX_LENGTH) {
|
|
18
|
+
const actorClient = apifyClient.actor(actorIdOrName);
|
|
21
19
|
try {
|
|
22
20
|
// Fetch actor details
|
|
23
21
|
const actor = await actorClient.get();
|
|
@@ -106,7 +104,8 @@ export const actorDefinitionTool = {
|
|
|
106
104
|
call: async (toolArgs) => {
|
|
107
105
|
const { args, apifyToken } = toolArgs;
|
|
108
106
|
const parsed = getActorDefinitionArgsSchema.parse(args);
|
|
109
|
-
const
|
|
107
|
+
const apifyClient = new ApifyClient({ token: apifyToken });
|
|
108
|
+
const v = await getActorDefinition(parsed.actorName, apifyClient, parsed.limit);
|
|
110
109
|
if (!v) {
|
|
111
110
|
return { content: [{ type: 'text', text: `Actor '${parsed.actorName}' not found.` }] };
|
|
112
111
|
}
|
package/dist/tools/build.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/tools/build.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../src/tools/build.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataset.d.ts","sourceRoot":"","sources":["../../src/tools/dataset.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dataset.d.ts","sourceRoot":"","sources":["../../src/tools/dataset.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,aAAa,CAAC;AAmC3D;;GAEG;AACH,eAAO,MAAM,UAAU,EAAE,SAuBxB,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,eAAe,EAAE,SA0C7B,CAAC;AAiBF;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,SAkD9B,CAAC"}
|
package/dist/tools/dataset.js
CHANGED
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { Ajv } from 'ajv';
|
|
2
|
-
import toJsonSchema from 'to-json-schema';
|
|
3
1
|
import { z } from 'zod';
|
|
4
2
|
import zodToJsonSchema from 'zod-to-json-schema';
|
|
5
3
|
import { ApifyClient } from '../apify-client.js';
|
|
6
4
|
import { HelperTools } from '../const.js';
|
|
7
|
-
|
|
5
|
+
import { ajv } from '../utils/ajv.js';
|
|
6
|
+
import { parseCommaSeparatedList } from '../utils/generic.js';
|
|
7
|
+
import { generateSchemaFromItems } from '../utils/schema-generation.js';
|
|
8
8
|
const getDatasetArgs = z.object({
|
|
9
9
|
datasetId: z.string()
|
|
10
10
|
.min(1)
|
|
@@ -81,14 +81,13 @@ export const getDatasetItems = {
|
|
|
81
81
|
inputSchema: zodToJsonSchema(getDatasetItemsArgs),
|
|
82
82
|
ajvValidate: ajv.compile(zodToJsonSchema(getDatasetItemsArgs)),
|
|
83
83
|
call: async (toolArgs) => {
|
|
84
|
-
var _a, _b, _c;
|
|
85
84
|
const { args, apifyToken } = toolArgs;
|
|
86
85
|
const parsed = getDatasetItemsArgs.parse(args);
|
|
87
86
|
const client = new ApifyClient({ token: apifyToken });
|
|
88
87
|
// Convert comma-separated strings to arrays
|
|
89
|
-
const fields = (
|
|
90
|
-
const omit = (
|
|
91
|
-
const flatten = (
|
|
88
|
+
const fields = parseCommaSeparatedList(parsed.fields);
|
|
89
|
+
const omit = parseCommaSeparatedList(parsed.omit);
|
|
90
|
+
const flatten = parseCommaSeparatedList(parsed.flatten);
|
|
92
91
|
const v = await client.dataset(parsed.datasetId).listItems({
|
|
93
92
|
clean: parsed.clean,
|
|
94
93
|
offset: parsed.offset,
|
|
@@ -105,29 +104,6 @@ export const getDatasetItems = {
|
|
|
105
104
|
},
|
|
106
105
|
},
|
|
107
106
|
};
|
|
108
|
-
/**
|
|
109
|
-
* Function to recursively remove empty arrays from an object
|
|
110
|
-
*/
|
|
111
|
-
function removeEmptyArrays(obj) {
|
|
112
|
-
if (Array.isArray(obj)) {
|
|
113
|
-
// If the item is an array, recursively call removeEmptyArrays on each element.
|
|
114
|
-
return obj.map((item) => removeEmptyArrays(item));
|
|
115
|
-
}
|
|
116
|
-
if (typeof obj !== 'object' || obj === null) {
|
|
117
|
-
// Return primitives and null values as is.
|
|
118
|
-
return obj;
|
|
119
|
-
}
|
|
120
|
-
// Use reduce to build a new object, excluding keys with empty arrays.
|
|
121
|
-
return Object.entries(obj).reduce((acc, [key, value]) => {
|
|
122
|
-
const processedValue = removeEmptyArrays(value);
|
|
123
|
-
// Exclude the key if the processed value is an empty array.
|
|
124
|
-
if (Array.isArray(processedValue) && processedValue.length === 0) {
|
|
125
|
-
return acc;
|
|
126
|
-
}
|
|
127
|
-
acc[key] = processedValue;
|
|
128
|
-
return acc;
|
|
129
|
-
}, {});
|
|
130
|
-
}
|
|
131
107
|
const getDatasetSchemaArgs = z.object({
|
|
132
108
|
datasetId: z.string()
|
|
133
109
|
.min(1)
|
|
@@ -141,9 +117,6 @@ const getDatasetSchemaArgs = z.object({
|
|
|
141
117
|
arrayMode: z.enum(['first', 'all']).optional()
|
|
142
118
|
.describe('Strategy for handling arrays. "first" uses first item as template, "all" merges all items. Default is "all".')
|
|
143
119
|
.default('all'),
|
|
144
|
-
additionalProperties: z.boolean().optional()
|
|
145
|
-
.describe('If true, allows additional properties in objects. Default is true.')
|
|
146
|
-
.default(true),
|
|
147
120
|
});
|
|
148
121
|
/**
|
|
149
122
|
* Generates a JSON schema from dataset items
|
|
@@ -174,30 +147,21 @@ export const getDatasetSchema = {
|
|
|
174
147
|
if (datasetItems.length === 0) {
|
|
175
148
|
return { content: [{ type: 'text', text: `Dataset '${parsed.datasetId}' is empty.` }] };
|
|
176
149
|
}
|
|
177
|
-
//
|
|
178
|
-
const
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
}
|
|
185
|
-
return {
|
|
186
|
-
content: [{
|
|
187
|
-
type: 'text',
|
|
188
|
-
text: JSON.stringify(schema),
|
|
189
|
-
}],
|
|
190
|
-
};
|
|
191
|
-
}
|
|
192
|
-
catch {
|
|
193
|
-
// Fallback: try with simpler approach
|
|
194
|
-
const fallbackSchema = toJsonSchema(cleanedDatasetItems, {
|
|
195
|
-
arrays: { mode: 'first' },
|
|
196
|
-
});
|
|
197
|
-
return {
|
|
198
|
-
content: [{ type: 'text', text: JSON.stringify(fallbackSchema) }],
|
|
199
|
-
};
|
|
150
|
+
// Generate schema using the shared utility
|
|
151
|
+
const schema = generateSchemaFromItems(datasetItems, {
|
|
152
|
+
limit: parsed.limit,
|
|
153
|
+
clean: parsed.clean,
|
|
154
|
+
arrayMode: parsed.arrayMode,
|
|
155
|
+
});
|
|
156
|
+
if (!schema) {
|
|
157
|
+
return { content: [{ type: 'text', text: `Failed to generate schema for dataset '${parsed.datasetId}'.` }] };
|
|
200
158
|
}
|
|
159
|
+
return {
|
|
160
|
+
content: [{
|
|
161
|
+
type: 'text',
|
|
162
|
+
text: JSON.stringify(schema),
|
|
163
|
+
}],
|
|
164
|
+
};
|
|
201
165
|
},
|
|
202
166
|
},
|
|
203
167
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataset.js","sourceRoot":"","sources":["../../src/tools/dataset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"dataset.js","sourceRoot":"","sources":["../../src/tools/dataset.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dataset_collection.d.ts","sourceRoot":"","sources":["../../src/tools/dataset_collection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"dataset_collection.d.ts","sourceRoot":"","sources":["../../src/tools/dataset_collection.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAgB,SAAS,EAAE,MAAM,aAAa,CAAC;AAmB3D;;GAEG;AACH,eAAO,MAAM,mBAAmB,EAAE,SA0BjC,CAAC"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import { Ajv } from 'ajv';
|
|
2
1
|
import { z } from 'zod';
|
|
3
2
|
import zodToJsonSchema from 'zod-to-json-schema';
|
|
4
3
|
import { ApifyClient } from '../apify-client.js';
|
|
5
4
|
import { HelperTools } from '../const.js';
|
|
6
|
-
|
|
5
|
+
import { ajv } from '../utils/ajv.js';
|
|
7
6
|
const getUserDatasetsListArgs = z.object({
|
|
8
7
|
offset: z.number()
|
|
9
8
|
.describe('Number of array elements that should be skipped at the start. The default value is 0.')
|