@apify/actors-mcp-server 0.12.1-beta.3 → 0.13.1-beta.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (73) hide show
  1. package/dist/const.d.ts +6 -5
  2. package/dist/const.d.ts.map +1 -1
  3. package/dist/const.js +6 -5
  4. package/dist/const.js.map +1 -1
  5. package/dist/dev_server.d.ts +18 -6
  6. package/dist/dev_server.d.ts.map +1 -1
  7. package/dist/dev_server.js +139 -14
  8. package/dist/dev_server.js.map +1 -1
  9. package/dist/index.d.ts +2 -1
  10. package/dist/index.d.ts.map +1 -1
  11. package/dist/index.js +4 -2
  12. package/dist/index.js.map +1 -1
  13. package/dist/mcp/legacy_server.d.ts +75 -0
  14. package/dist/mcp/legacy_server.d.ts.map +1 -0
  15. package/dist/mcp/legacy_server.js +560 -0
  16. package/dist/mcp/legacy_server.js.map +1 -0
  17. package/dist/mcp/server.d.ts +110 -86
  18. package/dist/mcp/server.d.ts.map +1 -1
  19. package/dist/mcp/server.js +273 -668
  20. package/dist/mcp/server.js.map +1 -1
  21. package/dist/mcp/stateless_server.d.ts +58 -0
  22. package/dist/mcp/stateless_server.d.ts.map +1 -0
  23. package/dist/mcp/stateless_server.js +332 -0
  24. package/dist/mcp/stateless_server.js.map +1 -0
  25. package/dist/mcp/task_execution.d.ts +15 -8
  26. package/dist/mcp/task_execution.d.ts.map +1 -1
  27. package/dist/mcp/task_execution.js +29 -22
  28. package/dist/mcp/task_execution.js.map +1 -1
  29. package/dist/mcp/tool_call_engine.d.ts +23 -10
  30. package/dist/mcp/tool_call_engine.d.ts.map +1 -1
  31. package/dist/mcp/tool_call_engine.js +35 -26
  32. package/dist/mcp/tool_call_engine.js.map +1 -1
  33. package/dist/mcp/tool_call_telemetry.d.ts +4 -4
  34. package/dist/mcp/tool_call_telemetry.d.ts.map +1 -1
  35. package/dist/mcp/tool_call_telemetry.js +5 -5
  36. package/dist/mcp/tool_call_telemetry.js.map +1 -1
  37. package/dist/mcp/tool_dispatch.d.ts +19 -15
  38. package/dist/mcp/tool_dispatch.d.ts.map +1 -1
  39. package/dist/mcp/tool_dispatch.js +19 -17
  40. package/dist/mcp/tool_dispatch.js.map +1 -1
  41. package/dist/tools/actors/call_actor.js +1 -1
  42. package/dist/tools/actors/call_actor.js.map +1 -1
  43. package/dist/tools/actors/fetch_actor_details.d.ts.map +1 -1
  44. package/dist/tools/actors/fetch_actor_details.js +4 -4
  45. package/dist/tools/actors/fetch_actor_details.js.map +1 -1
  46. package/dist/tools/actors/search_actors.js +2 -2
  47. package/dist/tools/actors/search_actors.js.map +1 -1
  48. package/dist/tools/dev/report_problem.d.ts.map +1 -1
  49. package/dist/tools/dev/report_problem.js +2 -0
  50. package/dist/tools/dev/report_problem.js.map +1 -1
  51. package/dist/tools/runs/get_actor_run.js +2 -2
  52. package/dist/tools/runs/get_actor_run.js.map +1 -1
  53. package/dist/tools/runs/get_actor_run_log.d.ts.map +1 -1
  54. package/dist/tools/runs/get_actor_run_log.js +2 -0
  55. package/dist/tools/runs/get_actor_run_log.js.map +1 -1
  56. package/dist/tools/storage/get_dataset_items.js +2 -2
  57. package/dist/tools/storage/get_dataset_items.js.map +1 -1
  58. package/dist/tools/storage/storage_helpers.d.ts +1 -1
  59. package/dist/tools/storage/storage_helpers.d.ts.map +1 -1
  60. package/dist/tools/storage/storage_helpers.js.map +1 -1
  61. package/dist/tools/widgets/search_actors_widget.js +2 -2
  62. package/dist/tools/widgets/search_actors_widget.js.map +1 -1
  63. package/dist/tsconfig.tsbuildinfo +1 -1
  64. package/dist/types.d.ts +16 -20
  65. package/dist/types.d.ts.map +1 -1
  66. package/dist/types.js.map +1 -1
  67. package/dist/utils/tool_status.d.ts +6 -0
  68. package/dist/utils/tool_status.d.ts.map +1 -1
  69. package/dist/utils/tool_status.js +7 -0
  70. package/dist/utils/tool_status.js.map +1 -1
  71. package/manifest.json +1 -1
  72. package/package.json +6 -2
  73. package/server.json +1 -1
package/dist/const.d.ts CHANGED
@@ -54,11 +54,12 @@ export type HelperToolName = (typeof HELPER_TOOLS)[keyof typeof HELPER_TOOLS];
54
54
  export declare const RETIRED_SELECTOR_NAMES: ReadonlySet<string>;
55
55
  /**
56
56
  * Client-name substrings (lowercased, matched against `clientInfo.name`) that `report-problem` is
57
- * hidden from. Applied once per connection in the compose step, where the client is known.
58
- * `report-problem` is hidden from Anthropic surfaces (Claude.ai / Claude Desktop / Claude Code /
59
- * `local-agent-mode-apify`) pending the directory review. Substring matching covers new client builds
60
- * without a maintained allowlist; over-matching only hides an optional tool, which is the safe failure
61
- * mode.
57
+ * hidden from: Anthropic surfaces (Claude.ai / Claude Desktop / Claude Code /
58
+ * `local-agent-mode-apify`) pending the directory review. Applied in the compose step — once per
59
+ * connection on the 2025 path, per request on the 2026-07-28 one. Stateless `client-info` is
60
+ * optional; a request declaring no client name matches no blocked substring and is served the tool
61
+ * by policy. Substring matching covers new client builds without a maintained allowlist;
62
+ * over-matching only hides an optional tool.
62
63
  */
63
64
  export declare const REPORT_PROBLEM_BLOCKED_CLIENTS: string[];
64
65
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,uBAAuB,OAAQ,CAAC;AAE7C,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAC1C,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAKhD,eAAO,MAAM,uBAAuB,OAAQ,CAAC;AAG7C;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,QAAa,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,uBAAuB,QAAQ,CAAC;AAE7C,yGAAyG;AACzG,eAAO,MAAM,kBAAkB,4CAA4C,CAAC;AAG5E,2HAA2H;AAC3H,eAAO,MAAM,kCAAkC,OAAO,CAAC;AAEvD,eAAO,MAAM,WAAW,qBAAqB,CAAC;AAC9C,eAAO,MAAM,YAAY,qBAAqB,CAAC;AAC/C,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;CAuBf,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,MAAM,CAAqD,CAAC;AAE7G;;;;;;;GAOG;AACH,eAAO,MAAM,8BAA8B,EAAE,MAAM,EAAsD,CAAC;AAE1G;;;GAGG;AACH,eAAO,MAAM,oBAAoB,0BAA0B,CAAC;AAE5D,eAAO,MAAM,eAAe,0BAA0B,CAAC;AACvD,eAAO,MAAM,kCAAkC,UAA2C,CAAC;AAC3F,eAAO,MAAM,+BAA+B,8vBAQgM,CAAC;AAE7O,eAAO,MAAM,QAAQ;;CAEpB,CAAC;AAEF,0GAA0G;AAC1G,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,wEAAwE;AACxE,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAEjD,eAAO,MAAM,mBAAmB;IAC5B,oBAAoB;;;IAGpB,kCAAkC;;IAElC,iCAAiC;;CAE3B,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCf,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,WAAW,CAAC;AAEnD,eAAO,MAAM,mBAAmB,4DAA6D,CAAC;AAE9F,eAAO,MAAM,eAAe,sBAAsB,CAAC;AACnD,yCAAyC;AACzC,eAAO,MAAM,gBAAgB,8BAA8B,CAAC;AAC5D,kGAAkG;AAClG,eAAO,MAAM,wBAAwB,kDAAkD,CAAC;AACxF,2GAA2G;AAC3G,eAAO,MAAM,oBAAoB,sCAAsC,CAAC;AACxE,eAAO,MAAM,iBAAiB,kCAAmC,CAAC;AAClE,eAAO,MAAM,cAAc,qCAAsC,CAAC;AAClE,eAAO,MAAM,aAAa,0BAA0B,CAAC;AACrD,eAAO,MAAM,kBAAkB,qDAAqD,CAAC;AAGrF,eAAO,MAAM,aAAa;;;CAGhB,CAAC;AAEX,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C,eAAO,MAAM,qBAAqB,QAAqB,CAAC;AAGxD;;;GAGG;AACH,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAC;AAGX,eAAO,MAAM,6CAA6C,uCAAuC,CAAC;AAClG,eAAO,MAAM,sCAAsC,0BAA0B,CAAC;AAC9E,eAAO,MAAM,wCAAwC,4BAA4B,CAAC;AAGlF,eAAO,MAAM,iBAAiB,MAAM,CAAC;AACrC,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,cAAc,MAAM,CAAC;AAClC,eAAO,MAAM,cAAc,MAAM,CAAC;AAGlC,eAAO,MAAM,iCAAiC,mCAAoC,CAAC"}
1
+ {"version":3,"file":"const.d.ts","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":"AACA,eAAO,MAAM,uBAAuB,OAAQ,CAAC;AAE7C,eAAO,MAAM,qBAAqB,OAAO,CAAC;AAC1C,eAAO,MAAM,4BAA4B,MAAM,CAAC;AAKhD,eAAO,MAAM,uBAAuB,OAAQ,CAAC;AAG7C;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,QAAa,CAAC;AAE3C;;;GAGG;AACH,eAAO,MAAM,uBAAuB,QAAQ,CAAC;AAE7C,yGAAyG;AACzG,eAAO,MAAM,kBAAkB,4CAA4C,CAAC;AAG5E,2HAA2H;AAC3H,eAAO,MAAM,kCAAkC,OAAO,CAAC;AAEvD,eAAO,MAAM,WAAW,qBAAqB,CAAC;AAC9C,eAAO,MAAM,YAAY,qBAAqB,CAAC;AAC/C,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;CAuBf,CAAC;AACX,MAAM,MAAM,cAAc,GAAG,CAAC,OAAO,YAAY,CAAC,CAAC,MAAM,OAAO,YAAY,CAAC,CAAC;AAE9E;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,EAAE,WAAW,CAAC,MAAM,CAAqD,CAAC;AAE7G;;;;;;;;GAQG;AACH,eAAO,MAAM,8BAA8B,EAAE,MAAM,EAAsD,CAAC;AAE1G;;;GAGG;AACH,eAAO,MAAM,oBAAoB,0BAA0B,CAAC;AAE5D,eAAO,MAAM,eAAe,0BAA0B,CAAC;AACvD,eAAO,MAAM,kCAAkC,UAA2C,CAAC;AAC3F,eAAO,MAAM,+BAA+B,8vBAQgM,CAAC;AAE7O,eAAO,MAAM,QAAQ;;CAEpB,CAAC;AAEF,0GAA0G;AAC1G,eAAO,MAAM,2BAA2B,KAAK,CAAC;AAC9C,wEAAwE;AACxE,eAAO,MAAM,8BAA8B,KAAK,CAAC;AAEjD,eAAO,MAAM,mBAAmB;IAC5B,oBAAoB;;;IAGpB,kCAAkC;;IAElC,iCAAiC;;CAE3B,CAAC;AAEX,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;EAoCf,CAAC;AAEX;;;;;GAKG;AACH,eAAO,MAAM,sBAAsB,MAAM,CAAC;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,0BAA0B,WAAW,CAAC;AAEnD,eAAO,MAAM,mBAAmB,4DAA6D,CAAC;AAE9F,eAAO,MAAM,eAAe,sBAAsB,CAAC;AACnD,yCAAyC;AACzC,eAAO,MAAM,gBAAgB,8BAA8B,CAAC;AAC5D,kGAAkG;AAClG,eAAO,MAAM,wBAAwB,kDAAkD,CAAC;AACxF,2GAA2G;AAC3G,eAAO,MAAM,oBAAoB,sCAAsC,CAAC;AACxE,eAAO,MAAM,iBAAiB,kCAAmC,CAAC;AAClE,eAAO,MAAM,cAAc,qCAAsC,CAAC;AAClE,eAAO,MAAM,aAAa,0BAA0B,CAAC;AACrD,eAAO,MAAM,kBAAkB,qDAAqD,CAAC;AAGrF,eAAO,MAAM,aAAa;;;CAGhB,CAAC;AAEX,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C,eAAO,MAAM,qBAAqB,QAAqB,CAAC;AAGxD;;;GAGG;AACH,eAAO,MAAM,WAAW;;;;;CAKd,CAAC;AAEX,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAC;AAGX,eAAO,MAAM,6CAA6C,uCAAuC,CAAC;AAClG,eAAO,MAAM,sCAAsC,0BAA0B,CAAC;AAC9E,eAAO,MAAM,wCAAwC,4BAA4B,CAAC;AAGlF,eAAO,MAAM,iBAAiB,MAAM,CAAC;AACrC,eAAO,MAAM,qBAAqB,MAAM,CAAC;AACzC,eAAO,MAAM,cAAc,MAAM,CAAC;AAClC,eAAO,MAAM,cAAc,MAAM,CAAC;AAGlC,eAAO,MAAM,iCAAiC,mCAAoC,CAAC"}
package/dist/const.js CHANGED
@@ -60,11 +60,12 @@ export const HELPER_TOOLS = {
60
60
  export const RETIRED_SELECTOR_NAMES = new Set(['add-actor', 'experimental', 'preview']);
61
61
  /**
62
62
  * Client-name substrings (lowercased, matched against `clientInfo.name`) that `report-problem` is
63
- * hidden from. Applied once per connection in the compose step, where the client is known.
64
- * `report-problem` is hidden from Anthropic surfaces (Claude.ai / Claude Desktop / Claude Code /
65
- * `local-agent-mode-apify`) pending the directory review. Substring matching covers new client builds
66
- * without a maintained allowlist; over-matching only hides an optional tool, which is the safe failure
67
- * mode.
63
+ * hidden from: Anthropic surfaces (Claude.ai / Claude Desktop / Claude Code /
64
+ * `local-agent-mode-apify`) pending the directory review. Applied in the compose step — once per
65
+ * connection on the 2025 path, per request on the 2026-07-28 one. Stateless `client-info` is
66
+ * optional; a request declaring no client name matches no blocked substring and is served the tool
67
+ * by policy. Substring matching covers new client builds without a maintained allowlist;
68
+ * over-matching only hides an optional tool.
68
69
  */
69
70
  export const REPORT_PROBLEM_BLOCKED_CLIENTS = ['claude', 'anthropic', 'local-agent-mode-apify'];
70
71
  /**
package/dist/const.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"const.js","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"const.js","sourceRoot":"","sources":["../src/const.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,24 @@
1
1
  import type { InitializeRequestParams } from '@modelcontextprotocol/sdk/types.js';
2
2
  import express from 'express';
3
+ /** The request fields era routing reads. Narrow so it can be exercised without an HTTP server. */
4
+ type EraRoutableRequest = {
5
+ method?: string;
6
+ url?: string;
7
+ headers: Record<string, string | string[] | undefined>;
8
+ body?: unknown;
9
+ };
10
+ /**
11
+ * Whether the 2026-07-28 stateless path must answer this request instead of the stateful one.
12
+ * Uses the SDK's own discriminator: `true` covers claim-less traffic (2025-era `initialize` and
13
+ * follow-ups, body-less session GET/DELETE, and unparseable bodies). `false` covers everything the
14
+ * 2026-07-28 entry answers, including its own validation rejections, which must not be re-routed.
15
+ */
16
+ export declare function isStatelessRequest(req: EraRoutableRequest): Promise<boolean>;
3
17
  export declare function createExpressApp(): express.Express;
4
18
  /**
5
- * Finds the `initialize` message in a (possibly batched) request body, matching on `method`
6
- * alone like the pre-refactor `isInitializeRequest` did. This must stay a loose tag check: a
7
- * body with `method: 'initialize'` but malformed/incomplete `params` still needs to enter the
8
- * initialize branch below so the SDK's own initialize-schema validation produces the accurate
9
- * protocol error, instead of falling through to the generic "Mcp-Session-Id header is required"
10
- * 400 from the no-session branch.
19
+ * Finds the `initialize` message in a (possibly batched) request body by `method` tag alone.
20
+ * Deliberately loose: a body with malformed `params` must still enter the initialize branch so the
21
+ * SDK's schema validation produces the accurate protocol error instead of the generic 400.
11
22
  */
12
23
  export declare function extractInitializeMessage(body: unknown): {
13
24
  method: string;
@@ -19,4 +30,5 @@ export declare function extractInitializeMessage(body: unknown): {
19
30
  * unchecked — the SDK validates the full request separately once it takes over below.
20
31
  */
21
32
  export declare function parseInitializeParams(params: unknown): InitializeRequestParams | undefined;
33
+ export {};
22
34
  //# sourceMappingURL=dev_server.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"dev_server.d.ts","sourceRoot":"","sources":["../src/dev_server.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAGlF,OAAO,OAAO,MAAM,SAAS,CAAC;AA+E9B,wBAAgB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAmMlD;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,OAAO,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,CAMxG;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,OAAO,GAAG,uBAAuB,GAAG,SAAS,CAG1F"}
1
+ {"version":3,"file":"dev_server.d.ts","sourceRoot":"","sources":["../src/dev_server.ts"],"names":[],"mappings":"AAuBA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAKlF,OAAO,OAAO,MAAM,SAAS,CAAC;AA+F9B,kGAAkG;AAClG,KAAK,kBAAkB,GAAG;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAC;IACvD,IAAI,CAAC,EAAE,OAAO,CAAC;CAClB,CAAC;AAEF;;;;;GAKG;AACH,wBAAsB,kBAAkB,CAAC,GAAG,EAAE,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,CAIlF;AA0FD,wBAAgB,gBAAgB,IAAI,OAAO,CAAC,OAAO,CAkNlD;AAED;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,IAAI,EAAE,OAAO,GAAG;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,CAMxG;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,OAAO,GAAG,uBAAuB,GAAG,SAAS,CAG1F"}
@@ -1,20 +1,31 @@
1
1
  /*
2
2
  * Express server implementation used for standby Actor mode.
3
+ *
4
+ * Serves two MCP protocol revisions on one endpoint:
5
+ * - stateful Streamable HTTP with sessions, per the 2025-era spec
6
+ * (https://modelcontextprotocol.io/specification/2025-11-25), via `@modelcontextprotocol/sdk`
7
+ * - stateless single requests, per the 2026-07-28 revision
8
+ * (https://modelcontextprotocol.io/specification/2026-07-28), via the v2 SDK
9
+ * (`@modelcontextprotocol/server` + `@modelcontextprotocol/node`)
3
10
  */
4
11
  var _a, _b;
5
12
  var _c;
6
13
  import { randomUUID } from 'node:crypto';
7
14
  import { fileURLToPath } from 'node:url';
15
+ import { localhostHostValidation, localhostOriginValidation, toNodeHandler, toWebRequest, } from '@modelcontextprotocol/node';
8
16
  import { InMemoryTaskStore } from '@modelcontextprotocol/sdk/experimental/tasks/stores/in-memory.js';
9
17
  import { StreamableHTTPServerTransport } from '@modelcontextprotocol/sdk/server/streamableHttp.js';
10
18
  import { InitializeRequestParamsSchema } from '@modelcontextprotocol/sdk/types.js';
19
+ import { createMcpHandler, isLegacyRequest } from '@modelcontextprotocol/server';
11
20
  import express from 'express';
12
21
  import log from '@apify/log';
13
22
  import { parseBooleanOrNull } from '@apify/utilities';
14
23
  import { ApifyClient } from './apify_client.js';
15
24
  import { buildMcpClientContext } from './mcp/client_context.js';
16
25
  import { ActorsMcpServer } from './mcp/server.js';
26
+ import { createStatelessServer } from './mcp/stateless_server.js';
17
27
  import { resolvePaymentProvider } from './payments/index.js';
28
+ import { sanitizeMezmoMessage } from './utils/logging.js';
18
29
  import { injectMcpSessionId } from './utils/mcp.js';
19
30
  import { getRequestOriginForClient } from './utils/mcp_clients.js';
20
31
  import { parseServerMode } from './utils/server_mode.js';
@@ -58,6 +69,24 @@ function extractApiTokenFromRequest(req) {
58
69
  return undefined;
59
70
  }
60
71
  }
72
+ /** The 401 body both eras send for a missing token, JSON-RPC-shaped like production's. */
73
+ const UNAUTHORIZED_RESPONSE_BODY = {
74
+ jsonrpc: '2.0',
75
+ error: {
76
+ code: -32001,
77
+ message: 'Unauthorized: Apify API token is missing. Pass it as `Authorization: Bearer <token>`, or set `?payment=<provider>` to use a third-party payment provider.',
78
+ },
79
+ id: null,
80
+ };
81
+ /**
82
+ * `WWW-Authenticate` challenge sent with that 401 (RFC 6750 §3), so a client is told how to
83
+ * authenticate and not merely that it failed. Same shape the SDK's `bearerAuthChallengeResponse`
84
+ * emits for a missing header, hand-written because that helper needs an OAuth token verifier and a
85
+ * protected-resource-metadata URL, and this server takes plain Apify API tokens with no PRM endpoint.
86
+ * Limitation: no `resource_metadata` parameter, so the token source is discoverable only by a human
87
+ * reading the description.
88
+ */
89
+ const UNAUTHORIZED_CHALLENGE = 'Bearer error="invalid_token", error_description="Apify API token missing. Create one at https://console.apify.com/settings/integrations"';
61
90
  /**
62
91
  * Returns the resolved token for a request, or sends a 401 response.
63
92
  * In payment mode, no token is required — returns `{ apifyToken: undefined }`.
@@ -69,21 +98,108 @@ function resolveRequestAuth(req, res, paymentProvider) {
69
98
  if (apifyToken)
70
99
  return { apifyToken };
71
100
  log.softFail('Apify API token missing on unauthenticated request', { statusCode: 401 });
72
- res.status(401).json({
73
- jsonrpc: '2.0',
74
- error: {
75
- code: -32001,
76
- message: 'Unauthorized: Apify API token is missing. Pass it as `Authorization: Bearer <token>`, or set `?payment=<provider>` to use a third-party payment provider.',
77
- },
78
- id: null,
79
- });
101
+ res.status(401).set('WWW-Authenticate', UNAUTHORIZED_CHALLENGE).json(UNAUTHORIZED_RESPONSE_BODY);
80
102
  return null;
81
103
  }
104
+ /**
105
+ * Whether the 2026-07-28 stateless path must answer this request instead of the stateful one.
106
+ * Uses the SDK's own discriminator: `true` covers claim-less traffic (2025-era `initialize` and
107
+ * follow-ups, body-less session GET/DELETE, and unparseable bodies). `false` covers everything the
108
+ * 2026-07-28 entry answers, including its own validation rejections, which must not be re-routed.
109
+ */
110
+ export async function isStatelessRequest(req) {
111
+ // `express.json()` already parsed the body, so nothing is read from the stream — which is what
112
+ // lets the narrow shape above stand in for a full `IncomingMessage`.
113
+ return !(await isLegacyRequest(await toWebRequest(req, req.body)));
114
+ }
115
+ /**
116
+ * Serves one 2026-07-28 request: no session id, no handshake, nothing retained afterwards.
117
+ * URL-parameter handling is deliberately a copy of the stateful branch's, so that branch stays
118
+ * untouched by this change.
119
+ *
120
+ * The missing-token 401 is resolved inside the server factory, not up front: SEP-2243 requires
121
+ * framing rejections (400/-32020) regardless of auth state, and the SDK entry runs its validation
122
+ * ladder before invoking the factory.
123
+ *
124
+ * Dev-only shape: a facade is built per request, so `?actors=` re-fetches Actor metadata every time
125
+ * (bar a `server/discover` probe, which loads no tools). A host may share one facade across requests
126
+ * instead — snapshots are per-request either way.
127
+ */
128
+ async function serveStatelessRequest(req, res, taskStore) {
129
+ var _a, _b;
130
+ const urlParams = new URL(req.url, `http://${req.headers.host}`).searchParams;
131
+ const telemetryEnabled = (_b = (_a = parseBooleanOrNull(urlParams.get('telemetry-enabled'))) !== null && _a !== void 0 ? _a : parseBooleanOrNull(process.env.TELEMETRY_ENABLED)) !== null && _b !== void 0 ? _b : true;
132
+ const uiParam = urlParams.get('ui');
133
+ const serverMode = uiParam !== null ? parseServerMode(uiParam) : parseServerMode(process.env.UI_MODE);
134
+ const paymentProvider = await resolvePaymentProvider(urlParams.get('payment'));
135
+ // No token required in payment mode, mirroring `resolveRequestAuth`.
136
+ const apifyToken = paymentProvider ? undefined : extractApiTokenFromRequest(req);
137
+ let unauthorized = false;
138
+ const handler = createMcpHandler(async ({ requestInfo }) => {
139
+ // The SDK calls this factory before answering any modern method, `server/discover`
140
+ // included — so gating it on auth would make a client need a token to learn which
141
+ // revisions and capabilities this endpoint serves. Let discovery through, and skip the
142
+ // Actor-metadata fetch for it: discovery reports capabilities and configuration-level
143
+ // instructions, neither of which reads the tool set. The revision requires the method in
144
+ // a header, cross-checked against the body before this factory runs, so it is
145
+ // authoritative here.
146
+ const isDiscoverProbe = (requestInfo === null || requestInfo === void 0 ? void 0 : requestInfo.headers.get('mcp-method')) === 'server/discover';
147
+ // Reached only after the validation ladder passed (see the doc comment above).
148
+ if (!isDiscoverProbe && !paymentProvider && !apifyToken) {
149
+ unauthorized = true;
150
+ throw new Error('Apify API token missing on unauthenticated request');
151
+ }
152
+ const mcpServer = new ActorsMcpServer({
153
+ taskStore,
154
+ setupSigintHandler: false,
155
+ transportType: 'http',
156
+ telemetry: { enabled: telemetryEnabled },
157
+ serverMode,
158
+ paymentProvider,
159
+ token: apifyToken,
160
+ });
161
+ // Client identity arrives per request in the `_meta` envelope (there is no initialize
162
+ // handshake), so this fetch carries no request-origin tag.
163
+ if (!isDiscoverProbe) {
164
+ await mcpServer.loadToolsFromUrl(req.url, new ApifyClient({ token: apifyToken }));
165
+ }
166
+ return createStatelessServer(mcpServer);
167
+ }, {
168
+ legacy: 'reject',
169
+ onerror: (error) => log.softFail('Stateless MCP request rejected', { errMessage: sanitizeMezmoMessage(error.message) }),
170
+ });
171
+ try {
172
+ // The entry never derives `authInfo` from headers itself; pass the extracted token through
173
+ // for handlers to read as `ctx.http.authInfo`. No OAuth client here, hence empty `clientId`.
174
+ if (apifyToken) {
175
+ req.auth = { token: apifyToken, clientId: '', scopes: [] };
176
+ }
177
+ // The factory's throw surfaces from the entry as a 500; swap in the 401 the auth gate owns.
178
+ await toNodeHandler({
179
+ ...handler,
180
+ fetch: async (request, options) => {
181
+ const response = await handler.fetch(request, options);
182
+ if (!unauthorized)
183
+ return response;
184
+ log.softFail('Apify API token missing on unauthenticated request', { statusCode: 401 });
185
+ return Response.json(UNAUTHORIZED_RESPONSE_BODY, {
186
+ status: 401,
187
+ headers: { 'WWW-Authenticate': UNAUTHORIZED_CHALLENGE },
188
+ });
189
+ },
190
+ })(req, res, req.body);
191
+ }
192
+ finally {
193
+ await handler.close();
194
+ }
195
+ }
82
196
  export function createExpressApp() {
83
197
  const app = express();
84
198
  const mcpServers = {};
85
199
  const transports = {};
86
200
  const taskStore = new InMemoryTaskStore();
201
+ const validateHost = localhostHostValidation();
202
+ const validateOrigin = localhostOriginValidation();
87
203
  function respondWithError(res, error, logMessage, statusCode = 500) {
88
204
  if (statusCode >= 500) {
89
205
  // Server errors (>= 500) - log as exception
@@ -108,12 +224,24 @@ export function createExpressApp() {
108
224
  });
109
225
  }
110
226
  }
227
+ // DNS-rebinding protection, before parsing any body: reject non-local Host headers (a rebound
228
+ // hostname resolves here without a browser Origin) and non-local Origins. See apify/apify-mcp-server#1140.
229
+ app.use((req, res, next) => {
230
+ if (validateHost(req, res) && validateOrigin(req, res))
231
+ next();
232
+ });
111
233
  // express.json() middleware to parse JSON bodies, before the POST / route.
112
234
  app.use(express.json());
113
235
  app.post('/', async (req, res) => {
114
236
  var _a, _b;
115
237
  log.info('Received MCP request:', req.body);
116
238
  try {
239
+ // Both protocol eras are served on this one endpoint; everything the stateless path does
240
+ // not claim falls through to the stateful path below, unchanged.
241
+ if (await isStatelessRequest(req)) {
242
+ await serveStatelessRequest(req, res, taskStore);
243
+ return;
244
+ }
117
245
  // Check for existing session ID
118
246
  const sessionId = req.headers['mcp-session-id'];
119
247
  const initializeMessage = extractInitializeMessage(req.body);
@@ -262,12 +390,9 @@ export function createExpressApp() {
262
390
  return app;
263
391
  }
264
392
  /**
265
- * Finds the `initialize` message in a (possibly batched) request body, matching on `method`
266
- * alone like the pre-refactor `isInitializeRequest` did. This must stay a loose tag check: a
267
- * body with `method: 'initialize'` but malformed/incomplete `params` still needs to enter the
268
- * initialize branch below so the SDK's own initialize-schema validation produces the accurate
269
- * protocol error, instead of falling through to the generic "Mcp-Session-Id header is required"
270
- * 400 from the no-session branch.
393
+ * Finds the `initialize` message in a (possibly batched) request body by `method` tag alone.
394
+ * Deliberately loose: a body with malformed `params` must still enter the initialize branch so the
395
+ * SDK's schema validation produces the accurate protocol error instead of the generic 400.
271
396
  */
272
397
  export function extractInitializeMessage(body) {
273
398
  const messages = Array.isArray(body) ? body : [body];
@@ -1 +1 @@
1
- {"version":3,"file":"dev_server.js","sourceRoot":"","sources":["../src/dev_server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dev_server.js","sourceRoot":"","sources":["../src/dev_server.ts"],"names":[],"mappings":"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"}
package/dist/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
1
  import { ActorsMcpServer } from './mcp/server.js';
2
- export { ActorsMcpServer };
2
+ import { createStatelessServer } from './mcp/stateless_server.js';
3
+ export { ActorsMcpServer, createStatelessServer };
3
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,CAAC"}
package/dist/index.js CHANGED
@@ -1,7 +1,9 @@
1
1
  /*
2
2
  This file provides essential functions and tools for MCP servers, serving as a library.
3
- The ActorsMcpServer should be the only class exported from the package
3
+ Keep this surface minimal: the `ActorsMcpServer` facade, plus `createStatelessServer` — the
4
+ per-request registration a host needs to serve 2026-07-28 traffic from one facade.
4
5
  */
5
6
  import { ActorsMcpServer } from './mcp/server.js';
6
- export { ActorsMcpServer };
7
+ import { createStatelessServer } from './mcp/stateless_server.js';
8
+ export { ActorsMcpServer, createStatelessServer };
7
9
  //# 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,iBAAiB,CAAC;AAElD,OAAO,EAAE,eAAe,EAAE,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;EAIE;AAEF,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,qBAAqB,EAAE,MAAM,2BAA2B,CAAC;AAElE,OAAO,EAAE,eAAe,EAAE,qBAAqB,EAAE,CAAC"}
@@ -0,0 +1,75 @@
1
+ /**
2
+ * Adapter for the 2025-era MCP protocol (https://modelcontextprotocol.io/specification/2025-11-25),
3
+ * served via the v1 SDK (`@modelcontextprotocol/sdk`): owns the SDK `Server`, request handlers,
4
+ * notifications, and transport lifecycle, reading shared Apify state through
5
+ * {@link LegacyMcpServerHost}. Sibling of `stateless_server.ts`, the 2026-07-28 adapter.
6
+ */
7
+ import type { TaskStore } from '@modelcontextprotocol/sdk/experimental/tasks/interfaces.js';
8
+ import { Server } from '@modelcontextprotocol/sdk/server/index.js';
9
+ import type { Transport } from '@modelcontextprotocol/sdk/shared/transport.js';
10
+ import type { InitializeRequest } from '@modelcontextprotocol/sdk/types.js';
11
+ import type { ApifyClient } from '../apify_client.js';
12
+ import type { createPromptService } from '../prompts/prompt_service.js';
13
+ import type { createResourceService } from '../resources/resource_service.js';
14
+ import type { ActorsMcpServerOptions, ActorStore, ApifyRequestParams, SERVER_MODE, TelemetryEnv, ToolEntry } from '../types.js';
15
+ import type { McpClientContext } from './client_context.js';
16
+ /**
17
+ * Read-facing view of the shared `ActorsMcpServer` facade that the legacy adapter depends on. Keeps
18
+ * the coupling one-directional and greppable: the adapter reads live shared state (tools mutate after
19
+ * construction) and neutral services, and never sees the concrete facade class.
20
+ */
21
+ export interface LegacyMcpServerHost {
22
+ readonly tools: Map<string, ToolEntry>;
23
+ readonly serverMode: SERVER_MODE;
24
+ readonly actorStore?: ActorStore;
25
+ readonly clientContext: McpClientContext | undefined;
26
+ readonly telemetryEnabled: boolean;
27
+ readonly telemetryEnv: TelemetryEnv;
28
+ readonly options: ActorsMcpServerOptions;
29
+ readonly promptService: ReturnType<typeof createPromptService>;
30
+ readonly resourceService: ReturnType<typeof createResourceService>;
31
+ resolveApifyToken(meta?: ApifyRequestParams['_meta']): string | undefined;
32
+ resolveApifyClient(params: ApifyRequestParams): ApifyClient | undefined;
33
+ getServerInstructions(): string;
34
+ applyInitialize(request: InitializeRequest): Promise<void>;
35
+ }
36
+ /**
37
+ * v1 SDK adapter. One per serving unit, constructed only by `ActorsMcpServer`.
38
+ */
39
+ export declare class LegacyMcpServer {
40
+ readonly server: Server;
41
+ readonly taskStore: TaskStore;
42
+ private readonly host;
43
+ private sigintHandler;
44
+ private currentLogLevel;
45
+ constructor(host: LegacyMcpServerHost);
46
+ /**
47
+ * Override the SDK's `initialize` handler to run mode resolution and pending-source flush
48
+ * before `InitializeResult` is sent. `server.oninitialized` won't do: the SDK dispatches
49
+ * notification handlers fire-and-forget, so a follow-up `tools/list` could race past them.
50
+ */
51
+ private setupInitializeHandler;
52
+ private setupErrorHandling;
53
+ private setupLoggingProxy;
54
+ private setupLoggingHandlers;
55
+ private setupResourceHandlers;
56
+ /**
57
+ * Sets up MCP request handlers for prompts. The prompt service throws domain errors; the
58
+ * boundary maps them to `McpError` so wire output is unchanged.
59
+ */
60
+ private setupPromptHandlers;
61
+ /**
62
+ * Fetches a task by ID, softFail-logging and throwing a client-facing McpError if it doesn't exist.
63
+ */
64
+ private getTaskOrThrow;
65
+ /**
66
+ * Sets up MCP request handlers for long-running tasks.
67
+ * Each handler reads `_meta.mcpSessionId` (injected at the transport layer) to isolate
68
+ * per-session task stores.
69
+ */
70
+ private setupTaskHandlers;
71
+ private setupToolHandlers;
72
+ connect(transport: Transport): Promise<void>;
73
+ close(): Promise<void>;
74
+ }
75
+ //# sourceMappingURL=legacy_server.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"legacy_server.d.ts","sourceRoot":"","sources":["../../src/mcp/legacy_server.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,4DAA4D,CAAC;AAE5F,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAC/E,OAAO,KAAK,EAAE,iBAAiB,EAA0B,MAAM,oCAAoC,CAAC;AAsBpG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAEtD,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACxE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kCAAkC,CAAC;AAG9E,OAAO,KAAK,EACR,sBAAsB,EACtB,UAAU,EACV,kBAAkB,EAElB,WAAW,EACX,YAAY,EACZ,SAAS,EAEZ,MAAM,aAAa,CAAC;AAIrB,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;AAwB5D;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;IACvC,QAAQ,CAAC,UAAU,EAAE,WAAW,CAAC;IACjC,QAAQ,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC;IACjC,QAAQ,CAAC,aAAa,EAAE,gBAAgB,GAAG,SAAS,CAAC;IACrD,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,YAAY,EAAE,YAAY,CAAC;IACpC,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,QAAQ,CAAC,aAAa,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAC;IAC/D,QAAQ,CAAC,eAAe,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;IACnE,iBAAiB,CAAC,IAAI,CAAC,EAAE,kBAAkB,CAAC,OAAO,CAAC,GAAG,MAAM,GAAG,SAAS,CAAC;IAC1E,kBAAkB,CAAC,MAAM,EAAE,kBAAkB,GAAG,WAAW,GAAG,SAAS,CAAC;IACxE,qBAAqB,IAAI,MAAM,CAAC;IAChC,eAAe,CAAC,OAAO,EAAE,iBAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9D;AAED;;GAEG;AACH,qBAAa,eAAe;IACxB,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,SAAS,EAAE,SAAS,CAAC;IACrC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAsB;IAC3C,OAAO,CAAC,aAAa,CAAoC;IACzD,OAAO,CAAC,eAAe,CAAU;gBAErB,IAAI,EAAE,mBAAmB;IA8CrC;;;;OAIG;IACH,OAAO,CAAC,sBAAsB;IAwB9B,OAAO,CAAC,kBAAkB;IAyB1B,OAAO,CAAC,iBAAiB;IAazB,OAAO,CAAC,oBAAoB;IAW5B,OAAO,CAAC,qBAAqB;IAuB7B;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAY3B;;OAEG;YACW,cAAc;IAU5B;;;;OAIG;IACH,OAAO,CAAC,iBAAiB;IAyEzB,OAAO,CAAC,iBAAiB;IAwRnB,OAAO,CAAC,SAAS,EAAE,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAQ/B"}