@apify/actors-mcp-server 0.4.19 → 0.4.21
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 +14 -6
- package/dist/actor/server.d.ts.map +1 -1
- package/dist/actor/server.js +1 -1
- package/dist/actor/server.js.map +1 -1
- package/dist/mcp/server.d.ts +2 -0
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +1 -1
- 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 +2 -2
- package/dist/stdio.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/dist/utils/mcp-clients.d.ts +6 -0
- package/dist/utils/mcp-clients.d.ts.map +1 -0
- package/dist/utils/mcp-clients.js +20 -0
- package/dist/utils/mcp-clients.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 +41 -3
- package/dist/utils/tools-loader.js.map +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import type { InitializeRequest } from '@modelcontextprotocol/sdk/types';
|
|
2
|
+
/**
|
|
3
|
+
* Determines if the MCP client supports dynamic tools based on the InitializeRequest data.
|
|
4
|
+
*/
|
|
5
|
+
export declare function doesMcpClientSupportDynamicTools(initializeRequestData?: InitializeRequest): boolean;
|
|
6
|
+
//# sourceMappingURL=mcp-clients.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-clients.d.ts","sourceRoot":"","sources":["../../src/utils/mcp-clients.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AAGzE;;GAEG;AACH,wBAAgB,gCAAgC,CAAC,qBAAqB,CAAC,EAAE,iBAAiB,GAAG,OAAO,CAenG"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import mcpClients from 'mcp-client-capabilities';
|
|
2
|
+
/**
|
|
3
|
+
* Determines if the MCP client supports dynamic tools based on the InitializeRequest data.
|
|
4
|
+
*/
|
|
5
|
+
export function doesMcpClientSupportDynamicTools(initializeRequestData) {
|
|
6
|
+
var _a, _b, _c, _d;
|
|
7
|
+
const clientCapabilities = mcpClients[((_b = (_a = initializeRequestData === null || initializeRequestData === void 0 ? void 0 : initializeRequestData.params) === null || _a === void 0 ? void 0 : _a.clientInfo) === null || _b === void 0 ? void 0 : _b.name) || ''];
|
|
8
|
+
if (!clientCapabilities)
|
|
9
|
+
return false;
|
|
10
|
+
const clientProtocolVersion = clientCapabilities.protocolVersion;
|
|
11
|
+
const knownProtocolVersion = (_c = initializeRequestData === null || initializeRequestData === void 0 ? void 0 : initializeRequestData.params) === null || _c === void 0 ? void 0 : _c.protocolVersion;
|
|
12
|
+
// Compare the protocolVersion to check if the client is up to date
|
|
13
|
+
// We check for strict equality because if the versions differ, we cannot be sure about the capabilities
|
|
14
|
+
if (clientProtocolVersion !== knownProtocolVersion) {
|
|
15
|
+
// Client version is different from the known version, we cannot be sure about its capabilities
|
|
16
|
+
return false;
|
|
17
|
+
}
|
|
18
|
+
return ((_d = clientCapabilities.tools) === null || _d === void 0 ? void 0 : _d.listChanged) === true;
|
|
19
|
+
}
|
|
20
|
+
//# sourceMappingURL=mcp-clients.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"mcp-clients.js","sourceRoot":"","sources":["../../src/utils/mcp-clients.ts"],"names":[],"mappings":"AACA,OAAO,UAAU,MAAM,yBAAyB,CAAC;AAEjD;;GAEG;AACH,MAAM,UAAU,gCAAgC,CAAC,qBAAyC;;IACtF,MAAM,kBAAkB,GAAG,UAAU,CAAC,CAAA,MAAA,MAAA,qBAAqB,aAArB,qBAAqB,uBAArB,qBAAqB,CAAE,MAAM,0CAAE,UAAU,0CAAE,IAAI,KAAI,EAAE,CAAC,CAAC;IAC7F,IAAI,CAAC,kBAAkB;QAAE,OAAO,KAAK,CAAC;IAEtC,MAAM,qBAAqB,GAAG,kBAAkB,CAAC,eAAe,CAAC;IACjE,MAAM,oBAAoB,GAAG,MAAA,qBAAqB,aAArB,qBAAqB,uBAArB,qBAAqB,CAAE,MAAM,0CAAE,eAAe,CAAC;IAE5E,mEAAmE;IACnE,wGAAwG;IACxG,IAAI,qBAAqB,KAAK,oBAAoB,EAAE,CAAC;QACjD,+FAA+F;QAC/F,OAAO,KAAK,CAAC;IACjB,CAAC;IAED,OAAO,CAAA,MAAA,kBAAkB,CAAC,KAAK,0CAAE,WAAW,MAAK,IAAI,CAAC;AAC1D,CAAC"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
* Shared logic for loading tools based on Input type.
|
|
3
3
|
* This eliminates duplication between stdio.ts and processParamsGetTools.
|
|
4
4
|
*/
|
|
5
|
+
import type { InitializeRequest } from '@modelcontextprotocol/sdk/types.js';
|
|
5
6
|
import type { ApifyClient } from 'apify';
|
|
6
7
|
import type { Input, ToolEntry } from '../types.js';
|
|
7
8
|
/**
|
|
@@ -12,5 +13,5 @@ import type { Input, ToolEntry } from '../types.js';
|
|
|
12
13
|
* @param apifyToken The Apify API token
|
|
13
14
|
* @returns An array of tool entries
|
|
14
15
|
*/
|
|
15
|
-
export declare function loadToolsFromInput(input: Input, apifyClient: ApifyClient): Promise<ToolEntry[]>;
|
|
16
|
+
export declare function loadToolsFromInput(input: Input, apifyClient: ApifyClient, initializeRequestData?: InitializeRequest): Promise<ToolEntry[]>;
|
|
16
17
|
//# sourceMappingURL=tools-loader.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools-loader.d.ts","sourceRoot":"","sources":["../../src/utils/tools-loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AASzC,OAAO,KAAK,EAAE,KAAK,
|
|
1
|
+
{"version":3,"file":"tools-loader.d.ts","sourceRoot":"","sources":["../../src/utils/tools-loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,oCAAoC,CAAC;AAE5E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AASzC,OAAO,KAAK,EAAE,KAAK,EAAgD,SAAS,EAAE,MAAM,aAAa,CAAC;AAgBlG;;;;;;;GAOG;AACH,wBAAsB,kBAAkB,CACpC,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,qBAAqB,CAAC,EAAE,iBAAiB,GAC1C,OAAO,CAAC,SAAS,EAAE,CAAC,CA8ItB"}
|
|
@@ -3,11 +3,12 @@
|
|
|
3
3
|
* This eliminates duplication between stdio.ts and processParamsGetTools.
|
|
4
4
|
*/
|
|
5
5
|
import log from '@apify/log';
|
|
6
|
-
import { defaults } from '../const.js';
|
|
6
|
+
import { defaults, HelperTools } from '../const.js';
|
|
7
7
|
import { callActor } from '../tools/actor.js';
|
|
8
8
|
import { getActorOutput } from '../tools/get-actor-output.js';
|
|
9
9
|
import { addTool } from '../tools/helpers.js';
|
|
10
10
|
import { getActorsAsTools, toolCategories, toolCategoriesEnabledByDefault } from '../tools/index.js';
|
|
11
|
+
import { doesMcpClientSupportDynamicTools } from './mcp-clients.js';
|
|
11
12
|
import { getExpectedToolsByCategories } from './tools.js';
|
|
12
13
|
// Lazily-computed cache of internal tools by name to avoid circular init issues.
|
|
13
14
|
let INTERNAL_TOOL_BY_NAME_CACHE = null;
|
|
@@ -26,7 +27,7 @@ function getInternalToolByNameMap() {
|
|
|
26
27
|
* @param apifyToken The Apify API token
|
|
27
28
|
* @returns An array of tool entries
|
|
28
29
|
*/
|
|
29
|
-
export async function loadToolsFromInput(input, apifyClient) {
|
|
30
|
+
export async function loadToolsFromInput(input, apifyClient, initializeRequestData) {
|
|
30
31
|
// Helpers for readability
|
|
31
32
|
const normalizeSelectors = (value) => {
|
|
32
33
|
if (value === undefined)
|
|
@@ -53,6 +54,13 @@ export async function loadToolsFromInput(input, apifyClient) {
|
|
|
53
54
|
continue;
|
|
54
55
|
}
|
|
55
56
|
const categoryTools = toolCategories[selector];
|
|
57
|
+
// Handler client capabilities logic for 'actors' category to swap call-actor for add-actor
|
|
58
|
+
// if client supports dynamic tools.
|
|
59
|
+
if (selector === 'actors' && doesMcpClientSupportDynamicTools(initializeRequestData)) {
|
|
60
|
+
internalSelections.push(...categoryTools.filter((t) => t.tool.name !== HelperTools.ACTOR_CALL));
|
|
61
|
+
internalSelections.push(addTool);
|
|
62
|
+
continue;
|
|
63
|
+
}
|
|
56
64
|
if (categoryTools) {
|
|
57
65
|
internalSelections.push(...categoryTools);
|
|
58
66
|
continue;
|
|
@@ -125,6 +133,36 @@ export async function loadToolsFromInput(input, apifyClient) {
|
|
|
125
133
|
}
|
|
126
134
|
// De-duplicate by tool name for safety
|
|
127
135
|
const seen = new Set();
|
|
128
|
-
|
|
136
|
+
const filtered = result.filter((entry) => !seen.has(entry.tool.name) && seen.add(entry.tool.name));
|
|
137
|
+
// TODO: rework this solition as it was quickly hacked together for hotfix
|
|
138
|
+
// Deep clone except ajvValidate and call functions
|
|
139
|
+
// holds the original functions of the tools
|
|
140
|
+
const toolFunctions = new Map();
|
|
141
|
+
for (const entry of filtered) {
|
|
142
|
+
if (entry.type === 'internal') {
|
|
143
|
+
toolFunctions.set(entry.tool.name, { ajvValidate: entry.tool.ajvValidate, call: entry.tool.call });
|
|
144
|
+
}
|
|
145
|
+
else {
|
|
146
|
+
toolFunctions.set(entry.tool.name, { ajvValidate: entry.tool.ajvValidate });
|
|
147
|
+
}
|
|
148
|
+
}
|
|
149
|
+
const cloned = JSON.parse(JSON.stringify(filtered, (key, value) => {
|
|
150
|
+
if (key === 'ajvValidate' || key === 'call')
|
|
151
|
+
return undefined;
|
|
152
|
+
return value;
|
|
153
|
+
}));
|
|
154
|
+
// restore the original functions
|
|
155
|
+
for (const entry of cloned) {
|
|
156
|
+
const funcs = toolFunctions.get(entry.tool.name);
|
|
157
|
+
if (funcs) {
|
|
158
|
+
if (funcs.ajvValidate) {
|
|
159
|
+
entry.tool.ajvValidate = funcs.ajvValidate;
|
|
160
|
+
}
|
|
161
|
+
if (entry.type === 'internal' && funcs.call) {
|
|
162
|
+
entry.tool.call = funcs.call;
|
|
163
|
+
}
|
|
164
|
+
}
|
|
165
|
+
}
|
|
166
|
+
return cloned;
|
|
129
167
|
}
|
|
130
168
|
//# sourceMappingURL=tools-loader.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tools-loader.js","sourceRoot":"","sources":["../../src/utils/tools-loader.ts"],"names":[],"mappings":"AAAA;;;GAGG;
|
|
1
|
+
{"version":3,"file":"tools-loader.js","sourceRoot":"","sources":["../../src/utils/tools-loader.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@apify/actors-mcp-server",
|
|
3
|
-
"version": "0.4.
|
|
3
|
+
"version": "0.4.21",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"description": "Apify MCP Server",
|
|
6
6
|
"mcpName": "com.apify/apify-mcp-server",
|
|
@@ -47,6 +47,7 @@
|
|
|
47
47
|
"apify-client": "^2.12.6",
|
|
48
48
|
"cheerio": "^1.1.2",
|
|
49
49
|
"express": "^4.21.2",
|
|
50
|
+
"mcp-client-capabilities": "^0.0.5",
|
|
50
51
|
"to-json-schema": "^0.2.5",
|
|
51
52
|
"turndown": "^7.2.0",
|
|
52
53
|
"yargs": "^17.7.2",
|