@apify/actors-mcp-server 0.1.22-beta.2 → 0.1.22-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/actor/input.d.ts.map +1 -0
- package/dist/actor/input.js.map +1 -0
- package/dist/actor/server.d.ts +1 -1
- package/dist/actor/server.d.ts.map +1 -1
- package/dist/actor/server.js +3 -4
- package/dist/actor/server.js.map +1 -1
- package/dist/actor/types.d.ts +7 -0
- package/dist/actor/types.d.ts.map +1 -1
- package/dist/actor/utils.d.ts +9 -1
- package/dist/actor/utils.d.ts.map +1 -1
- package/dist/actor/utils.js +24 -0
- package/dist/actor/utils.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/main.js +2 -2
- package/dist/main.js.map +1 -1
- package/dist/{mcp/mcp-server.d.ts → mcp-server.d.ts} +3 -5
- package/dist/mcp-server.d.ts.map +1 -0
- package/dist/{mcp/mcp-server.js → mcp-server.js} +10 -32
- package/dist/mcp-server.js.map +1 -0
- package/dist/stdio.js +2 -2
- package/dist/stdio.js.map +1 -1
- package/dist/tools/actor.d.ts +1 -4
- package/dist/tools/actor.d.ts.map +1 -1
- package/dist/tools/actor.js +1 -43
- package/dist/tools/actor.js.map +1 -1
- package/dist/tools/helpers.js +2 -2
- package/dist/tools/helpers.js.map +1 -1
- package/dist/tools/mcp-apify-client.d.ts.map +1 -1
- package/dist/tools/mcp-apify-client.js +1 -0
- package/dist/tools/mcp-apify-client.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/types.d.ts +2 -25
- package/dist/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/input.d.ts.map +0 -1
- package/dist/input.js.map +0 -1
- package/dist/mcp/actors.d.ts +0 -3
- package/dist/mcp/actors.d.ts.map +0 -1
- package/dist/mcp/actors.js +0 -12
- package/dist/mcp/actors.js.map +0 -1
- package/dist/mcp/client.d.ts +0 -6
- package/dist/mcp/client.d.ts.map +0 -1
- package/dist/mcp/client.js +0 -33
- package/dist/mcp/client.js.map +0 -1
- package/dist/mcp/const.d.ts +0 -3
- package/dist/mcp/const.d.ts.map +0 -1
- package/dist/mcp/const.js +0 -3
- package/dist/mcp/const.js.map +0 -1
- package/dist/mcp/mcp-server.d.ts.map +0 -1
- package/dist/mcp/mcp-server.js.map +0 -1
- package/dist/mcp/proxy.d.ts +0 -4
- package/dist/mcp/proxy.d.ts.map +0 -1
- package/dist/mcp/proxy.js +0 -29
- package/dist/mcp/proxy.js.map +0 -1
- package/dist/mcp/utils.d.ts +0 -26
- package/dist/mcp/utils.d.ts.map +0 -1
- package/dist/mcp/utils.js +0 -52
- package/dist/mcp/utils.js.map +0 -1
- /package/dist/{input.d.ts → actor/input.d.ts} +0 -0
- /package/dist/{input.js → actor/input.js} +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input.d.ts","sourceRoot":"","sources":["../../src/actor/input.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAExC;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,aAAa,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,KAAK,CAejE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"input.js","sourceRoot":"","sources":["../../src/actor/input.ts"],"names":[],"mappings":"AAKA;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,aAA6B;IACtD,MAAM,KAAK,GAAG,aAAsB,CAAC;IAErC,gDAAgD;IAChD,IAAI,KAAK,CAAC,MAAM,IAAI,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAAE,CAAC;QACnD,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,MAAc,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAa,CAAC;IAC9F,CAAC;IACD,2CAA2C;IAC3C,IAAI,KAAK,CAAC,sBAAsB,IAAI,OAAO,KAAK,CAAC,sBAAsB,KAAK,QAAQ,EAAE,CAAC;QACnF,KAAK,CAAC,sBAAsB,GAAG,KAAK,CAAC,sBAAsB,KAAK,MAAM,CAAC;IAC3E,CAAC;IACD,IAAI,CAAC,KAAK,CAAC,sBAAsB,EAAE,CAAC;QAChC,KAAK,CAAC,sBAAsB,GAAG,KAAK,CAAC;IACzC,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC"}
|
package/dist/actor/server.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import express from 'express';
|
|
2
|
-
import { type ActorsMcpServer } from '../mcp
|
|
2
|
+
import { type ActorsMcpServer } from '../mcp-server.js';
|
|
3
3
|
export declare function createExpressApp(host: string, mcpServer: ActorsMcpServer): express.Express;
|
|
4
4
|
//# sourceMappingURL=server.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/actor/server.ts"],"names":[],"mappings":"AAMA,OAAO,OAAO,MAAM,SAAS,CAAC;AAK9B,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/actor/server.ts"],"names":[],"mappings":"AAMA,OAAO,OAAO,MAAM,SAAS,CAAC;AAK9B,OAAO,EAAE,KAAK,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAGxD,wBAAgB,gBAAgB,CAC5B,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,eAAe,GAC3B,OAAO,CAAC,OAAO,CA0EjB"}
|
package/dist/actor/server.js
CHANGED
|
@@ -5,8 +5,7 @@ import { SSEServerTransport } from '@modelcontextprotocol/sdk/server/sse.js';
|
|
|
5
5
|
import express from 'express';
|
|
6
6
|
import log from '@apify/log';
|
|
7
7
|
import { HEADER_READINESS_PROBE, Routes } from './const.js';
|
|
8
|
-
import { getActorRunData } from './utils.js';
|
|
9
|
-
import { processParamsGetTools } from '../mcp/utils.js';
|
|
8
|
+
import { getActorRunData, processParamsGetTools } from './utils.js';
|
|
10
9
|
export function createExpressApp(host, mcpServer) {
|
|
11
10
|
const HELP_MESSAGE = `Connect to the server with GET request to ${host}/sse?token=YOUR-APIFY-TOKEN`
|
|
12
11
|
+ ` and then send POST requests to ${host}/message?token=YOUR-APIFY-TOKEN`;
|
|
@@ -21,7 +20,7 @@ export function createExpressApp(host, mcpServer) {
|
|
|
21
20
|
}
|
|
22
21
|
try {
|
|
23
22
|
log.info(`Received GET message at: ${Routes.ROOT}`);
|
|
24
|
-
const tools = await processParamsGetTools(req.url
|
|
23
|
+
const tools = await processParamsGetTools(req.url);
|
|
25
24
|
if (tools) {
|
|
26
25
|
mcpServer.updateTools(tools);
|
|
27
26
|
}
|
|
@@ -42,7 +41,7 @@ export function createExpressApp(host, mcpServer) {
|
|
|
42
41
|
.get(async (req, res) => {
|
|
43
42
|
try {
|
|
44
43
|
log.info(`Received GET message at: ${Routes.SSE}`);
|
|
45
|
-
const tools = await processParamsGetTools(req.url
|
|
44
|
+
const tools = await processParamsGetTools(req.url);
|
|
46
45
|
if (tools) {
|
|
47
46
|
mcpServer.updateTools(tools);
|
|
48
47
|
}
|
package/dist/actor/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/actor/server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,kBAAkB,EAAE,MAAM,yCAAyC,CAAC;AAE7E,OAAO,OAAO,MAAM,SAAS,CAAC;AAE9B,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,EAAE,sBAAsB,EAAE,MAAM,EAAE,MAAM,YAAY,CAAC;AAE5D,OAAO,EAAE,eAAe,EAAE,
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/actor/server.ts"],"names":[],"mappings":"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"}
|
package/dist/actor/types.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/actor/types.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/actor/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,KAAK,GAAG;IAChB,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAAC;IAC1B,sBAAsB,CAAC,EAAE,OAAO,CAAC;IACjC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,eAAe,CAAC,EAAE,OAAO,CAAC;CAC7B,CAAC;AAEF,MAAM,WAAW,YAAY;IACzB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,IAAI,CAAC;IACjB,MAAM,EAAE,SAAS,CAAC;IAClB,IAAI,EAAE;QACF,MAAM,CAAC,EAAE,MAAM,CAAC;KACnB,CAAC;IACF,OAAO,EAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,YAAY,CAAC,EAAE,MAAM,CAAC;KACzB,CAAC;IACF,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,sBAAsB,CAAC,EAAE,MAAM,CAAC;IAChC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB"}
|
package/dist/actor/utils.d.ts
CHANGED
|
@@ -1,3 +1,11 @@
|
|
|
1
|
-
import type { ActorRunData } from './types.js';
|
|
1
|
+
import type { ActorRunData, Input } from './types.js';
|
|
2
|
+
import type { ToolWrap } from '../types.js';
|
|
3
|
+
export declare function parseInputParamsFromUrl(url: string): Input;
|
|
4
|
+
/**
|
|
5
|
+
* Process input parameters and get tools
|
|
6
|
+
* If URL contains query parameter `actors`, return tools from Actors otherwise return null.
|
|
7
|
+
* @param url
|
|
8
|
+
*/
|
|
9
|
+
export declare function processParamsGetTools(url: string): Promise<ToolWrap[]>;
|
|
2
10
|
export declare function getActorRunData(): ActorRunData | null;
|
|
3
11
|
//# sourceMappingURL=utils.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/actor/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/actor/utils.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAEtD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAE5C,wBAAgB,uBAAuB,CAAC,GAAG,EAAE,MAAM,GAAG,KAAK,CAI1D;AAED;;;;GAIG;AACH,wBAAsB,qBAAqB,CAAC,GAAG,EAAE,MAAM,uBAUtD;AAED,wBAAgB,eAAe,IAAI,YAAY,GAAG,IAAI,CAuBrD"}
|
package/dist/actor/utils.js
CHANGED
|
@@ -1,4 +1,28 @@
|
|
|
1
|
+
import { parse } from 'node:querystring';
|
|
1
2
|
import { Actor } from 'apify';
|
|
3
|
+
import { processInput } from './input.js';
|
|
4
|
+
import { addTool, getActorsAsTools, removeTool } from '../tools/index.js';
|
|
5
|
+
export function parseInputParamsFromUrl(url) {
|
|
6
|
+
const query = url.split('?')[1] || '';
|
|
7
|
+
const params = parse(query);
|
|
8
|
+
return processInput(params);
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* Process input parameters and get tools
|
|
12
|
+
* If URL contains query parameter `actors`, return tools from Actors otherwise return null.
|
|
13
|
+
* @param url
|
|
14
|
+
*/
|
|
15
|
+
export async function processParamsGetTools(url) {
|
|
16
|
+
const input = parseInputParamsFromUrl(url);
|
|
17
|
+
let tools = [];
|
|
18
|
+
if (input.actors) {
|
|
19
|
+
tools = await getActorsAsTools(input.actors);
|
|
20
|
+
}
|
|
21
|
+
if (input.enableActorAutoLoading) {
|
|
22
|
+
tools.push(addTool, removeTool);
|
|
23
|
+
}
|
|
24
|
+
return tools;
|
|
25
|
+
}
|
|
2
26
|
export function getActorRunData() {
|
|
3
27
|
return Actor.isAtHome() ? {
|
|
4
28
|
id: process.env.ACTOR_RUN_ID,
|
package/dist/actor/utils.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/actor/utils.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/actor/utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,kBAAkB,CAAC;AAEzC,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAE9B,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,OAAO,EAAE,OAAO,EAAE,gBAAgB,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAG1E,MAAM,UAAU,uBAAuB,CAAC,GAAW;IAC/C,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACtC,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,CAAqB,CAAC;IAChD,OAAO,YAAY,CAAC,MAAM,CAAC,CAAC;AAChC,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,qBAAqB,CAAC,GAAW;IACnD,MAAM,KAAK,GAAG,uBAAuB,CAAC,GAAG,CAAC,CAAC;IAC3C,IAAI,KAAK,GAAe,EAAE,CAAC;IAC3B,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACf,KAAK,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,MAAkB,CAAC,CAAC;IAC7D,CAAC;IACD,IAAI,KAAK,CAAC,sBAAsB,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACpC,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC;AAED,MAAM,UAAU,eAAe;IAC3B,OAAO,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC;QACtB,EAAE,EAAE,OAAO,CAAC,GAAG,CAAC,YAAY;QAC5B,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,QAAQ;QAC3B,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,aAAa;QACjC,SAAS,EAAE,OAAO,CAAC,GAAG,CAAC,gBAAgB;QACvC,UAAU,EAAE,IAAI;QAChB,MAAM,EAAE,SAAS;QACjB,IAAI,EAAE;YACF,MAAM,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;SACxC;QACD,OAAO,EAAE;YACL,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB;YACrC,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,mBAAmB;SAChD;QACD,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,cAAc;QACnC,sBAAsB,EAAE,OAAO,CAAC,GAAG,CAAC,gCAAgC;QACpE,gBAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,wBAAwB;QACtD,qBAAqB,EAAE,OAAO,CAAC,GAAG,CAAC,8BAA8B;QACjE,WAAW,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB;QAC3C,YAAY,EAAE,OAAO,CAAC,GAAG,CAAC,oBAAoB;QAC9C,UAAU,EAAE,OAAO,CAAC,GAAG,CAAC,iBAAiB;KAC5C,CAAC,CAAC,CAAC,IAAI,CAAC;AACb,CAAC"}
|
package/dist/index.d.ts
CHANGED
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,eAAe,eAAe,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -2,6 +2,6 @@
|
|
|
2
2
|
This file provides essential functions and tools for MCP servers, serving as a library.
|
|
3
3
|
The ActorsMcpServer should be the only class exported from the package
|
|
4
4
|
*/
|
|
5
|
-
import { ActorsMcpServer } from './mcp
|
|
5
|
+
import { ActorsMcpServer } from './mcp-server.js';
|
|
6
6
|
export default ActorsMcpServer;
|
|
7
7
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;EAGE;AAEF,OAAO,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;EAGE;AAEF,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,eAAe,eAAe,CAAC"}
|
package/dist/main.js
CHANGED
|
@@ -4,9 +4,9 @@
|
|
|
4
4
|
*/
|
|
5
5
|
import { Actor } from 'apify';
|
|
6
6
|
import log from '@apify/log';
|
|
7
|
-
import { processInput } from './input.js';
|
|
7
|
+
import { processInput } from './actor/input.js';
|
|
8
8
|
import { createExpressApp } from './actor/server.js';
|
|
9
|
-
import { ActorsMcpServer } from './mcp
|
|
9
|
+
import { ActorsMcpServer } from './mcp-server.js';
|
|
10
10
|
import { actorDefinitionTool, addTool, removeTool, searchTool, callActorGetDataset } from './tools/index.js';
|
|
11
11
|
const STANDBY_MODE = Actor.getEnv().metaOrigin === 'STANDBY';
|
|
12
12
|
await Actor.init();
|
package/dist/main.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAG9B,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,EAAE,YAAY,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC;AAG9B,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAChD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mBAAmB,CAAC;AAErD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,mBAAmB,EAAE,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,mBAAmB,EAAE,MAAM,kBAAkB,CAAC;AAE7G,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,UAAU,KAAK,SAAS,CAAC;AAE7D,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;AAEnB,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,iBAA2B,CAAC,CAAC,CAAC,kBAAkB,CAAC;AAC7F,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;AAE9E,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;IAC3B,GAAG,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC;IAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAC;AAExC,MAAM,KAAK,GAAG,YAAY,CAAC,CAAC,MAAM,KAAK,CAAC,QAAQ,EAAkB,CAAC,IAAK,EAAY,CAAC,CAAC;AACtF,GAAG,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;AAEpD,IAAI,YAAY,EAAE,CAAC;IACf,MAAM,GAAG,GAAG,gBAAgB,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC9C,GAAG,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;IAClD,MAAM,KAAK,GAAG,CAAC,UAAU,EAAE,mBAAmB,CAAC,CAAC;IAChD,IAAI,KAAK,CAAC,sBAAsB,EAAE,CAAC;QAC/B,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACpC,CAAC;IACD,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAC7B,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,GAAG,EAAE;QAClB,GAAG,CAAC,IAAI,CAAC,0DAA0D,IAAI,EAAE,CAAC,CAAC;IAC/E,CAAC,CAAC,CAAC;AACP,CAAC;KAAM,CAAC;IACJ,GAAG,CAAC,IAAI,CAAC,8FAA8F,CAAC,CAAC;IAEzG,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,CAAC;QACvD,MAAM,KAAK,CAAC,IAAI,CAAC,8GAA8G,CAAC,CAAC;IACrI,CAAC;IACD,MAAM,OAAO,GAAG,EAAE,MAAM,EAAE,KAAK,CAAC,mBAAmB,EAAsB,CAAC;IAC1E,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,KAAK,CAAC,UAAW,EAAE,KAAK,CAAC,eAAgB,EAAE,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC;IAErH,MAAM,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC5B,GAAG,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,MAAM,uBAAuB,CAAC,CAAC;IACxD,MAAM,KAAK,CAAC,IAAI,EAAE,CAAC;AACvB,CAAC"}
|
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
5
5
|
import type { Transport } from '@modelcontextprotocol/sdk/shared/transport.js';
|
|
6
|
-
import type { ToolWrap } from '
|
|
6
|
+
import type { ToolWrap } from './types.js';
|
|
7
7
|
/**
|
|
8
8
|
* Create Apify MCP server
|
|
9
9
|
*/
|
|
@@ -14,15 +14,13 @@ export declare class ActorsMcpServer {
|
|
|
14
14
|
/**
|
|
15
15
|
* Loads missing default tools.
|
|
16
16
|
*/
|
|
17
|
-
loadDefaultTools(
|
|
17
|
+
loadDefaultTools(): Promise<void>;
|
|
18
18
|
/**
|
|
19
19
|
* Loads tools from URL params.
|
|
20
20
|
*
|
|
21
|
-
* This method also handles enabling of Actor auto loading via the processParamsGetTools.
|
|
22
|
-
*
|
|
23
21
|
* Used primarily for SSE.
|
|
24
22
|
*/
|
|
25
|
-
loadToolsFromUrl(url: string
|
|
23
|
+
loadToolsFromUrl(url: string): Promise<void>;
|
|
26
24
|
/**
|
|
27
25
|
* Upsert new tools.
|
|
28
26
|
* @param tools - Array of tool wrappers.
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAa/E,OAAO,KAAK,EAAyB,QAAQ,EAAE,MAAM,YAAY,CAAC;AAKlE;;GAEG;AACH,qBAAa,eAAe;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;;IAsBpC;;OAEG;IACU,gBAAgB;IAM7B;;;;OAIG;IACU,gBAAgB,CAAC,GAAG,EAAE,MAAM;IAKzC;;;;OAIG;IACI,WAAW,CAAC,KAAK,EAAE,QAAQ,EAAE;IAQpC;;;OAGG;IACI,YAAY,IAAI,MAAM,EAAE;IAI/B,OAAO,CAAC,kBAAkB;IAU1B,OAAO,CAAC,iBAAiB;IAiFnB,OAAO,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;CAGrD"}
|
|
@@ -4,12 +4,11 @@
|
|
|
4
4
|
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
5
5
|
import { CallToolRequestSchema, ListToolsRequestSchema } from '@modelcontextprotocol/sdk/types.js';
|
|
6
6
|
import log from '@apify/log';
|
|
7
|
-
import { ACTOR_OUTPUT_MAX_CHARS_PER_ITEM, ACTOR_OUTPUT_TRUNCATED_MESSAGE, SERVER_NAME, SERVER_VERSION, } from '
|
|
8
|
-
import { actorDefinitionTool, callActorGetDataset, getActorsAsTools, searchTool } from '
|
|
9
|
-
import { defaults } from '
|
|
10
|
-
import { actorNameToToolName } from '
|
|
11
|
-
import { processParamsGetTools } from './utils.js';
|
|
12
|
-
import { createMCPClient } from './client.js';
|
|
7
|
+
import { ACTOR_OUTPUT_MAX_CHARS_PER_ITEM, ACTOR_OUTPUT_TRUNCATED_MESSAGE, SERVER_NAME, SERVER_VERSION, } from './const.js';
|
|
8
|
+
import { actorDefinitionTool, callActorGetDataset, getActorsAsTools, searchTool } from './tools/index.js';
|
|
9
|
+
import { defaults } from './const.js';
|
|
10
|
+
import { actorNameToToolName } from './tools/utils.js';
|
|
11
|
+
import { processParamsGetTools } from './actor/utils.js';
|
|
13
12
|
/**
|
|
14
13
|
* Create Apify MCP server
|
|
15
14
|
*/
|
|
@@ -34,21 +33,19 @@ export class ActorsMcpServer {
|
|
|
34
33
|
/**
|
|
35
34
|
* Loads missing default tools.
|
|
36
35
|
*/
|
|
37
|
-
async loadDefaultTools(
|
|
36
|
+
async loadDefaultTools() {
|
|
38
37
|
const missingDefaultTools = defaults.actors.filter(name => !this.tools.has(actorNameToToolName(name)));
|
|
39
|
-
const tools = await getActorsAsTools(missingDefaultTools
|
|
38
|
+
const tools = await getActorsAsTools(missingDefaultTools);
|
|
40
39
|
if (tools.length > 0)
|
|
41
40
|
this.updateTools(tools);
|
|
42
41
|
}
|
|
43
42
|
/**
|
|
44
43
|
* Loads tools from URL params.
|
|
45
44
|
*
|
|
46
|
-
* This method also handles enabling of Actor auto loading via the processParamsGetTools.
|
|
47
|
-
*
|
|
48
45
|
* Used primarily for SSE.
|
|
49
46
|
*/
|
|
50
|
-
async loadToolsFromUrl(url
|
|
51
|
-
const tools = await processParamsGetTools(url
|
|
47
|
+
async loadToolsFromUrl(url) {
|
|
48
|
+
const tools = await processParamsGetTools(url);
|
|
52
49
|
if (tools.length > 0)
|
|
53
50
|
this.updateTools(tools);
|
|
54
51
|
}
|
|
@@ -98,9 +95,7 @@ export class ActorsMcpServer {
|
|
|
98
95
|
*/
|
|
99
96
|
this.server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
100
97
|
const { name, arguments: args } = request.params;
|
|
101
|
-
const apifyToken =
|
|
102
|
-
// Remove apifyToken from request.params just in case
|
|
103
|
-
delete request.params.apifyToken;
|
|
98
|
+
const apifyToken = request.params.apifyToken || process.env.APIFY_TOKEN;
|
|
104
99
|
// Validate token
|
|
105
100
|
if (!apifyToken) {
|
|
106
101
|
throw new Error('APIFY_TOKEN is required but not set in the environment variables or passed as a parameter.');
|
|
@@ -127,26 +122,9 @@ export class ActorsMcpServer {
|
|
|
127
122
|
args,
|
|
128
123
|
apifyMcpServer: this,
|
|
129
124
|
mcpServer: this.server,
|
|
130
|
-
apifyToken,
|
|
131
125
|
});
|
|
132
126
|
return { ...res };
|
|
133
127
|
}
|
|
134
|
-
if (tool.type === 'actor-mcp') {
|
|
135
|
-
const serverTool = tool.tool;
|
|
136
|
-
let client;
|
|
137
|
-
try {
|
|
138
|
-
client = await createMCPClient(serverTool.serverUrl, apifyToken);
|
|
139
|
-
const res = await client.callTool({
|
|
140
|
-
name: serverTool.originToolName,
|
|
141
|
-
arguments: args,
|
|
142
|
-
});
|
|
143
|
-
return { ...res };
|
|
144
|
-
}
|
|
145
|
-
finally {
|
|
146
|
-
if (client)
|
|
147
|
-
await client.close();
|
|
148
|
-
}
|
|
149
|
-
}
|
|
150
128
|
// Handle actor tool
|
|
151
129
|
if (tool.type === 'actor') {
|
|
152
130
|
const actorTool = tool.tool;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../src/mcp-server.ts"],"names":[],"mappings":"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"}
|
package/dist/stdio.js
CHANGED
|
@@ -15,7 +15,7 @@ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
|
|
|
15
15
|
import minimist from 'minimist';
|
|
16
16
|
import log from '@apify/log';
|
|
17
17
|
import { defaults } from './const.js';
|
|
18
|
-
import { ActorsMcpServer } from './mcp
|
|
18
|
+
import { ActorsMcpServer } from './mcp-server.js';
|
|
19
19
|
import { addTool, removeTool, getActorsAsTools } from './tools/index.js';
|
|
20
20
|
// Configure logging, set to ERROR
|
|
21
21
|
log.setLevel(log.LEVELS.ERROR);
|
|
@@ -30,7 +30,7 @@ if (!process.env.APIFY_TOKEN) {
|
|
|
30
30
|
async function main() {
|
|
31
31
|
const mcpServer = new ActorsMcpServer();
|
|
32
32
|
// Initialize tools
|
|
33
|
-
const tools = await getActorsAsTools(actorList.length ? actorList : defaults.actors
|
|
33
|
+
const tools = await getActorsAsTools(actorList.length ? actorList : defaults.actors);
|
|
34
34
|
if (enableActorAutoLoading) {
|
|
35
35
|
tools.push(addTool, removeTool);
|
|
36
36
|
}
|
package/dist/stdio.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stdio.js","sourceRoot":"","sources":["../src/stdio.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"stdio.js","sourceRoot":"","sources":["../src/stdio.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,QAAQ,MAAM,UAAU,CAAC;AAEhC,OAAO,GAAG,MAAM,YAAY,CAAC;AAE7B,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAEzE,kCAAkC;AAClC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAE/B,+BAA+B;AAC/B,MAAM,EAAE,MAAM,GAAG,EAAE,EAAE,sBAAsB,GAAG,KAAK,EAAE,GAAG,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;AACxF,MAAM,SAAS,GAAG,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;AAE/E,uBAAuB;AACvB,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC;IAC3B,GAAG,CAAC,KAAK,CAAC,mEAAmE,CAAC,CAAC;IAC/E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC;AAED,KAAK,UAAU,IAAI;IACf,MAAM,SAAS,GAAG,IAAI,eAAe,EAAE,CAAC;IACxC,mBAAmB;IACnB,MAAM,KAAK,GAAG,MAAM,gBAAgB,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;IACrF,IAAI,sBAAsB,EAAE,CAAC;QACzB,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;IACpC,CAAC;IACD,SAAS,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;IAE7B,eAAe;IACf,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAC7C,MAAM,SAAS,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;AACvC,CAAC;AAED,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,EAAE,EAAE;IACnB,GAAG,CAAC,KAAK,CAAC,eAAe,EAAE,KAAK,CAAC,CAAC;IAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AACpB,CAAC,CAAC,CAAC"}
|
package/dist/tools/actor.d.ts
CHANGED
|
@@ -16,8 +16,6 @@ import type { ToolWrap } from '../types.js';
|
|
|
16
16
|
*/
|
|
17
17
|
export declare function callActorGetDataset(actorName: string, input: unknown, apifyToken: string, callOptions?: ActorCallOptions | undefined): Promise<object[]>;
|
|
18
18
|
/**
|
|
19
|
-
* This function is used to fetch normal non-MCP server Actors as a tool.
|
|
20
|
-
*
|
|
21
19
|
* Fetches actor input schemas by Actor IDs or Actor full names and creates MCP tools.
|
|
22
20
|
*
|
|
23
21
|
* This function retrieves the input schemas for the specified actors and compiles them into MCP tools.
|
|
@@ -35,6 +33,5 @@ export declare function callActorGetDataset(actorName: string, input: unknown, a
|
|
|
35
33
|
* @param {string[]} actors - An array of actor IDs or Actor full names.
|
|
36
34
|
* @returns {Promise<Tool[]>} - A promise that resolves to an array of MCP tools.
|
|
37
35
|
*/
|
|
38
|
-
export declare function
|
|
39
|
-
export declare function getActorsAsTools(actors: string[], apifyToken: string): Promise<ToolWrap[]>;
|
|
36
|
+
export declare function getActorsAsTools(actors: string[]): Promise<ToolWrap[]>;
|
|
40
37
|
//# sourceMappingURL=actor.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../../src/tools/actor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAIrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"actor.d.ts","sourceRoot":"","sources":["../../src/tools/actor.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAIrD,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAa5C;;;;;;;;;;;;;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;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAgC5E"}
|
package/dist/tools/actor.js
CHANGED
|
@@ -4,9 +4,6 @@ import { getActorDefinition } from './build.js';
|
|
|
4
4
|
import { ACTOR_ADDITIONAL_INSTRUCTIONS, ACTOR_MAX_MEMORY_MBYTES } from '../const.js';
|
|
5
5
|
import { ApifyClient } from './mcp-apify-client.js';
|
|
6
6
|
import { actorNameToToolName, addEnumsToDescriptionsWithExamples, buildNestedProperties, filterSchemaProperties, markInputPropertiesAsRequired, shortenProperties, } from './utils.js';
|
|
7
|
-
import { getActorsMCPServerURL, isActorMCPServer } from '../mcp/actors.js';
|
|
8
|
-
import { createMCPClient } from '../mcp/client.js';
|
|
9
|
-
import { getMCPServerTools } from '../mcp/proxy.js';
|
|
10
7
|
/**
|
|
11
8
|
* Calls an Apify actor and retrieves the dataset items.
|
|
12
9
|
*
|
|
@@ -38,8 +35,6 @@ export async function callActorGetDataset(actorName, input, apifyToken, callOpti
|
|
|
38
35
|
}
|
|
39
36
|
}
|
|
40
37
|
/**
|
|
41
|
-
* This function is used to fetch normal non-MCP server Actors as a tool.
|
|
42
|
-
*
|
|
43
38
|
* Fetches actor input schemas by Actor IDs or Actor full names and creates MCP tools.
|
|
44
39
|
*
|
|
45
40
|
* This function retrieves the input schemas for the specified actors and compiles them into MCP tools.
|
|
@@ -57,7 +52,7 @@ export async function callActorGetDataset(actorName, input, apifyToken, callOpti
|
|
|
57
52
|
* @param {string[]} actors - An array of actor IDs or Actor full names.
|
|
58
53
|
* @returns {Promise<Tool[]>} - A promise that resolves to an array of MCP tools.
|
|
59
54
|
*/
|
|
60
|
-
export async function
|
|
55
|
+
export async function getActorsAsTools(actors) {
|
|
61
56
|
const ajv = new Ajv({ coerceTypes: 'array', strict: false });
|
|
62
57
|
const results = await Promise.all(actors.map(getActorDefinition));
|
|
63
58
|
const tools = [];
|
|
@@ -91,41 +86,4 @@ export async function getNormalActorsAsTools(actors) {
|
|
|
91
86
|
}
|
|
92
87
|
return tools;
|
|
93
88
|
}
|
|
94
|
-
async function getMCPServersAsTools(actors, apifyToken) {
|
|
95
|
-
const actorsMCPServerTools = [];
|
|
96
|
-
for (const actorID of actors) {
|
|
97
|
-
const serverUrl = await getActorsMCPServerURL(actorID);
|
|
98
|
-
let client;
|
|
99
|
-
try {
|
|
100
|
-
client = await createMCPClient(serverUrl, apifyToken);
|
|
101
|
-
const serverTools = await getMCPServerTools(actorID, client, serverUrl);
|
|
102
|
-
actorsMCPServerTools.push(...serverTools);
|
|
103
|
-
}
|
|
104
|
-
finally {
|
|
105
|
-
if (client)
|
|
106
|
-
await client.close();
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
return actorsMCPServerTools;
|
|
110
|
-
}
|
|
111
|
-
export async function getActorsAsTools(actors, apifyToken) {
|
|
112
|
-
console.log('Fetching actors as tools...');
|
|
113
|
-
console.log(actors);
|
|
114
|
-
// Actorized MCP servers
|
|
115
|
-
const actorsMCPServer = [];
|
|
116
|
-
for (const actorID of actors) {
|
|
117
|
-
if (await isActorMCPServer(actorID)) {
|
|
118
|
-
actorsMCPServer.push(actorID);
|
|
119
|
-
}
|
|
120
|
-
}
|
|
121
|
-
// Normal Actors as a tool
|
|
122
|
-
const toolActors = actors.filter((actorID) => !actorsMCPServer.includes(actorID));
|
|
123
|
-
console.log('actorsMCPserver', actorsMCPServer);
|
|
124
|
-
console.log('toolActors', toolActors);
|
|
125
|
-
// Normal Actors as a tool
|
|
126
|
-
const normalTools = await getNormalActorsAsTools(toolActors);
|
|
127
|
-
// Tools from Actorized MCP servers
|
|
128
|
-
const mcpServerTools = await getMCPServersAsTools(actorsMCPServer, apifyToken);
|
|
129
|
-
return [...normalTools, ...mcpServerTools];
|
|
130
|
-
}
|
|
131
89
|
//# sourceMappingURL=actor.js.map
|
package/dist/tools/actor.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"actor.js","sourceRoot":"","sources":["../../src/tools/actor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAG1B,OAAO,GAAG,MAAM,YAAY,CAAC;AAG7B,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EAAE,6BAA6B,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAC;AACrF,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EACH,mBAAmB,EACnB,kCAAkC,EAClC,qBAAqB,EACrB,sBAAsB,EACtB,6BAA6B,EAC7B,iBAAiB,GACpB,MAAM,YAAY,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
|
@@ -22,9 +22,9 @@ export const addTool = {
|
|
|
22
22
|
ajvValidate: ajv.compile(zodToJsonSchema(AddToolArgsSchema)),
|
|
23
23
|
// TODO: I don't like that we are passing apifyMcpServer and mcpServer to the tool
|
|
24
24
|
call: async (toolArgs) => {
|
|
25
|
-
const { apifyMcpServer, mcpServer,
|
|
25
|
+
const { apifyMcpServer, mcpServer, args } = toolArgs;
|
|
26
26
|
const parsed = AddToolArgsSchema.parse(args);
|
|
27
|
-
const tools = await getActorsAsTools([parsed.actorName]
|
|
27
|
+
const tools = await getActorsAsTools([parsed.actorName]);
|
|
28
28
|
const toolsAdded = apifyMcpServer.updateTools(tools);
|
|
29
29
|
await mcpServer.notification({ method: 'notifications/tools/list_changed' });
|
|
30
30
|
return {
|
|
@@ -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;AAC1C,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AAEjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;AAC7D,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAC,MAAM,CAAC;IACtC,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;SAChB,QAAQ,CAAC,6DAA6D;UACjE,mDAAmD,CAAC;CACjE,CAAC,CAAC;AACH,MAAM,CAAC,MAAM,OAAO,GAAa;IAC7B,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE;QACF,IAAI,EAAE,WAAW,CAAC,QAAQ;QAC1B,WAAW,EAAE,2DAA2D;cAClE,uEAAuE;cACvE,2CAA2C;cAC3C,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,
|
|
1
|
+
{"version":3,"file":"helpers.js","sourceRoot":"","sources":["../../src/tools/helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-apify-client.d.ts","sourceRoot":"","sources":["../../src/tools/mcp-apify-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mcp-apify-client.d.ts","sourceRoot":"","sources":["../../src/tools/mcp-apify-client.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAC;AAChD,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,cAAc,CAAC;AAiB3D,qBAAa,WAAY,SAAQ,YAAY;gBAC7B,OAAO,EAAE,kBAAkB;CAO1C"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-apify-client.js","sourceRoot":"","sources":["../../src/tools/mcp-apify-client.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"mcp-apify-client.js","sourceRoot":"","sources":["../../src/tools/mcp-apify-client.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,IAAI,YAAY,EAAE,MAAM,cAAc,CAAC;AAG3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD;;;;GAIG;AACH,SAAS,YAAY,CAAC,MAA0B;IAC5C,MAAM,aAAa,GAAG,EAAE,GAAG,MAAM,EAAE,CAAC;IACpC,aAAa,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,IAAI,EAAE,CAAC;IACpD,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,GAAG,GAAG,aAAa,CAAC,OAAO,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,iBAAiB,EAAE,CAAC;IAC3G,OAAO,aAAa,CAAC;AACzB,CAAC;AAED,MAAM,OAAO,WAAY,SAAQ,YAAY;IACzC,YAAY,OAA2B;QACnC,KAAK,CAAC;YACF,GAAG,OAAO;YACV,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,kBAAkB,IAAI,SAAS;YACpD,mBAAmB,EAAE,CAAC,YAAY,CAAC;SACtC,CAAC,CAAC;IACP,CAAC;CACJ"}
|