@apify/actors-mcp-server 0.1.31-beta.1 → 0.1.31-beta.3
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/dist/const.d.ts +2 -0
- package/dist/const.d.ts.map +1 -1
- package/dist/const.js +2 -0
- package/dist/const.js.map +1 -1
- package/dist/mcp/actors.d.ts.map +1 -1
- package/dist/mcp/actors.js +3 -17
- package/dist/mcp/actors.js.map +1 -1
- package/dist/mcp/server.d.ts +44 -3
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +145 -5
- package/dist/mcp/server.js.map +1 -1
- package/dist/toolmap.d.ts +7 -0
- package/dist/toolmap.d.ts.map +1 -0
- package/dist/toolmap.js +17 -0
- package/dist/toolmap.js.map +1 -0
- package/dist/tools/actor.d.ts.map +1 -1
- package/dist/tools/actor.js +35 -5
- package/dist/tools/actor.js.map +1 -1
- package/dist/tools/helpers.js +3 -3
- package/dist/tools/helpers.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types.d.ts +4 -0
- package/dist/types.d.ts.map +1 -1
- package/package.json +2 -1
package/dist/const.d.ts
CHANGED
|
@@ -21,4 +21,6 @@ export declare const defaults: {
|
|
|
21
21
|
actorAddingTools: HelperTools[];
|
|
22
22
|
};
|
|
23
23
|
export declare const APIFY_USERNAME = "apify";
|
|
24
|
+
export declare const TOOL_CACHE_MAX_SIZE = 500;
|
|
25
|
+
export declare const TOOL_CACHE_TTL_SECS: number;
|
|
24
26
|
//# sourceMappingURL=const.d.ts.map
|
package/dist/const.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,uBAAuB,OAAQ,CAAC;AAC7C,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAGhD,eAAO,MAAM,+BAA+B,OAAQ,CAAC;AACrD,eAAO,MAAM,8BAA8B,QACQ,CAAC;AAEpD,eAAO,MAAM,6BAA6B,QACuB,CAAC;AAGlE,eAAO,MAAM,uBAAuB,OAAQ,CAAC;AAG7C,eAAO,MAAM,WAAW,qBAAqB,CAAC;AAC9C,eAAO,MAAM,cAAc,UAAU,CAAC;AAGtC,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AAErD,oBAAY,WAAW;IACnB,aAAa,kBAAkB;IAC/B,SAAS,cAAc;IACvB,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,SAAS,cAAc;CAC1B;AAED,eAAO,MAAM,QAAQ;;;;CAapB,CAAC;AAEF,eAAO,MAAM,cAAc,UAAU,CAAC"}
|
|
1
|
+
{"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,uBAAuB,OAAQ,CAAC;AAC7C,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAGhD,eAAO,MAAM,+BAA+B,OAAQ,CAAC;AACrD,eAAO,MAAM,8BAA8B,QACQ,CAAC;AAEpD,eAAO,MAAM,6BAA6B,QACuB,CAAC;AAGlE,eAAO,MAAM,uBAAuB,OAAQ,CAAC;AAG7C,eAAO,MAAM,WAAW,qBAAqB,CAAC;AAC9C,eAAO,MAAM,cAAc,UAAU,CAAC;AAGtC,eAAO,MAAM,iBAAiB,sBAAsB,CAAC;AAErD,oBAAY,WAAW;IACnB,aAAa,kBAAkB;IAC/B,SAAS,cAAc;IACvB,YAAY,iBAAiB;IAC7B,iBAAiB,sBAAsB;IACvC,SAAS,cAAc;CAC1B;AAED,eAAO,MAAM,QAAQ;;;;CAapB,CAAC;AAEF,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC,eAAO,MAAM,mBAAmB,MAAM,CAAC;AACvC,eAAO,MAAM,mBAAmB,QAAU,CAAC"}
|
package/dist/const.js
CHANGED
package/dist/const.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"const.js","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAK,CAAC;AAC7C,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AACzC,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,CAAC;AAEhD,qBAAqB;AACrB,MAAM,CAAC,MAAM,+BAA+B,GAAG,IAAK,CAAC;AACrD,MAAM,CAAC,MAAM,8BAA8B,GAAG,4DAA4D;MACpG,6CAA6C,CAAC;AAEpD,MAAM,CAAC,MAAM,6BAA6B,GAAG,8DAA8D;MACrG,2DAA2D,CAAC;AAElE,kBAAkB;AAClB,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAK,CAAC,CAAC,kGAAkG;AAEhJ,aAAa;AACb,MAAM,CAAC,MAAM,WAAW,GAAG,kBAAkB,CAAC;AAC9C,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAEtC,qBAAqB;AACrB,MAAM,CAAC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAErD,MAAM,CAAN,IAAY,WAMX;AAND,WAAY,WAAW;IACnB,8CAA+B,CAAA;IAC/B,sCAAuB,CAAA;IACvB,4CAA6B,CAAA;IAC7B,sDAAuC,CAAA;IACvC,sCAAuB,CAAA;AAC3B,CAAC,EANW,WAAW,KAAX,WAAW,QAMtB;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG;IACpB,MAAM,EAAE;QACJ,uBAAuB;KAC1B;IACD,WAAW,EAAE;QACT,WAAW,CAAC,aAAa;QACzB,WAAW,CAAC,iBAAiB;QAC7B,WAAW,CAAC,SAAS;KACxB;IACD,gBAAgB,EAAE;QACd,WAAW,CAAC,SAAS;QACrB,WAAW,CAAC,YAAY;KAC3B;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC"}
|
|
1
|
+
{"version":3,"file":"const.js","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":"AAAA,oBAAoB;AACpB,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAK,CAAC;AAC7C,MAAM,CAAC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AACzC,MAAM,CAAC,MAAM,4BAA4B,GAAG,GAAG,CAAC;AAEhD,qBAAqB;AACrB,MAAM,CAAC,MAAM,+BAA+B,GAAG,IAAK,CAAC;AACrD,MAAM,CAAC,MAAM,8BAA8B,GAAG,4DAA4D;MACpG,6CAA6C,CAAC;AAEpD,MAAM,CAAC,MAAM,6BAA6B,GAAG,8DAA8D;MACrG,2DAA2D,CAAC;AAElE,kBAAkB;AAClB,MAAM,CAAC,MAAM,uBAAuB,GAAG,IAAK,CAAC,CAAC,kGAAkG;AAEhJ,aAAa;AACb,MAAM,CAAC,MAAM,WAAW,GAAG,kBAAkB,CAAC;AAC9C,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAEtC,qBAAqB;AACrB,MAAM,CAAC,MAAM,iBAAiB,GAAG,mBAAmB,CAAC;AAErD,MAAM,CAAN,IAAY,WAMX;AAND,WAAY,WAAW;IACnB,8CAA+B,CAAA;IAC/B,sCAAuB,CAAA;IACvB,4CAA6B,CAAA;IAC7B,sDAAuC,CAAA;IACvC,sCAAuB,CAAA;AAC3B,CAAC,EANW,WAAW,KAAX,WAAW,QAMtB;AAED,MAAM,CAAC,MAAM,QAAQ,GAAG;IACpB,MAAM,EAAE;QACJ,uBAAuB;KAC1B;IACD,WAAW,EAAE;QACT,WAAW,CAAC,aAAa;QACzB,WAAW,CAAC,iBAAiB;QAC7B,WAAW,CAAC,SAAS;KACxB;IACD,gBAAgB,EAAE;QACd,WAAW,CAAC,SAAS;QACrB,WAAW,CAAC,YAAY;KAC3B;CACJ,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAEtC,MAAM,CAAC,MAAM,mBAAmB,GAAG,GAAG,CAAC;AACvC,MAAM,CAAC,MAAM,mBAAmB,GAAG,EAAE,GAAG,EAAE,CAAC"}
|
package/dist/mcp/actors.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actors.d.ts","sourceRoot":"","sources":["../../src/mcp/actors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAIpD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAG5F;AAED,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAQ7G;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOhG;AAED;;;;;EAKE;AACF,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CASzF;AAED;;;;;;;EAOE;AACF,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,SAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAG7H;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,
|
|
1
|
+
{"version":3,"file":"actors.d.ts","sourceRoot":"","sources":["../../src/mcp/actors.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,cAAc,CAAC;AAIpD,wBAAsB,gBAAgB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAG5F;AAED,wBAAsB,sBAAsB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,SAAS,CAAC,CAQ7G;AAED,wBAAsB,qBAAqB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAOhG;AAED;;;;;EAKE;AACF,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CASzF;AAED;;;;;;;EAOE;AACF,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,cAAc,SAAgB,GAAG,OAAO,CAAC,MAAM,CAAC,CAG7H;AAED,wBAAsB,kBAAkB,CAAC,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CActG"}
|
package/dist/mcp/actors.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ApifyClient
|
|
1
|
+
import { ApifyClient } from '../apify-client.js';
|
|
2
2
|
export async function isActorMCPServer(actorID, apifyToken) {
|
|
3
3
|
const mcpPath = await getActorsMCPServerPath(actorID, apifyToken);
|
|
4
4
|
return ((mcpPath === null || mcpPath === void 0 ? void 0 : mcpPath.length) || 0) > 0;
|
|
@@ -48,22 +48,8 @@ export async function getActorStandbyURL(actorID, apifyToken, standbyBaseUrl = '
|
|
|
48
48
|
export async function getActorDefinition(actorID, apifyToken) {
|
|
49
49
|
const apifyClient = new ApifyClient({ token: apifyToken });
|
|
50
50
|
const actor = apifyClient.actor(actorID);
|
|
51
|
-
const
|
|
52
|
-
|
|
53
|
-
throw new Error(`Actor ${actorID} not found`);
|
|
54
|
-
}
|
|
55
|
-
const actorObjID = info.id;
|
|
56
|
-
const res = await fetch(`${getApifyAPIBaseUrl()}/v2/acts/${actorObjID}/builds/default`, {
|
|
57
|
-
headers: {
|
|
58
|
-
// This is done so tests can pass with public Actors without token
|
|
59
|
-
...(apifyToken ? { Authorization: `Bearer ${apifyToken}` } : {}),
|
|
60
|
-
},
|
|
61
|
-
});
|
|
62
|
-
if (!res.ok) {
|
|
63
|
-
throw new Error(`Failed to fetch default build for actor ${actorID}: ${res.statusText}`);
|
|
64
|
-
}
|
|
65
|
-
const json = await res.json(); // eslint-disable-line @typescript-eslint/no-explicit-any
|
|
66
|
-
const buildInfo = json.data;
|
|
51
|
+
const defaultBuildClient = await actor.defaultBuild();
|
|
52
|
+
const buildInfo = await defaultBuildClient.get();
|
|
67
53
|
if (!buildInfo) {
|
|
68
54
|
throw new Error(`Default build for Actor ${actorID} not found`);
|
|
69
55
|
}
|
package/dist/mcp/actors.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actors.js","sourceRoot":"","sources":["../../src/mcp/actors.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"actors.js","sourceRoot":"","sources":["../../src/mcp/actors.ts"],"names":[],"mappings":"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"}
|
package/dist/mcp/server.d.ts
CHANGED
|
@@ -15,8 +15,41 @@ export declare class ActorsMcpServer {
|
|
|
15
15
|
readonly server: Server;
|
|
16
16
|
readonly tools: Map<string, ToolWrap>;
|
|
17
17
|
private readonly options;
|
|
18
|
+
private toolsChangedHandler;
|
|
18
19
|
constructor(options?: ActorsMcpServerOptions, setupSIGINTHandler?: boolean);
|
|
19
20
|
/**
|
|
21
|
+
* Returns a list of Actor IDs that are registered as MCP servers.
|
|
22
|
+
* @returns {string[]} - An array of Actor MCP server Actor IDs (e.g., 'apify/actors-mcp-server').
|
|
23
|
+
*/
|
|
24
|
+
getToolMCPServerActors(): string[];
|
|
25
|
+
/**
|
|
26
|
+
* Register handler to get notified when tools change.
|
|
27
|
+
* The handler receives an array of tool names that the server has after the change.
|
|
28
|
+
* This is primarily used to store the tools in shared state (e.g., Redis) for recovery
|
|
29
|
+
* when the server loses local state.
|
|
30
|
+
* @throws {Error} - If a handler is already registered.
|
|
31
|
+
* @param handler - The handler function to be called when tools change.
|
|
32
|
+
*/
|
|
33
|
+
registerToolsChangedHandler(handler: (toolNames: string[]) => void): void;
|
|
34
|
+
/**
|
|
35
|
+
* Unregister the handler for tools changed event.
|
|
36
|
+
* @throws {Error} - If no handler is currently registered.
|
|
37
|
+
*/
|
|
38
|
+
unregisterToolsChangedHandler(): void;
|
|
39
|
+
/**
|
|
40
|
+
* Loads missing tools from a provided list of tool names.
|
|
41
|
+
* Skips tools that are already loaded and loads only the missing ones.
|
|
42
|
+
* @param tools - Array of tool names to ensure are loaded
|
|
43
|
+
* @param apifyToken - Apify API token for authentication
|
|
44
|
+
*/
|
|
45
|
+
loadToolsFromToolsList(tools: string[], apifyToken: string): Promise<void>;
|
|
46
|
+
/**
|
|
47
|
+
* Returns the list of all currently loaded Actor tool IDs.
|
|
48
|
+
* @returns {string[]} - Array of loaded Actor tool IDs (e.g., 'apify/rag-web-browser')
|
|
49
|
+
*/
|
|
50
|
+
getLoadedActorToolsList(): string[];
|
|
51
|
+
private notifyToolsChangedHandler;
|
|
52
|
+
/**
|
|
20
53
|
* Resets the server to the default state.
|
|
21
54
|
* This method clears all tools and loads the default tools.
|
|
22
55
|
* Used primarily for testing purposes.
|
|
@@ -44,10 +77,18 @@ export declare class ActorsMcpServer {
|
|
|
44
77
|
loadToolsToAddActors(): void;
|
|
45
78
|
/**
|
|
46
79
|
* Upsert new tools.
|
|
47
|
-
* @param tools - Array of tool wrappers
|
|
48
|
-
* @
|
|
80
|
+
* @param tools - Array of tool wrappers to add or update
|
|
81
|
+
* @param shouldNotifyToolsChangedHandler - Whether to notify the tools changed handler
|
|
82
|
+
* @returns Array of added/updated tool wrappers
|
|
49
83
|
*/
|
|
50
|
-
updateTools(tools: ToolWrap[]): ToolWrap[];
|
|
84
|
+
updateTools(tools: ToolWrap[], shouldNotifyToolsChangedHandler?: boolean): ToolWrap[];
|
|
85
|
+
/**
|
|
86
|
+
* Delete tools by name.
|
|
87
|
+
* Notifies the tools changed handler if any tools were deleted.
|
|
88
|
+
* @param toolNames - Array of tool names to delete
|
|
89
|
+
* @returns Array of tool names that were successfully deleted
|
|
90
|
+
*/
|
|
91
|
+
deleteTools(toolNames: string[]): string[];
|
|
51
92
|
/**
|
|
52
93
|
* Returns an array of tool names.
|
|
53
94
|
* @returns {string[]} - An array of tool names.
|
package/dist/mcp/server.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAwB/E,OAAO,KAAK,EAAuC,QAAQ,EAAE,MAAM,aAAa,CAAC;AAKjF,KAAK,sBAAsB,GAAG;IAC1B,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,mBAAmB,CAAC,EAAE,OAAO,CAAC;CACjC,CAAC;AAIF;;GAEG;AACH,qBAAa,eAAe;IACxB,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC7C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAyB;IACjD,OAAO,CAAC,mBAAmB,CAAkC;gBAEjD,OAAO,GAAE,sBAA2B,EAAE,kBAAkB,UAAO;IAmC3E;;;MAGE;IACK,sBAAsB,IAAI,MAAM,EAAE;IAWzC;;;;;;;MAOE;IACK,2BAA2B,CAAC,OAAO,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,IAAI;IAOzE;;;MAGE;IACK,6BAA6B;IAOpC;;;;;MAKE;IACW,sBAAsB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,UAAU,EAAE,MAAM;IA8BvE;;;MAGE;IACK,uBAAuB,IAAI,MAAM,EAAE;IAoB1C,OAAO,CAAC,yBAAyB;IAUjC;;;;MAIE;IACW,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAenC;;OAEG;IACU,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAMxC;;OAEG;IACU,gBAAgB,CAAC,UAAU,EAAE,MAAM;IAShD;;;;;;OAMG;IACU,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM;IAQ7D;;OAEG;IACI,oBAAoB;IAI3B;;;;;OAKG;IACI,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE,EAAE,+BAA+B,UAAQ;IAS7E;;;;;MAKE;IACK,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE;IAmBjD;;;OAGG;IACI,YAAY,IAAI,MAAM,EAAE;IAI/B,OAAO,CAAC,kBAAkB;IAa1B,OAAO,CAAC,iBAAiB;IA2InB,OAAO,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG/B"}
|
package/dist/mcp/server.js
CHANGED
|
@@ -5,6 +5,7 @@ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
|
5
5
|
import { CallToolRequestSchema, CallToolResultSchema, ErrorCode, ListToolsRequestSchema, McpError } from '@modelcontextprotocol/sdk/types.js';
|
|
6
6
|
import log from '@apify/log';
|
|
7
7
|
import { ACTOR_OUTPUT_MAX_CHARS_PER_ITEM, ACTOR_OUTPUT_TRUNCATED_MESSAGE, defaults, SERVER_NAME, SERVER_VERSION, } from '../const.js';
|
|
8
|
+
import { internalToolsMap } from '../toolmap.js';
|
|
8
9
|
import { helpTool } from '../tools/helpers.js';
|
|
9
10
|
import { actorDefinitionTool, addTool, callActorGetDataset, getActorsAsTools, removeTool, searchTool, } from '../tools/index.js';
|
|
10
11
|
import { actorNameToToolName } from '../tools/utils.js';
|
|
@@ -35,6 +36,12 @@ export class ActorsMcpServer {
|
|
|
35
36
|
writable: true,
|
|
36
37
|
value: void 0
|
|
37
38
|
});
|
|
39
|
+
Object.defineProperty(this, "toolsChangedHandler", {
|
|
40
|
+
enumerable: true,
|
|
41
|
+
configurable: true,
|
|
42
|
+
writable: true,
|
|
43
|
+
value: void 0
|
|
44
|
+
});
|
|
38
45
|
this.options = {
|
|
39
46
|
enableAddingActors: (_a = options.enableAddingActors) !== null && _a !== void 0 ? _a : false,
|
|
40
47
|
enableDefaultActors: (_b = options.enableDefaultActors) !== null && _b !== void 0 ? _b : true, // Default to true for backward compatibility
|
|
@@ -63,12 +70,118 @@ export class ActorsMcpServer {
|
|
|
63
70
|
});
|
|
64
71
|
}
|
|
65
72
|
/**
|
|
73
|
+
* Returns a list of Actor IDs that are registered as MCP servers.
|
|
74
|
+
* @returns {string[]} - An array of Actor MCP server Actor IDs (e.g., 'apify/actors-mcp-server').
|
|
75
|
+
*/
|
|
76
|
+
getToolMCPServerActors() {
|
|
77
|
+
const mcpServerActors = new Set();
|
|
78
|
+
for (const tool of this.tools.values()) {
|
|
79
|
+
if (tool.type === 'actor-mcp') {
|
|
80
|
+
mcpServerActors.add(tool.tool.actorID);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
return Array.from(mcpServerActors);
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Register handler to get notified when tools change.
|
|
87
|
+
* The handler receives an array of tool names that the server has after the change.
|
|
88
|
+
* This is primarily used to store the tools in shared state (e.g., Redis) for recovery
|
|
89
|
+
* when the server loses local state.
|
|
90
|
+
* @throws {Error} - If a handler is already registered.
|
|
91
|
+
* @param handler - The handler function to be called when tools change.
|
|
92
|
+
*/
|
|
93
|
+
registerToolsChangedHandler(handler) {
|
|
94
|
+
if (this.toolsChangedHandler) {
|
|
95
|
+
throw new Error('Tools changed handler is already registered.');
|
|
96
|
+
}
|
|
97
|
+
this.toolsChangedHandler = handler;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Unregister the handler for tools changed event.
|
|
101
|
+
* @throws {Error} - If no handler is currently registered.
|
|
102
|
+
*/
|
|
103
|
+
unregisterToolsChangedHandler() {
|
|
104
|
+
if (!this.toolsChangedHandler) {
|
|
105
|
+
throw new Error('Tools changed handler is not registered.');
|
|
106
|
+
}
|
|
107
|
+
this.toolsChangedHandler = undefined;
|
|
108
|
+
}
|
|
109
|
+
/**
|
|
110
|
+
* Loads missing tools from a provided list of tool names.
|
|
111
|
+
* Skips tools that are already loaded and loads only the missing ones.
|
|
112
|
+
* @param tools - Array of tool names to ensure are loaded
|
|
113
|
+
* @param apifyToken - Apify API token for authentication
|
|
114
|
+
*/
|
|
115
|
+
async loadToolsFromToolsList(tools, apifyToken) {
|
|
116
|
+
const loadedTools = this.getLoadedActorToolsList();
|
|
117
|
+
const actorsToLoad = [];
|
|
118
|
+
for (const tool of tools) {
|
|
119
|
+
// Skip if the tool is already loaded
|
|
120
|
+
if (loadedTools.includes(tool)) {
|
|
121
|
+
continue;
|
|
122
|
+
}
|
|
123
|
+
// Load internal tool
|
|
124
|
+
if (internalToolsMap.has(tool)) {
|
|
125
|
+
const toolWrap = internalToolsMap.get(tool);
|
|
126
|
+
this.tools.set(tool, toolWrap);
|
|
127
|
+
log.info(`Added internal tool: ${tool}`);
|
|
128
|
+
// Handler Actor tool
|
|
129
|
+
}
|
|
130
|
+
else {
|
|
131
|
+
actorsToLoad.push(tool);
|
|
132
|
+
}
|
|
133
|
+
}
|
|
134
|
+
if (actorsToLoad.length > 0) {
|
|
135
|
+
const actorTools = await getActorsAsTools(actorsToLoad, apifyToken);
|
|
136
|
+
if (actorTools.length > 0) {
|
|
137
|
+
this.updateTools(actorTools);
|
|
138
|
+
}
|
|
139
|
+
log.info(`Loaded tools: ${actorTools.map((t) => t.tool.name).join(', ')}`);
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* Returns the list of all currently loaded Actor tool IDs.
|
|
144
|
+
* @returns {string[]} - Array of loaded Actor tool IDs (e.g., 'apify/rag-web-browser')
|
|
145
|
+
*/
|
|
146
|
+
getLoadedActorToolsList() {
|
|
147
|
+
// Get the list of tool names
|
|
148
|
+
const tools = [];
|
|
149
|
+
for (const tool of this.tools.values()) {
|
|
150
|
+
if (tool.type === 'actor') {
|
|
151
|
+
tools.push(tool.tool.actorFullName);
|
|
152
|
+
// Skip Actorized MCP servers since there may be multiple tools from the same Actor MCP server
|
|
153
|
+
// so we skip and then get unique list of Actor MCP servers separately
|
|
154
|
+
}
|
|
155
|
+
else if (tool.type === 'actor-mcp') {
|
|
156
|
+
continue;
|
|
157
|
+
}
|
|
158
|
+
else {
|
|
159
|
+
tools.push(tool.tool.name);
|
|
160
|
+
}
|
|
161
|
+
}
|
|
162
|
+
// Add unique list Actorized MCP servers original Actor IDs - for example: apify/actors-mcp-server
|
|
163
|
+
tools.push(...this.getToolMCPServerActors());
|
|
164
|
+
return tools;
|
|
165
|
+
}
|
|
166
|
+
notifyToolsChangedHandler() {
|
|
167
|
+
// If no handler is registered, do nothing
|
|
168
|
+
if (!this.toolsChangedHandler)
|
|
169
|
+
return;
|
|
170
|
+
// Get the list of tool names
|
|
171
|
+
const tools = this.getLoadedActorToolsList();
|
|
172
|
+
this.toolsChangedHandler(tools);
|
|
173
|
+
}
|
|
174
|
+
/**
|
|
66
175
|
* Resets the server to the default state.
|
|
67
176
|
* This method clears all tools and loads the default tools.
|
|
68
177
|
* Used primarily for testing purposes.
|
|
69
178
|
*/
|
|
70
179
|
async reset() {
|
|
71
180
|
this.tools.clear();
|
|
181
|
+
// Unregister the tools changed handler
|
|
182
|
+
if (this.toolsChangedHandler) {
|
|
183
|
+
this.unregisterToolsChangedHandler();
|
|
184
|
+
}
|
|
72
185
|
this.updateTools([searchTool, actorDefinitionTool, helpTool]);
|
|
73
186
|
if (this.options.enableAddingActors) {
|
|
74
187
|
this.loadToolsToAddActors();
|
|
@@ -106,27 +219,54 @@ export class ActorsMcpServer {
|
|
|
106
219
|
const tools = await processParamsGetTools(url, apifyToken);
|
|
107
220
|
if (tools.length > 0) {
|
|
108
221
|
log.info('Loading tools from query parameters...');
|
|
109
|
-
this.updateTools(tools);
|
|
222
|
+
this.updateTools(tools, false);
|
|
110
223
|
}
|
|
111
224
|
}
|
|
112
225
|
/**
|
|
113
226
|
* Add Actors to server dynamically
|
|
114
227
|
*/
|
|
115
228
|
loadToolsToAddActors() {
|
|
116
|
-
this.updateTools([addTool, removeTool]);
|
|
229
|
+
this.updateTools([addTool, removeTool], false);
|
|
117
230
|
}
|
|
118
231
|
/**
|
|
119
232
|
* Upsert new tools.
|
|
120
|
-
* @param tools - Array of tool wrappers
|
|
121
|
-
* @
|
|
233
|
+
* @param tools - Array of tool wrappers to add or update
|
|
234
|
+
* @param shouldNotifyToolsChangedHandler - Whether to notify the tools changed handler
|
|
235
|
+
* @returns Array of added/updated tool wrappers
|
|
122
236
|
*/
|
|
123
|
-
updateTools(tools) {
|
|
237
|
+
updateTools(tools, shouldNotifyToolsChangedHandler = false) {
|
|
124
238
|
for (const wrap of tools) {
|
|
125
239
|
this.tools.set(wrap.tool.name, wrap);
|
|
126
240
|
log.info(`Added/updated tool: ${wrap.tool.name}`);
|
|
127
241
|
}
|
|
242
|
+
if (shouldNotifyToolsChangedHandler)
|
|
243
|
+
this.notifyToolsChangedHandler();
|
|
128
244
|
return tools;
|
|
129
245
|
}
|
|
246
|
+
/**
|
|
247
|
+
* Delete tools by name.
|
|
248
|
+
* Notifies the tools changed handler if any tools were deleted.
|
|
249
|
+
* @param toolNames - Array of tool names to delete
|
|
250
|
+
* @returns Array of tool names that were successfully deleted
|
|
251
|
+
*/
|
|
252
|
+
deleteTools(toolNames) {
|
|
253
|
+
const notFoundTools = [];
|
|
254
|
+
// Delete the tools
|
|
255
|
+
for (const toolName of toolNames) {
|
|
256
|
+
if (this.tools.has(toolName)) {
|
|
257
|
+
this.tools.delete(toolName);
|
|
258
|
+
log.info(`Deleted tool: ${toolName}`);
|
|
259
|
+
}
|
|
260
|
+
else {
|
|
261
|
+
notFoundTools.push(toolName);
|
|
262
|
+
}
|
|
263
|
+
}
|
|
264
|
+
if (toolNames.length > notFoundTools.length) {
|
|
265
|
+
this.notifyToolsChangedHandler();
|
|
266
|
+
}
|
|
267
|
+
// Return the list of tools that were removed
|
|
268
|
+
return toolNames.filter((toolName) => !notFoundTools.includes(toolName));
|
|
269
|
+
}
|
|
130
270
|
/**
|
|
131
271
|
* Returns an array of tool names.
|
|
132
272
|
* @returns {string[]} - An array of tool names.
|
package/dist/mcp/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AAEnE,OAAO,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,SAAS,EAAE,sBAAsB,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AAG9I,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,EACH,+BAA+B,EAC/B,8BAA8B,EAC9B,QAAQ,EACR,WAAW,EACX,cAAc,GACjB,MAAM,aAAa,CAAC;AACrB,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EACH,mBAAmB,EACnB,OAAO,EACP,mBAAmB,EACnB,gBAAgB,EAChB,UAAU,EACV,UAAU,GACb,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAExD,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAC9C,OAAO,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAC;AAC7D,OAAO,EAAE,qBAAqB,EAAE,MAAM,YAAY,CAAC;AAOnD;;GAEG;AACH,MAAM,OAAO,eAAe;IAKxB,YAAY,UAAkC,EAAE,EAAE,kBAAkB,GAAG,IAAI;;QAJ3D;;;;;WAAe;QACf;;;;;WAA6B;QAC5B;;;;;WAAgC;QAG7C,IAAI,CAAC,OAAO,GAAG;YACX,kBAAkB,EAAE,MAAA,OAAO,CAAC,kBAAkB,mCAAI,KAAK;YACvD,mBAAmB,EAAE,MAAA,OAAO,CAAC,mBAAmB,mCAAI,IAAI,EAAE,6CAA6C;SAC1G,CAAC;QACF,IAAI,CAAC,MAAM,GAAG,IAAI,MAAM,CACpB;YACI,IAAI,EAAE,WAAW;YACjB,OAAO,EAAE,cAAc;SAC1B,EACD;YACI,YAAY,EAAE;gBACV,KAAK,EAAE,EAAE,WAAW,EAAE,IAAI,EAAE;gBAC5B,OAAO,EAAE,EAAE;aACd;SACJ,CACJ,CAAC;QACF,IAAI,CAAC,KAAK,GAAG,IAAI,GAAG,EAAE,CAAC;QACvB,IAAI,CAAC,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;QAC5C,IAAI,CAAC,iBAAiB,EAAE,CAAC;QAEzB,oBAAoB;QACpB,IAAI,CAAC,WAAW,CAAC,CAAC,UAAU,EAAE,mBAAmB,EAAE,QAAQ,CAAC,CAAC,CAAC;QAE9D,uCAAuC;QACvC,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAClC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAChC,CAAC;QAED,sDAAsD;QACtD,IAAI,CAAC,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;YAC9B,GAAG,CAAC,KAAK,CAAC,8BAA8B,EAAE,KAAK,CAAC,CAAC;QACrD,CAAC,CAAC,CAAC;IACP,CAAC;IAED;;;;MAIE;IACK,KAAK,CAAC,KAAK;QACd,IAAI,CAAC,KAAK,CAAC,KAAK,EAAE,CAAC;QACnB,IAAI,CAAC,WAAW,CAAC,CAAC,UAAU,EAAE,mBAAmB,EAAE,QAAQ,CAAC,CAAC,CAAC;QAC9D,IAAI,IAAI,CAAC,OAAO,CAAC,kBAAkB,EAAE,CAAC;YAClC,IAAI,CAAC,oBAAoB,EAAE,CAAC;QAChC,CAAC;QAED,sDAAsD;QACtD,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;IAC5B,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,UAAU;QACnB,IAAI,IAAI,CAAC,OAAO,CAAC,mBAAmB,EAAE,CAAC;YACnC,MAAM,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,GAAG,CAAC,WAAqB,CAAC,CAAC;QACnE,CAAC;IACL,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,gBAAgB,CAAC,UAAkB;QAC5C,MAAM,mBAAmB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACzG,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,mBAAmB,EAAE,UAAU,CAAC,CAAC;QACtE,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnB,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;YACrC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACL,CAAC;IAED;;;;;;OAMG;IACI,KAAK,CAAC,gBAAgB,CAAC,GAAW,EAAE,UAAkB;QACzD,MAAM,KAAK,GAAG,MAAM,qBAAqB,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAC3D,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnB,GAAG,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;YACnD,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAC5B,CAAC;IACL,CAAC;IAED;;OAEG;IACI,oBAAoB;QACvB,IAAI,CAAC,WAAW,CAAC,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAC;IAC5C,CAAC;IAED;;;;OAIG;IACI,WAAW,CAAC,KAAiB;QAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACvB,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;YACrC,GAAG,CAAC,IAAI,CAAC,uBAAuB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;QACD,OAAO,KAAK,CAAC;IACjB,CAAC;IAED;;;OAGG;IACI,YAAY;QACf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAEO,kBAAkB,CAAC,kBAAkB,GAAG,IAAI;QAChD,IAAI,CAAC,MAAM,CAAC,OAAO,GAAG,CAAC,KAAK,EAAE,EAAE;YAC5B,OAAO,CAAC,KAAK,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC,CAAC,iCAAiC;QAC1E,CAAC,CAAC;QACF,mEAAmE;QACnE,IAAI,kBAAkB,EAAE,CAAC;YACrB,OAAO,CAAC,EAAE,CAAC,QAAQ,EAAE,KAAK,IAAI,EAAE;gBAC5B,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC1B,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;YACpB,CAAC,CAAC,CAAC;QACP,CAAC;IACL,CAAC;IAEO,iBAAiB;QACrB;;;;WAIG;QACH,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,sBAAsB,EAAE,KAAK,IAAI,EAAE;YAC7D,MAAM,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;YACzE,OAAO,EAAE,KAAK,EAAE,CAAC;QACrB,CAAC,CAAC,CAAC;QAEH;;;;WAIG;QACH,IAAI,CAAC,MAAM,CAAC,iBAAiB,CAAC,qBAAqB,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE;YACnE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC,MAAM,CAAC;YACjD,MAAM,UAAU,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,CAAW,CAAC;YAEpF,qDAAqD;YACrD,OAAO,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC;YAEjC,iBAAiB;YACjB,IAAI,CAAC,UAAU,EAAE,CAAC;gBACd,MAAM,GAAG,GAAG,4GAA4G,CAAC;gBACzH,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACf,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;gBACpE,MAAM,IAAI,QAAQ,CACd,SAAS,CAAC,aAAa,EACvB,GAAG,CACN,CAAC;YACN,CAAC;YAED,mFAAmF;YAEnF,uCAAuC;YACvC,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;iBACvC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,OAAO,IAAK,CAAC,CAAC,IAAkB,CAAC,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC;YAC/G,IAAI,CAAC,IAAI,EAAE,CAAC;gBACR,MAAM,GAAG,GAAG,QAAQ,IAAI,gCAAgC,IAAI,CAAC,YAAY,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBACzF,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACf,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;gBACpE,MAAM,IAAI,QAAQ,CACd,SAAS,CAAC,aAAa,EACvB,GAAG,CACN,CAAC;YACN,CAAC;YACD,IAAI,CAAC,IAAI,EAAE,CAAC;gBACR,MAAM,GAAG,GAAG,8BAA8B,IAAI,EAAE,CAAC;gBACjD,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACf,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;gBACpE,MAAM,IAAI,QAAQ,CACd,SAAS,CAAC,aAAa,EACvB,GAAG,CACN,CAAC;YACN,CAAC;YACD,GAAG,CAAC,IAAI,CAAC,gCAAgC,IAAI,CAAC,IAAI,CAAC,IAAI,oBAAoB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;YACnG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC/B,MAAM,GAAG,GAAG,8BAA8B,IAAI,CAAC,IAAI,CAAC,IAAI,WAAW,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,WAAW,IAAI,CAAC,SAAS,CAAC,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC;gBAClJ,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;gBACf,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,CAAC,CAAC;gBACpE,MAAM,IAAI,QAAQ,CACd,SAAS,CAAC,aAAa,EACvB,GAAG,CACN,CAAC;YACN,CAAC;YAED,IAAI,CAAC;gBACD,uBAAuB;gBACvB,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;oBAC3B,MAAM,YAAY,GAAG,IAAI,CAAC,IAAkB,CAAC;oBAC7C,MAAM,GAAG,GAAG,MAAM,YAAY,CAAC,IAAI,CAAC;wBAChC,IAAI;wBACJ,cAAc,EAAE,IAAI;wBACpB,SAAS,EAAE,IAAI,CAAC,MAAM;wBACtB,UAAU;qBACb,CAAW,CAAC;oBAEb,OAAO,EAAE,GAAG,GAAG,EAAE,CAAC;gBACtB,CAAC;gBAED,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE,CAAC;oBAC5B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAoB,CAAC;oBAC7C,IAAI,MAA0B,CAAC;oBAC/B,IAAI,CAAC;wBACD,MAAM,GAAG,MAAM,eAAe,CAAC,UAAU,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;wBACjE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,QAAQ,CAAC;4BAC9B,IAAI,EAAE,UAAU,CAAC,cAAc;4BAC/B,SAAS,EAAE,IAAI;yBAClB,EAAE,oBAAoB,EAAE;4BACrB,OAAO,EAAE,+BAA+B;yBAC3C,CAAC,CAAC;wBAEH,OAAO,EAAE,GAAG,GAAG,EAAE,CAAC;oBACtB,CAAC;4BAAS,CAAC;wBACP,IAAI,MAAM;4BAAE,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC;oBACrC,CAAC;gBACL,CAAC;gBAED,oBAAoB;gBACpB,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;oBACxB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAiB,CAAC;oBAEzC,MAAM,WAAW,GAAqB;wBAClC,MAAM,EAAE,SAAS,CAAC,YAAY;qBACjC,CAAC;oBAEF,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,SAAS,CAAC,aAAa,EAAE,IAAI,EAAE,UAAoB,EAAE,WAAW,CAAC,CAAC;oBAE1G,MAAM,OAAO,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;wBAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,+BAA+B,CAAC,CAAC;wBAC5E,OAAO,IAAI,CAAC,MAAM,KAAK,+BAA+B;4BAClD,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,IAAI,QAAQ,8BAA8B,EAAE,EAAE;4BACzE,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC;oBACjC,CAAC,CAAC,CAAC;oBACH,OAAO,EAAE,OAAO,EAAE,CAAC;gBACvB,CAAC;YACL,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACb,GAAG,CAAC,KAAK,CAAC,sBAAsB,IAAI,KAAK,KAAK,EAAE,CAAC,CAAC;gBAClD,MAAM,IAAI,QAAQ,CACd,SAAS,CAAC,aAAa,EACvB,2CAA2C,CAC9C,CAAC;YACN,CAAC;YAED,MAAM,GAAG,GAAG,iBAAiB,IAAI,EAAE,CAAC;YACpC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YACf,MAAM,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC;gBACjC,KAAK,EAAE,OAAO;gBACd,IAAI,EAAE,GAAG;aACZ,CAAC,CAAC;YACH,MAAM,IAAI,QAAQ,CACd,SAAS,CAAC,aAAa,EACvB,GAAG,CACN,CAAC;QACN,CAAC,CAAC,CAAC;IACP,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,SAAoB;QAC9B,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACzC,CAAC;IAED,KAAK,CAAC,KAAK;QACP,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC9B,CAAC;CACJ"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/mcp/server.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { ToolWrap } from './types.js';
|
|
2
|
+
/**
|
|
3
|
+
* Map of internal tools indexed by their name.
|
|
4
|
+
* Created to prevent circular import dependencies between modules.
|
|
5
|
+
*/
|
|
6
|
+
export declare const internalToolsMap: Map<string, ToolWrap>;
|
|
7
|
+
//# sourceMappingURL=toolmap.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolmap.d.ts","sourceRoot":"","sources":["../src/toolmap.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,gBAAgB,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAMjD,CAAC"}
|
package/dist/toolmap.js
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
// This module was created to prevent circular import dependency issues
|
|
2
|
+
import { HelperTools } from './const.js';
|
|
3
|
+
import { helpTool } from './tools/helpers.js';
|
|
4
|
+
import { actorDefinitionTool, addTool, removeTool } from './tools/index.js';
|
|
5
|
+
import { searchActorTool } from './tools/store_collection.js';
|
|
6
|
+
/**
|
|
7
|
+
* Map of internal tools indexed by their name.
|
|
8
|
+
* Created to prevent circular import dependencies between modules.
|
|
9
|
+
*/
|
|
10
|
+
export const internalToolsMap = new Map([
|
|
11
|
+
[HelperTools.SEARCH_ACTORS.toString(), searchActorTool],
|
|
12
|
+
[HelperTools.ADD_ACTOR.toString(), addTool],
|
|
13
|
+
[HelperTools.REMOVE_ACTOR.toString(), removeTool],
|
|
14
|
+
[HelperTools.GET_ACTOR_DETAILS.toString(), actorDefinitionTool],
|
|
15
|
+
[HelperTools.HELP_TOOL.toString(), helpTool],
|
|
16
|
+
]);
|
|
17
|
+
//# sourceMappingURL=toolmap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"toolmap.js","sourceRoot":"","sources":["../src/toolmap.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,OAAO,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AACzC,OAAO,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC5E,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAG9D;;;GAGG;AACH,MAAM,CAAC,MAAM,gBAAgB,GAA0B,IAAI,GAAG,CAAC;IAC3D,CAAC,WAAW,CAAC,aAAa,CAAC,QAAQ,EAAE,EAAE,eAAe,CAAC;IACvD,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,OAAO,CAAC;IAC3C,CAAC,WAAW,CAAC,YAAY,CAAC,QAAQ,EAAE,EAAE,UAAU,CAAC;IACjD,CAAC,WAAW,CAAC,iBAAiB,CAAC,QAAQ,EAAE,EAAE,mBAAmB,CAAC;IAC/D,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC;CAC/C,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../../src/tools/actor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../../src/tools/actor.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAUrD,OAAO,KAAK,EAAkB,QAAQ,EAAE,MAAM,aAAa,CAAC;AAgB5D;;;;;;;;;;;;;GAaG;AACH,wBAAsB,mBAAmB,CACrC,SAAS,EAAE,MAAM,EACjB,KAAK,EAAE,OAAO,EACd,UAAU,EAAE,MAAM,EAClB,WAAW,GAAE,gBAAgB,GAAG,SAAqB,GACtD,OAAO,CAAC,MAAM,EAAE,CAAC,CAiBnB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAsB,sBAAsB,CACxC,MAAM,EAAE,MAAM,EAAE,EAChB,UAAU,EAAE,MAAM,GACnB,OAAO,CAAC,QAAQ,EAAE,CAAC,CA8DrB;AAwBD,wBAAsB,gBAAgB,CAClC,MAAM,EAAE,MAAM,EAAE,EAChB,UAAU,EAAE,MAAM,GACnB,OAAO,CAAC,QAAQ,EAAE,CAAC,CAuBrB"}
|
package/dist/tools/actor.js
CHANGED
|
@@ -1,12 +1,17 @@
|
|
|
1
1
|
import { Ajv } from 'ajv';
|
|
2
|
+
import { LruCache } from '@apify/datastructures';
|
|
2
3
|
import log from '@apify/log';
|
|
3
4
|
import { ApifyClient } from '../apify-client.js';
|
|
4
|
-
import { ACTOR_ADDITIONAL_INSTRUCTIONS, ACTOR_MAX_MEMORY_MBYTES } from '../const.js';
|
|
5
|
+
import { ACTOR_ADDITIONAL_INSTRUCTIONS, ACTOR_MAX_MEMORY_MBYTES, TOOL_CACHE_MAX_SIZE, TOOL_CACHE_TTL_SECS } from '../const.js';
|
|
5
6
|
import { getActorsMCPServerURL, isActorMCPServer } from '../mcp/actors.js';
|
|
6
7
|
import { createMCPClient } from '../mcp/client.js';
|
|
7
8
|
import { getMCPServerTools } from '../mcp/proxy.js';
|
|
8
9
|
import { getActorDefinition } from './build.js';
|
|
9
10
|
import { actorNameToToolName, addEnumsToDescriptionsWithExamples, buildNestedProperties, filterSchemaProperties, markInputPropertiesAsRequired, shortenProperties, } from './utils.js';
|
|
11
|
+
// Cache for normal Actor tools
|
|
12
|
+
const normalActorToolsCache = new LruCache({
|
|
13
|
+
maxLength: TOOL_CACHE_MAX_SIZE,
|
|
14
|
+
});
|
|
10
15
|
/**
|
|
11
16
|
* Calls an Apify actor and retrieves the dataset items.
|
|
12
17
|
*
|
|
@@ -60,13 +65,33 @@ export async function callActorGetDataset(actorName, input, apifyToken, callOpti
|
|
|
60
65
|
*/
|
|
61
66
|
export async function getNormalActorsAsTools(actors, apifyToken) {
|
|
62
67
|
var _a;
|
|
68
|
+
const tools = [];
|
|
69
|
+
const actorsToLoad = [];
|
|
70
|
+
for (const actorID of actors) {
|
|
71
|
+
const cacheEntry = normalActorToolsCache.get(actorID);
|
|
72
|
+
if (cacheEntry && cacheEntry.expiresAt > Date.now()) {
|
|
73
|
+
tools.push(cacheEntry.tool);
|
|
74
|
+
}
|
|
75
|
+
else {
|
|
76
|
+
actorsToLoad.push(actorID);
|
|
77
|
+
}
|
|
78
|
+
}
|
|
79
|
+
if (actorsToLoad.length === 0) {
|
|
80
|
+
return tools;
|
|
81
|
+
}
|
|
63
82
|
const ajv = new Ajv({ coerceTypes: 'array', strict: false });
|
|
64
83
|
const getActorDefinitionWithToken = async (actorId) => {
|
|
65
84
|
return await getActorDefinition(actorId, apifyToken);
|
|
66
85
|
};
|
|
67
|
-
const results = await Promise.all(
|
|
68
|
-
|
|
69
|
-
for (
|
|
86
|
+
const results = await Promise.all(actorsToLoad.map(getActorDefinitionWithToken));
|
|
87
|
+
// Zip the results with their corresponding actorIDs
|
|
88
|
+
for (let i = 0; i < results.length; i++) {
|
|
89
|
+
const result = results[i];
|
|
90
|
+
// We need to get the orignal input from the user
|
|
91
|
+
// sonce the user can input real Actor ID like '3ox4R101TgZz67sLr' instead of
|
|
92
|
+
// 'username/actorName' even though we encourage that.
|
|
93
|
+
// And the getActorDefinition does not return the original input it received, just the actorFullName or actorID
|
|
94
|
+
const actorIDOrName = actorsToLoad[i];
|
|
70
95
|
if (result) {
|
|
71
96
|
if (result.input && 'properties' in result.input && result.input) {
|
|
72
97
|
result.input.properties = markInputPropertiesAsRequired(result.input);
|
|
@@ -77,7 +102,7 @@ export async function getNormalActorsAsTools(actors, apifyToken) {
|
|
|
77
102
|
}
|
|
78
103
|
try {
|
|
79
104
|
const memoryMbytes = ((_a = result.defaultRunOptions) === null || _a === void 0 ? void 0 : _a.memoryMbytes) || ACTOR_MAX_MEMORY_MBYTES;
|
|
80
|
-
|
|
105
|
+
const tool = {
|
|
81
106
|
type: 'actor',
|
|
82
107
|
tool: {
|
|
83
108
|
name: actorNameToToolName(result.actorFullName),
|
|
@@ -87,6 +112,11 @@ export async function getNormalActorsAsTools(actors, apifyToken) {
|
|
|
87
112
|
ajvValidate: ajv.compile(result.input || {}),
|
|
88
113
|
memoryMbytes: memoryMbytes > ACTOR_MAX_MEMORY_MBYTES ? ACTOR_MAX_MEMORY_MBYTES : memoryMbytes,
|
|
89
114
|
},
|
|
115
|
+
};
|
|
116
|
+
tools.push(tool);
|
|
117
|
+
normalActorToolsCache.add(actorIDOrName, {
|
|
118
|
+
tool,
|
|
119
|
+
expiresAt: Date.now() + TOOL_CACHE_TTL_SECS * 1000,
|
|
90
120
|
});
|
|
91
121
|
}
|
|
92
122
|
catch (validationError) {
|
package/dist/tools/actor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actor.js","sourceRoot":"","sources":["../../src/tools/actor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAG1B,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,6BAA6B,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"actor.js","sourceRoot":"","sources":["../../src/tools/actor.ts"],"names":[],"mappings":"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"}
|
package/dist/tools/helpers.js
CHANGED
|
@@ -75,7 +75,7 @@ export const addTool = {
|
|
|
75
75
|
const { apifyMcpServer, mcpServer, apifyToken, args } = toolArgs;
|
|
76
76
|
const parsed = AddToolArgsSchema.parse(args);
|
|
77
77
|
const tools = await getActorsAsTools([parsed.actorName], apifyToken);
|
|
78
|
-
const toolsAdded = apifyMcpServer.updateTools(tools);
|
|
78
|
+
const toolsAdded = apifyMcpServer.updateTools(tools, true);
|
|
79
79
|
await mcpServer.notification({ method: 'notifications/tools/list_changed' });
|
|
80
80
|
return {
|
|
81
81
|
content: [{
|
|
@@ -103,9 +103,9 @@ export const removeTool = {
|
|
|
103
103
|
call: async (toolArgs) => {
|
|
104
104
|
const { apifyMcpServer, mcpServer, args } = toolArgs;
|
|
105
105
|
const parsed = RemoveToolArgsSchema.parse(args);
|
|
106
|
-
apifyMcpServer.
|
|
106
|
+
const removedTools = apifyMcpServer.deleteTools([parsed.toolName]);
|
|
107
107
|
await mcpServer.notification({ method: 'notifications/tools/list_changed' });
|
|
108
|
-
return { content: [{ type: 'text', text: `
|
|
108
|
+
return { content: [{ type: 'text', text: `Tools removed: ${removedTools.join(', ')}` }] };
|
|
109
109
|
},
|
|
110
110
|
},
|
|
111
111
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/tools/helpers.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAC1B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,eAAe,MAAM,oBAAoB,CAAC;AAEjD,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAC9C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AAE7D,MAAM,cAAc,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAiDtB,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;SAChB,QAAQ,CAAC,mFAAmF;UACvF,mDAAmD,CAAC;CACjE,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,OAAO,GAAa;IAC7B,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE;QACF,IAAI,EAAE,WAAW,CAAC,SAAS;QAC3B,WAAW,EAAE,gFAAgF;cACvF,iEAAiE;cACjE,uEAAuE;cACvE,2FAA2F;QACjG,WAAW,EAAE,eAAe,CAAC,iBAAiB,CAAC;QAC/C,WAAW,EAAE,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,iBAAiB,CAAC,CAAC;QAC5D,kFAAkF;QAClF,IAAI,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE;YACrB,MAAM,EAAE,cAAc,EAAE,SAAS,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,QAAQ,CAAC;YACjE,MAAM,MAAM,GAAG,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YAC7C,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,EAAE,UAAU,CAAC,CAAC;YACrE,MAAM,UAAU,GAAG,cAAc,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/tools/helpers.ts"],"names":[],"mappings":"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"}
|