@1mcp/agent 0.39.0-beta.5 → 0.39.1

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 (68) hide show
  1. package/build/admin/assets/{admin-OAuthServicesWorkspace-zhBb8xAF.js → admin-OAuthServicesWorkspace-DtA8Qn7j.js} +1 -1
  2. package/build/admin/assets/{admin-console-CnUk1QF1.js → admin-console-4zoN0uyH.js} +3 -3
  3. package/build/admin/index.html +1 -1
  4. package/build/config/configManager.d.ts +7 -1
  5. package/build/config/configManager.d.ts.map +1 -1
  6. package/build/config/configManager.js +8 -1
  7. package/build/config/configManager.js.map +1 -1
  8. package/build/constants/mcp.d.ts +1 -1
  9. package/build/constants/mcp.d.ts.map +1 -1
  10. package/build/constants/mcp.js +1 -1
  11. package/build/constants/mcp.js.map +1 -1
  12. package/build/core/capabilities/capabilityPagination.d.ts.map +1 -1
  13. package/build/core/capabilities/capabilityPagination.js +4 -1
  14. package/build/core/capabilities/capabilityPagination.js.map +1 -1
  15. package/build/core/configChangeHandler.js +2 -2
  16. package/build/core/configChangeHandler.js.map +1 -1
  17. package/build/core/loading/mcpLoadingManager.d.ts +2 -1
  18. package/build/core/loading/mcpLoadingManager.d.ts.map +1 -1
  19. package/build/core/loading/mcpLoadingManager.js +13 -7
  20. package/build/core/loading/mcpLoadingManager.js.map +1 -1
  21. package/build/core/types/server.d.ts +4 -0
  22. package/build/core/types/server.d.ts.map +1 -1
  23. package/build/sdk/legacy/client/runtime/clientManager.d.ts +2 -1
  24. package/build/sdk/legacy/client/runtime/clientManager.d.ts.map +1 -1
  25. package/build/sdk/legacy/client/runtime/clientManager.js +4 -0
  26. package/build/sdk/legacy/client/runtime/clientManager.js.map +1 -1
  27. package/build/sdk/legacy/server/protocol/notificationHandlers.d.ts.map +1 -1
  28. package/build/sdk/legacy/server/protocol/notificationHandlers.js +4 -1
  29. package/build/sdk/legacy/server/protocol/notificationHandlers.js.map +1 -1
  30. package/build/sdk/legacy/server/protocol/resourceSubscriptions.d.ts +3 -1
  31. package/build/sdk/legacy/server/protocol/resourceSubscriptions.d.ts.map +1 -1
  32. package/build/sdk/legacy/server/protocol/resourceSubscriptions.js +126 -17
  33. package/build/sdk/legacy/server/protocol/resourceSubscriptions.js.map +1 -1
  34. package/build/sdk/legacy/server/runtime/connectionManager.d.ts.map +1 -1
  35. package/build/sdk/legacy/server/runtime/connectionManager.js +5 -1
  36. package/build/sdk/legacy/server/runtime/connectionManager.js.map +1 -1
  37. package/build/sdk/legacy/server/runtime/serverManager.d.ts +8 -0
  38. package/build/sdk/legacy/server/runtime/serverManager.d.ts.map +1 -1
  39. package/build/sdk/legacy/server/runtime/serverManager.js +93 -48
  40. package/build/sdk/legacy/server/runtime/serverManager.js.map +1 -1
  41. package/build/sdk/legacy/server/runtime/templateServerManager.d.ts +8 -0
  42. package/build/sdk/legacy/server/runtime/templateServerManager.d.ts.map +1 -1
  43. package/build/sdk/legacy/server/runtime/templateServerManager.js +101 -21
  44. package/build/sdk/legacy/server/runtime/templateServerManager.js.map +1 -1
  45. package/build/sdk/legacy/transport/http/modernInboundLegacyBridge.js +1 -1
  46. package/build/sdk/legacy/transport/http/modernInboundLegacyBridge.js.map +1 -1
  47. package/build/sdk/legacy/transport/stdioProxyTransport.d.ts +2 -0
  48. package/build/sdk/legacy/transport/stdioProxyTransport.d.ts.map +1 -1
  49. package/build/sdk/legacy/transport/stdioProxyTransport.js +31 -4
  50. package/build/sdk/legacy/transport/stdioProxyTransport.js.map +1 -1
  51. package/build/transport/http/routes/modernHttpRoutes.d.ts.map +1 -1
  52. package/build/transport/http/routes/modernHttpRoutes.js +70 -12
  53. package/build/transport/http/routes/modernHttpRoutes.js.map +1 -1
  54. package/build/transport/http/routes/modernInteractionBinding.d.ts.map +1 -1
  55. package/build/transport/http/routes/modernInteractionBinding.js +6 -3
  56. package/build/transport/http/routes/modernInteractionBinding.js.map +1 -1
  57. package/build/transport/http/routes/modernSubscriptions.d.ts +2 -1
  58. package/build/transport/http/routes/modernSubscriptions.d.ts.map +1 -1
  59. package/build/transport/http/routes/modernSubscriptions.js +9 -6
  60. package/build/transport/http/routes/modernSubscriptions.js.map +1 -1
  61. package/build/transport/http/routes/modernTemplateContext.d.ts +15 -0
  62. package/build/transport/http/routes/modernTemplateContext.d.ts.map +1 -0
  63. package/build/transport/http/routes/modernTemplateContext.js +48 -0
  64. package/build/transport/http/routes/modernTemplateContext.js.map +1 -0
  65. package/build/transport/http/routes/modernToolHeaderRegistry.d.ts.map +1 -1
  66. package/build/transport/http/routes/modernToolHeaderRegistry.js +2 -2
  67. package/build/transport/http/routes/modernToolHeaderRegistry.js.map +1 -1
  68. package/package.json +3 -3
@@ -6,6 +6,7 @@ import { MCP_SERVER_NAME, MCP_SERVER_VERSION, STREAMABLE_HTTP_ENDPOINT } from '.
6
6
  import { createCatalogCursorOwner, isCatalogCursorOwnerCurrent, revokeCatalogCursorOwner, } from '../../../core/capabilities/capabilityCatalog.js';
7
7
  import { createResourceRouteOwner, revokeResourceRouteOwner, } from '../../../core/capabilities/capabilityVisibility.js';
8
8
  import { MAX_RUNTIME_CATALOG_SCOPES, pruneRuntimeResourceRoutes, RUNTIME_CATALOG_SCOPE_TTL_MS, } from '../../../core/capabilities/runtimeCapabilityCatalog.js';
9
+ import { filterConnectionsForSession } from '../../../core/protocol/requestHandlerUtils.js';
9
10
  import { ModernInboundEraAdapter } from '../../../gateway/adapters/modern/modernInboundEraAdapter.js';
10
11
  import { createEffectiveRequestAuthority } from '../../../gateway/contracts/effectiveRequestAuthority.js';
11
12
  import { gatewayOperationSchema } from '../../../gateway/contracts/gatewayRequest.js';
@@ -22,8 +23,11 @@ import { validateInteractionRequest, validateInteractionResponse, } from '../../
22
23
  import { withMcpTraceContext } from '../../../observability/tracing/context.js';
23
24
  import { withRequestProgress } from '../../../sdk/contracts/requestProgress.js';
24
25
  import { getAuthInfo, getPresetName, getTagExpression, getTagFilterMode, getTagQuery, getValidatedTags, revalidateAuthInfo, } from '../middlewares/scopeAuthMiddleware.js';
26
+ import { extractTemplateContextRequest } from '../utils/contextExtractor.js';
27
+ import { authorizeRequestTemplateContext } from '../utils/templateContextAuthority.js';
25
28
  import { createModernInteractionBinding, isModernInteractionBindingCurrent, watchModernInteractionBinding, withModernInteractionBinding, } from './modernInteractionBinding.js';
26
29
  import { cancelModernSubscription, closeModernSubscriptions, getModernSubscriptionCapabilities, serveModernSubscription, } from './modernSubscriptions.js';
30
+ import { ModernTemplateContextSessions } from './modernTemplateContext.js';
27
31
  import { resolveModernToolHeaderRegistry, toolHeaderProjectionValidator } from './modernToolHeaderRegistry.js';
28
32
  const DEFAULT_MODERN_REQUEST_TIMEOUT_MS = 60_000;
29
33
  function buildConfig(req, res) {
@@ -229,9 +233,10 @@ export async function writeWebResponse(response, res) {
229
233
  }
230
234
  }
231
235
  export function setupModernHttpRoutes(router, serverManager, middlewares, createBridge, requestPolicy, requestTimeoutMs = DEFAULT_MODERN_REQUEST_TIMEOUT_MS) {
236
+ const templateContexts = new ModernTemplateContextSessions();
232
237
  const catalogOwners = new Map();
233
238
  let catalogOwnersClosed = false;
234
- const catalogOwnerFor = (auth, label) => {
239
+ const catalogOwnerFor = (auth, label, config) => {
235
240
  if (catalogOwnersClosed)
236
241
  throw new ProtocolError(-32000, `${label} is unavailable`);
237
242
  const now = Date.now();
@@ -249,7 +254,7 @@ export function setupModernHttpRoutes(router, serverManager, middlewares, create
249
254
  catalogOwners.delete(key);
250
255
  }
251
256
  // Only middleware-verified grant facts enter this private key. Anonymous requests retain listener authority.
252
- const key = auth
257
+ const authorityKey = auth
253
258
  ? createHash('sha256')
254
259
  .update(JSON.stringify([
255
260
  auth.token,
@@ -259,27 +264,45 @@ export function setupModernHttpRoutes(router, serverManager, middlewares, create
259
264
  ]))
260
265
  .digest('hex')
261
266
  : 'anonymous';
267
+ const key = JSON.stringify([authorityKey, config.logicalTemplateBindingId]);
262
268
  const retained = catalogOwners.get(key);
263
269
  if (retained)
264
270
  return retained;
265
271
  if (catalogOwners.size >= MAX_RUNTIME_CATALOG_SCOPES)
266
272
  throw new ProtocolError(-32000, `${label} capacity exceeded`);
267
- const created = {};
273
+ const created = { templateBindingId: config.logicalTemplateBindingId };
268
274
  catalogOwners.set(key, created);
269
275
  return created;
270
276
  };
271
- const resourceOwnerFor = (auth) => {
272
- const retained = catalogOwnerFor(auth, 'Resource route owner');
277
+ const resourceOwnerFor = (auth, config) => {
278
+ const retained = catalogOwnerFor(auth, 'Resource route owner', config);
273
279
  retained.resourceOwner ??= createResourceRouteOwner();
274
280
  retained.resourceLastAccess = Date.now();
275
281
  return retained.resourceOwner;
276
282
  };
277
- const cursorOwnerFor = (auth) => {
278
- const retained = catalogOwnerFor(auth, 'Capability cursor owner');
283
+ const cursorOwnerFor = (auth, config) => {
284
+ const retained = catalogOwnerFor(auth, 'Capability cursor owner', config);
279
285
  retained.cursorOwner ??= createCatalogCursorOwner();
280
286
  return retained.cursorOwner;
281
287
  };
288
+ const unwatchTemplates = serverManager.registerLogicalTemplateSessionCleanup?.((sessionId) => {
289
+ const binding = templateContexts.forget(sessionId);
290
+ if (!binding)
291
+ return;
292
+ for (const [key, retained] of catalogOwners) {
293
+ if (retained.templateBindingId !== binding.id)
294
+ continue;
295
+ if (retained.resourceOwner)
296
+ revokeResourceRouteOwner(retained.resourceOwner);
297
+ if (retained.cursorOwner)
298
+ revokeCatalogCursorOwner(retained.cursorOwner);
299
+ catalogOwners.delete(key);
300
+ }
301
+ pruneRuntimeResourceRoutes(serverManager.getClients());
302
+ });
282
303
  serverManager.registerCleanup(async () => {
304
+ unwatchTemplates?.();
305
+ templateContexts.clear();
283
306
  catalogOwnersClosed = true;
284
307
  for (const retained of catalogOwners.values()) {
285
308
  if (retained.resourceOwner)
@@ -319,6 +342,7 @@ export function setupModernHttpRoutes(router, serverManager, middlewares, create
319
342
  router.delete(STREAMABLE_HTTP_ENDPOINT, modernAdmission, ...middlewares, rejectUnsupportedTransportMethod);
320
343
  router.post(STREAMABLE_HTTP_ENDPOINT, modernAdmission, ...middlewares, async (req, res) => {
321
344
  const disconnect = bindDisconnectAbort(req, res);
345
+ let releaseTemplateSession;
322
346
  try {
323
347
  const request = webRequest(req, disconnect.controller.signal);
324
348
  const rejected = (!requestPolicy.allowsHost(req.get('host')) ? hostHeaderValidationResponse(request, []) : undefined) ??
@@ -329,7 +353,28 @@ export function setupModernHttpRoutes(router, serverManager, middlewares, create
329
353
  await writeWebResponse(rejected, res);
330
354
  return;
331
355
  }
332
- const config = buildConfig(req, res);
356
+ let config = buildConfig(req, res);
357
+ const prepareTemplates = async () => {
358
+ const extracted = extractTemplateContextRequest(req);
359
+ if (!extracted)
360
+ return;
361
+ const authorization = authorizeRequestTemplateContext({
362
+ ...extracted,
363
+ transportSessionId: req.get('mcp-session-id'),
364
+ });
365
+ if (authorization.status !== 'trusted')
366
+ return;
367
+ const binding = templateContexts.bind(authorization.context);
368
+ config = {
369
+ ...config,
370
+ context: binding.context,
371
+ logicalTemplateSessionId: binding.sessionId,
372
+ logicalTemplateBindingId: binding.id,
373
+ };
374
+ await serverManager.prepareLogicalTemplateSession(binding.sessionId, binding.context, config);
375
+ disconnect.controller.signal.throwIfAborted();
376
+ releaseTemplateSession = serverManager.retainLogicalTemplateSession(binding.sessionId);
377
+ };
333
378
  const method = req.body?.method;
334
379
  if (method === 'subscriptions/listen' || method === 'notifications/cancelled') {
335
380
  // Preserve the pinned SDK's envelope, header, version and wire validation ladder.
@@ -345,8 +390,9 @@ export function setupModernHttpRoutes(router, serverManager, middlewares, create
345
390
  finally {
346
391
  await validation.close();
347
392
  }
393
+ await prepareTemplates();
348
394
  if (method === 'subscriptions/listen') {
349
- await serveModernSubscription(req, res, serverManager, config, createBridge, disconnect.controller.signal);
395
+ await serveModernSubscription(req, res, serverManager, config, createBridge, disconnect.controller.signal, resourceOwnerFor(getAuthInfo(res), config));
350
396
  }
351
397
  else {
352
398
  cancelModernSubscription(req, res, serverManager, config);
@@ -358,6 +404,7 @@ export function setupModernHttpRoutes(router, serverManager, middlewares, create
358
404
  let activeHeaderRegistry;
359
405
  let ownsHeaderAdmission = false;
360
406
  const handler = createMcpHandler(async () => {
407
+ await prepareTemplates();
361
408
  // The SDK validates the envelope and standard headers before entering
362
409
  // this factory. Bound live catalog observers before their first await.
363
410
  if (method === 'tools/call') {
@@ -376,7 +423,13 @@ export function setupModernHttpRoutes(router, serverManager, middlewares, create
376
423
  const headerRegistry = await resolveModernToolHeaderRegistry(serverManager, config, method, req.body?.params, disconnect.controller.signal);
377
424
  activeHeaderRegistry = headerRegistry;
378
425
  const capabilities = { ...getModernSubscriptionCapabilities(serverManager, config), completions: {} };
379
- const product = new McpServer({ name: MCP_SERVER_NAME, version: MCP_SERVER_VERSION }, { capabilities: {} });
426
+ const instructionConnections = serverManager.getClients();
427
+ const instructions = serverManager
428
+ .getInstructionAggregator?.()
429
+ ?.getFilteredInstructions(config, instructionConnections.size
430
+ ? filterConnectionsForSession(instructionConnections, config.logicalTemplateSessionId)
431
+ : instructionConnections);
432
+ const product = new McpServer({ name: MCP_SERVER_NAME, version: MCP_SERVER_VERSION }, { capabilities: {}, instructions: instructions || undefined });
380
433
  const server = product.server;
381
434
  server.registerCapabilities(capabilities);
382
435
  const headerTool = headerRegistry?.headerTool;
@@ -404,7 +457,9 @@ export function setupModernHttpRoutes(router, serverManager, middlewares, create
404
457
  const initialInputs = context.mcpReq.requestState() === undefined
405
458
  ? captureNativeInitialInputResponses(operation, message.params, context.mcpReq.inputResponses)
406
459
  : undefined;
407
- const resourceOwner = operation === 'resources/read' ? resourceOwnerFor(getAuthInfo(res)) : undefined;
460
+ const resourceOwner = ['resources/read', 'resources/list', 'resources/templates/list'].includes(operation)
461
+ ? resourceOwnerFor(getAuthInfo(res), config)
462
+ : undefined;
408
463
  // Enabled lazy mode reserves this unprefixed operation for the internal
409
464
  // meta-tool catalog. Header-registry admission and the authoritative
410
465
  // handler still resolve and fence that internal route before execution.
@@ -412,7 +467,9 @@ export function setupModernHttpRoutes(router, serverManager, middlewares, create
412
467
  message.method === 'tools/call' &&
413
468
  message.params.name === 'tool_list' &&
414
469
  serverManager.getLazyLoadingOrchestrator?.()?.isEnabled() === true;
415
- const catalogCursorOwner = nativeToolList ? cursorOwnerFor(getAuthInfo(res)) : undefined;
470
+ const catalogCursorOwner = nativeToolList
471
+ ? cursorOwnerFor(getAuthInfo(res), config)
472
+ : undefined;
416
473
  const capabilities = context.mcpReq.envelope?.['io.modelcontextprotocol/clientCapabilities'] ?? {};
417
474
  const logLevel = context.mcpReq.envelope?.['io.modelcontextprotocol/logLevel'];
418
475
  // Native catalog reads have no provider interaction route to discover.
@@ -507,6 +564,7 @@ export function setupModernHttpRoutes(router, serverManager, middlewares, create
507
564
  }
508
565
  }
509
566
  finally {
567
+ releaseTemplateSession?.();
510
568
  disconnect.cleanup();
511
569
  }
512
570
  });
@@ -1 +1 @@
1
- {"version":3,"file":"modernHttpRoutes.js","sourceRoot":"","sources":["../../../../src/transport/http/routes/modernHttpRoutes.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modernHttpRoutes.js","sourceRoot":"","sources":["../../../../src/transport/http/routes/modernHttpRoutes.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"modernInteractionBinding.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/routes/modernInteractionBinding.ts"],"names":[],"mappings":"AAQA,OAAO,EAA8B,KAAK,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAKrH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,uBAAuB,EAA2C,MAAM,0BAA0B,CAAC;AACjH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAEjF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AAExF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wDAAwD,CAAC;AAcvF,4FAA4F;AAC5F,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAQ7G;AAqBD,sFAAsF;AACtF,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAEtF;AAED,iGAAiG;AACjG,wBAAgB,4BAA4B,CAAC,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAIpH;AAED,uGAAuG;AACvG,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,EAC1C,MAAM,EAAE,uBAAuB,EAC/B,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,QAAQ,GAAG,SAAS,EAC1B,YAAY,EAAE,OAAO,EACrB,MAAM,CAAC,EAAE,WAAW,EACpB,aAAa,CAAC,EAAE,kBAAkB,GACjC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CA6FzC"}
1
+ {"version":3,"file":"modernInteractionBinding.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/routes/modernInteractionBinding.ts"],"names":[],"mappings":"AAQA,OAAO,EAA8B,KAAK,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAKrH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,EAAE,uBAAuB,EAA2C,MAAM,0BAA0B,CAAC;AACjH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,0CAA0C,CAAC;AAEjF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,+CAA+C,CAAC;AAExF,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,wDAAwD,CAAC;AAcvF,4FAA4F;AAC5F,wBAAgB,6BAA6B,CAAC,OAAO,EAAE,kBAAkB,EAAE,UAAU,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI,CAQ7G;AAqBD,sFAAsF;AACtF,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,kBAAkB,GAAG,OAAO,CAEtF;AAED,iGAAiG;AACjG,wBAAgB,4BAA4B,CAAC,CAAC,EAAE,OAAO,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAIpH;AAED,uGAAuG;AACvG,wBAAsB,8BAA8B,CAClD,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,EAC1C,MAAM,EAAE,uBAAuB,EAC/B,SAAS,EAAE,gBAAgB,EAC3B,MAAM,EAAE,OAAO,EACf,IAAI,EAAE,QAAQ,GAAG,SAAS,EAC1B,YAAY,EAAE,OAAO,EACrB,MAAM,CAAC,EAAE,WAAW,EACpB,aAAa,CAAC,EAAE,kBAAkB,GACjC,OAAO,CAAC,kBAAkB,GAAG,SAAS,CAAC,CAmGzC"}
@@ -73,10 +73,13 @@ export async function createModernInteractionBinding(manager, config, operation,
73
73
  if (typeof publicIdentity !== 'string')
74
74
  return undefined;
75
75
  const connections = manager.getClients();
76
- const visible = FilteringService.getFilteredConnections(filterConnectionsForSession(connections, undefined), config);
77
- let visibility = createCapabilityVisibility(Array.from(visible, ([key, connection]) => [key, connection.name || key]), undefined, { ...config });
76
+ const visible = FilteringService.getFilteredConnections(filterConnectionsForSession(connections, config.logicalTemplateSessionId), config);
77
+ let visibility = createCapabilityVisibility(Array.from(visible, ([key, connection]) => [key, connection.name || key]), config.logicalTemplateSessionId, { ...config });
78
78
  if (kind === 'resources') {
79
- visibility = { ...resolveCapabilityVisibility(connections, config, undefined, 'resources'), resourceOwner };
79
+ visibility = {
80
+ ...resolveCapabilityVisibility(connections, config, config.logicalTemplateSessionId, 'resources'),
81
+ resourceOwner,
82
+ };
80
83
  }
81
84
  const serverConfigs = getConfiguredServerTargets();
82
85
  const snapshot = await acquireRuntimeCapabilityCatalog(connections, visibility, kind === 'resources' ? { signal } : { serverConfigs, signal });
@@ -1 +1 @@
1
- {"version":3,"file":"modernInteractionBinding.js","sourceRoot":"","sources":["../../../../src/transport/http/routes/modernInteractionBinding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modernInteractionBinding.js","sourceRoot":"","sources":["../../../../src/transport/http/routes/modernInteractionBinding.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,4 @@
1
+ import { type ResourceRouteOwner } from '../../../core/capabilities/capabilityVisibility.js';
1
2
  import type { ServerManager } from '../../../core/server/serverManager.js';
2
3
  import { type InboundConnectionConfig } from '../../../core/types/index.js';
3
4
  import type { Request, Response } from 'express';
@@ -15,7 +16,7 @@ export declare function getModernSubscriptionCapabilities(manager: Pick<ServerMa
15
16
  listChanged?: true;
16
17
  };
17
18
  };
18
- export declare function serveModernSubscription(req: Request, res: Response, manager: ServerManager, config: InboundConnectionConfig, createBridge: ModernInboundBridgeFactory, signal: AbortSignal): Promise<void>;
19
+ export declare function serveModernSubscription(req: Request, res: Response, manager: ServerManager, config: InboundConnectionConfig, createBridge: ModernInboundBridgeFactory, signal: AbortSignal, resourceOwner?: ResourceRouteOwner): Promise<void>;
19
20
  export declare function cancelModernSubscription(req: Request, res: Response, manager: ServerManager, config: InboundConnectionConfig): void;
20
21
  export declare function closeModernSubscriptions(manager: ServerManager): Promise<void>;
21
22
  //# sourceMappingURL=modernSubscriptions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"modernSubscriptions.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/routes/modernSubscriptions.ts"],"names":[],"mappings":"AAOA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAgB,KAAK,uBAAuB,EAA2B,MAAM,0BAA0B,CAAC;AAG/G,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGjD,OAAO,KAAK,EAAuB,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAgC7F,oGAAoG;AACpG,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,EAC1C,MAAM,EAAE,uBAAuB;;sBAemD,IAAI;;;sBAAJ,IAAI;;;;sBAAJ,IAAI;;EAgBvF;AA+SD,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,uBAAuB,EAC/B,YAAY,EAAE,0BAA0B,EACxC,MAAM,EAAE,WAAW,GAClB,OAAO,CAAC,IAAI,CAAC,CAkCf;AACD,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,uBAAuB,GAC9B,IAAI,CAQN;AACD,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAIpF"}
1
+ {"version":3,"file":"modernSubscriptions.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/routes/modernSubscriptions.ts"],"names":[],"mappings":"AAEA,OAAO,EAA8B,KAAK,kBAAkB,EAAE,MAAM,gDAAgD,CAAC;AAKrH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mCAAmC,CAAC;AACvE,OAAO,EAAgB,KAAK,uBAAuB,EAA2B,MAAM,0BAA0B,CAAC;AAG/G,OAAO,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAGjD,OAAO,KAAK,EAAuB,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAgC7F,oGAAoG;AACpG,wBAAgB,iCAAiC,CAC/C,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,YAAY,CAAC,EAC1C,MAAM,EAAE,uBAAuB;;sBAkBmD,IAAI;;;sBAAJ,IAAI;;;;sBAAJ,IAAI;;EAgBvF;AAkTD,wBAAsB,uBAAuB,CAC3C,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,uBAAuB,EAC/B,YAAY,EAAE,0BAA0B,EACxC,MAAM,EAAE,WAAW,EACnB,aAAa,CAAC,EAAE,kBAAkB,GACjC,OAAO,CAAC,IAAI,CAAC,CAkCf;AACD,wBAAgB,wBAAwB,CACtC,GAAG,EAAE,OAAO,EACZ,GAAG,EAAE,QAAQ,EACb,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,uBAAuB,GAC9B,IAAI,CAQN;AACD,wBAAsB,wBAAwB,CAAC,OAAO,EAAE,aAAa,GAAG,OAAO,CAAC,IAAI,CAAC,CAIpF"}
@@ -37,7 +37,7 @@ export function getModernSubscriptionCapabilities(manager, config) {
37
37
  const connections = manager.getClients();
38
38
  if (!connections.size)
39
39
  return { tools: {}, prompts: {}, resources: {} };
40
- const visible = FilteringService.getFilteredConnections(filterConnectionsForSession(connections, undefined), config);
40
+ const visible = FilteringService.getFilteredConnections(filterConnectionsForSession(connections, config.logicalTemplateSessionId), config);
41
41
  const sources = [...visible.values()].filter((connection) => connection.status === ClientStatus.Connected);
42
42
  const supports = (connection, kind, flag) => {
43
43
  const capability = connection.capabilities?.[kind];
@@ -71,6 +71,7 @@ class ModernSubscription {
71
71
  res;
72
72
  config;
73
73
  signal;
74
+ resourceOwner;
74
75
  queue = [];
75
76
  bytes = 0;
76
77
  ready = false;
@@ -88,18 +89,19 @@ class ModernSubscription {
88
89
  filter = {};
89
90
  listProviders = new Map();
90
91
  onAbort = () => this.close(false);
91
- constructor(manager, id, res, config, signal) {
92
+ constructor(manager, id, res, config, signal, resourceOwner) {
92
93
  this.manager = manager;
93
94
  this.id = id;
94
95
  this.res = res;
95
96
  this.config = config;
96
97
  this.signal = signal;
98
+ this.resourceOwner = resourceOwner;
97
99
  this.auth = getAuthInfo(res);
98
100
  signal.addEventListener('abort', this.onAbort, { once: true });
99
101
  owners.add(this);
100
102
  }
101
103
  visible() {
102
- return FilteringService.getFilteredConnections(filterConnectionsForSession(this.manager.getClients(), undefined), this.config);
104
+ return FilteringService.getFilteredConnections(filterConnectionsForSession(this.manager.getClients(), this.config.logicalTemplateSessionId), this.config);
103
105
  }
104
106
  matches(res, config, id) {
105
107
  const auth = getAuthInfo(res);
@@ -162,7 +164,7 @@ class ModernSubscription {
162
164
  selected.add(key);
163
165
  }
164
166
  if (filter.resourceSubscriptions?.length) {
165
- const visibility = createCapabilityVisibility([...visible].map(([key, connection]) => [key, connection.name || key]), undefined, { ...this.config });
167
+ const visibility = createCapabilityVisibility([...visible].map(([key, connection]) => [key, connection.name || key]), this.config.logicalTemplateSessionId, { ...this.config }, this.resourceOwner);
166
168
  const snapshot = await acquireRuntimeCapabilityCatalog(this.manager.getClients(), visibility, {
167
169
  signal: this.controller.signal,
168
170
  serverConfigs: getConfiguredServerTargets(),
@@ -188,6 +190,7 @@ class ModernSubscription {
188
190
  try {
189
191
  this.bridge = await createBridge(this.manager, this.config, {
190
192
  subscriptionSignal: this.controller.signal,
193
+ resourceOwner: this.resourceOwner,
191
194
  subscriptionListKinds: ['tools', 'resources', 'prompts'].filter((kind) => filter[`${kind}ListChanged`] === true),
192
195
  subscriptionNotification: (note) => this.enqueue(note),
193
196
  subscriptionClosed: () => this.close(true),
@@ -372,7 +375,7 @@ class ModernSubscription {
372
375
  void (this.bridge?.close() ?? Promise.resolve()).catch(() => undefined).finally(() => this.resolveDone());
373
376
  }
374
377
  }
375
- export async function serveModernSubscription(req, res, manager, config, createBridge, signal) {
378
+ export async function serveModernSubscription(req, res, manager, config, createBridge, signal, resourceOwner) {
376
379
  const parsed = listenSchema.safeParse(req.body);
377
380
  if (!parsed.success || req.get('last-event-id')) {
378
381
  const id = req.body?.id;
@@ -399,7 +402,7 @@ export async function serveModernSubscription(req, res, manager, config, createB
399
402
  }
400
403
  if (signal.aborted)
401
404
  return;
402
- const owner = new ModernSubscription(manager, parsed.data.id, res, config, signal);
405
+ const owner = new ModernSubscription(manager, parsed.data.id, res, config, signal, resourceOwner);
403
406
  setups++;
404
407
  try {
405
408
  await owner.setup(parsed.data.params.notifications, createBridge);
@@ -1 +1 @@
1
- {"version":3,"file":"modernSubscriptions.js","sourceRoot":"","sources":["../../../../src/transport/http/routes/modernSubscriptions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"modernSubscriptions.js","sourceRoot":"","sources":["../../../../src/transport/http/routes/modernSubscriptions.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import type { ContextData } from '../../../types/context.js';
2
+ export interface ModernTemplateContextBinding {
3
+ readonly sessionId: string;
4
+ readonly id: string;
5
+ readonly context: ContextData;
6
+ readonly effectiveHash: string;
7
+ }
8
+ /** Only contexts authorized by the ingress may enter this session registry. */
9
+ export declare class ModernTemplateContextSessions {
10
+ private readonly bindings;
11
+ bind(context: ContextData): ModernTemplateContextBinding;
12
+ forget(sessionId: string): ModernTemplateContextBinding | undefined;
13
+ clear(): void;
14
+ }
15
+ //# sourceMappingURL=modernTemplateContext.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modernTemplateContext.d.ts","sourceRoot":"","sources":["../../../../src/transport/http/routes/modernTemplateContext.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AAGzD,MAAM,WAAW,4BAA4B;IAC3C,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,WAAW,CAAC;IAC9B,QAAQ,CAAC,aAAa,EAAE,MAAM,CAAC;CAChC;AAED,+EAA+E;AAC/E,qBAAa,6BAA6B;IACxC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAmD;IAE5E,IAAI,CAAC,OAAO,EAAE,WAAW,GAAG,4BAA4B;IA2BxD,MAAM,CAAC,SAAS,EAAE,MAAM,GAAG,4BAA4B,GAAG,SAAS;IAMnE,KAAK,IAAI,IAAI;CAGd"}
@@ -0,0 +1,48 @@
1
+ import { ProtocolError } from '@modelcontextprotocol/server';
2
+ import { createHash, randomUUID } from 'node:crypto';
3
+ import { MAX_RUNTIME_CATALOG_SCOPES } from '../../../core/capabilities/runtimeCapabilityCatalog.js';
4
+ import { deriveContextSessionId } from '../../../utils/context/sessionIdentity.js';
5
+ /** Only contexts authorized by the ingress may enter this session registry. */
6
+ export class ModernTemplateContextSessions {
7
+ bindings = new Map();
8
+ bind(context) {
9
+ const sessionId = context.sessionId ?? deriveContextSessionId(context);
10
+ const { timestamp: _timestamp, transport, ...facts } = context;
11
+ const { connectionTimestamp: _connectionTimestamp, ...transportFacts } = transport ?? {};
12
+ const effectiveHash = createHash('sha256')
13
+ .update(JSON.stringify({ ...facts, transport: transport ? transportFacts : undefined }, canonicalJson))
14
+ .digest('hex');
15
+ const existing = this.bindings.get(sessionId);
16
+ if (existing) {
17
+ if (existing.effectiveHash !== effectiveHash) {
18
+ throw new ProtocolError(-32602, 'Template context changed; start a new Request Session');
19
+ }
20
+ return existing;
21
+ }
22
+ if (this.bindings.size >= MAX_RUNTIME_CATALOG_SCOPES) {
23
+ throw new ProtocolError(-32000, 'Template session capacity exceeded');
24
+ }
25
+ const binding = Object.freeze({
26
+ sessionId,
27
+ id: randomUUID(),
28
+ context: structuredClone({ ...context, sessionId }),
29
+ effectiveHash,
30
+ });
31
+ this.bindings.set(sessionId, binding);
32
+ return binding;
33
+ }
34
+ forget(sessionId) {
35
+ const binding = this.bindings.get(sessionId);
36
+ this.bindings.delete(sessionId);
37
+ return binding;
38
+ }
39
+ clear() {
40
+ this.bindings.clear();
41
+ }
42
+ }
43
+ function canonicalJson(_key, value) {
44
+ if (!value || typeof value !== 'object' || Array.isArray(value))
45
+ return value;
46
+ return Object.fromEntries(Object.entries(value).sort(([left], [right]) => left.localeCompare(right)));
47
+ }
48
+ //# sourceMappingURL=modernTemplateContext.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"modernTemplateContext.js","sourceRoot":"","sources":["../../../../src/transport/http/routes/modernTemplateContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,8BAA8B,CAAC;AAE7D,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,0BAA0B,EAAE,MAAM,oDAAoD,CAAC;AAEhG,OAAO,EAAE,sBAAsB,EAAE,MAAM,uCAAuC,CAAC;AAS/E,+EAA+E;AAC/E,MAAM,OAAO,6BAA6B;IACvB,QAAQ,GAAG,IAAI,GAAG,EAAwC,CAAC;IAE5E,IAAI,CAAC,OAAoB;QACvB,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,sBAAsB,CAAC,OAAO,CAAC,CAAC;QACvE,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,KAAK,EAAE,GAAG,OAAO,CAAC;QAC/D,MAAM,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,GAAG,cAAc,EAAE,GAAG,SAAS,IAAI,EAAE,CAAC;QACzF,MAAM,aAAa,GAAG,UAAU,CAAC,QAAQ,CAAC;aACvC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,KAAK,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,SAAS,EAAE,EAAE,aAAa,CAAC,CAAC;aACtG,MAAM,CAAC,KAAK,CAAC,CAAC;QACjB,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC9C,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,QAAQ,CAAC,aAAa,KAAK,aAAa,EAAE,CAAC;gBAC7C,MAAM,IAAI,aAAa,CAAC,CAAC,KAAK,EAAE,uDAAuD,CAAC,CAAC;YAC3F,CAAC;YACD,OAAO,QAAQ,CAAC;QAClB,CAAC;QACD,IAAI,IAAI,CAAC,QAAQ,CAAC,IAAI,IAAI,0BAA0B,EAAE,CAAC;YACrD,MAAM,IAAI,aAAa,CAAC,CAAC,KAAK,EAAE,oCAAoC,CAAC,CAAC;QACxE,CAAC;QACD,MAAM,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC;YAC5B,SAAS;YACT,EAAE,EAAE,UAAU,EAAE;YAChB,OAAO,EAAE,eAAe,CAAC,EAAE,GAAG,OAAO,EAAE,SAAS,EAAE,CAAC;YACnD,aAAa;SACd,CAAC,CAAC;QACH,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACtC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,MAAM,CAAC,SAAiB;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAC7C,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;QAChC,OAAO,OAAO,CAAC;IACjB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,QAAQ,CAAC,KAAK,EAAE,CAAC;IACxB,CAAC;CACF;AAED,SAAS,aAAa,CAAC,IAAY,EAAE,KAAc;IACjD,IAAI,CAAC,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAC9E,OAAO,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;AACxG,CAAC"}