agentfootprint 12.1.0 → 12.2.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 (275) hide show
  1. package/AGENTS.md +1 -1
  2. package/CAPABILITIES.md +3 -1
  3. package/ai-instructions/claude-code/SKILL.md +1 -1
  4. package/dist/adapters/mcp/agentcoreRuntime/invoke.js +113 -7
  5. package/dist/adapters/mcp/agentcoreRuntime/invoke.js.map +1 -1
  6. package/dist/adapters/mcp/agentcoreRuntime/session.js +21 -21
  7. package/dist/adapters/mcp/agentcoreRuntime/session.js.map +1 -1
  8. package/dist/adapters/mcp/agentcoreRuntime/transport.js +79 -5
  9. package/dist/adapters/mcp/agentcoreRuntime/transport.js.map +1 -1
  10. package/dist/core/Agent.js +6 -0
  11. package/dist/core/Agent.js.map +1 -1
  12. package/dist/core/agent/stages/toolCalls.js +4 -0
  13. package/dist/core/agent/stages/toolCalls.js.map +1 -1
  14. package/dist/core/slots/buildToolsSlot.js +8 -0
  15. package/dist/core/slots/buildToolsSlot.js.map +1 -1
  16. package/dist/esm/adapters/mcp/agentcoreRuntime/invoke.d.ts +23 -4
  17. package/dist/esm/adapters/mcp/agentcoreRuntime/invoke.js +112 -6
  18. package/dist/esm/adapters/mcp/agentcoreRuntime/invoke.js.map +1 -1
  19. package/dist/esm/adapters/mcp/agentcoreRuntime/session.d.ts +20 -6
  20. package/dist/esm/adapters/mcp/agentcoreRuntime/session.js +21 -21
  21. package/dist/esm/adapters/mcp/agentcoreRuntime/session.js.map +1 -1
  22. package/dist/esm/adapters/mcp/agentcoreRuntime/transport.js +81 -7
  23. package/dist/esm/adapters/mcp/agentcoreRuntime/transport.js.map +1 -1
  24. package/dist/esm/core/Agent.js +6 -0
  25. package/dist/esm/core/Agent.js.map +1 -1
  26. package/dist/esm/core/agent/stages/toolCalls.js +4 -0
  27. package/dist/esm/core/agent/stages/toolCalls.js.map +1 -1
  28. package/dist/esm/core/slots/buildToolsSlot.d.ts +12 -0
  29. package/dist/esm/core/slots/buildToolsSlot.js +8 -0
  30. package/dist/esm/core/slots/buildToolsSlot.js.map +1 -1
  31. package/dist/esm/events/payloads.d.ts +41 -0
  32. package/dist/esm/events/registry.d.ts +3 -1
  33. package/dist/esm/events/registry.js +2 -0
  34. package/dist/esm/events/registry.js.map +1 -1
  35. package/dist/esm/identity/types.d.ts +7 -3
  36. package/dist/esm/identity/types.js.map +1 -1
  37. package/dist/esm/index.d.ts +1 -1
  38. package/dist/esm/index.js +4 -1
  39. package/dist/esm/index.js.map +1 -1
  40. package/dist/esm/lib/boundedJson.d.ts +14 -7
  41. package/dist/esm/lib/boundedJson.js +14 -7
  42. package/dist/esm/lib/boundedJson.js.map +1 -1
  43. package/dist/esm/mcp/callLifetime.js +5 -2
  44. package/dist/esm/mcp/callLifetime.js.map +1 -1
  45. package/dist/esm/mcp/clientPort.d.ts +78 -0
  46. package/dist/esm/mcp/clientPort.js +33 -0
  47. package/dist/esm/mcp/clientPort.js.map +1 -0
  48. package/dist/esm/mcp/gatewayTransport.js +13 -3
  49. package/dist/esm/mcp/gatewayTransport.js.map +1 -1
  50. package/dist/esm/mcp/index.d.ts +9 -1
  51. package/dist/esm/mcp/index.js +8 -0
  52. package/dist/esm/mcp/index.js.map +1 -1
  53. package/dist/esm/mcp/mcpClient.d.ts +18 -1
  54. package/dist/esm/mcp/mcpClient.js +203 -43
  55. package/dist/esm/mcp/mcpClient.js.map +1 -1
  56. package/dist/esm/mcp/mockMcpClient.js +13 -0
  57. package/dist/esm/mcp/mockMcpClient.js.map +1 -1
  58. package/dist/esm/mcp/pool/boundTool.d.ts +58 -0
  59. package/dist/esm/mcp/pool/boundTool.js +218 -0
  60. package/dist/esm/mcp/pool/boundTool.js.map +1 -0
  61. package/dist/esm/mcp/pool/clientSet.d.ts +73 -0
  62. package/dist/esm/mcp/pool/clientSet.js +152 -0
  63. package/dist/esm/mcp/pool/clientSet.js.map +1 -0
  64. package/dist/esm/mcp/pool/definitions.d.ts +103 -0
  65. package/dist/esm/mcp/pool/definitions.js +168 -0
  66. package/dist/esm/mcp/pool/definitions.js.map +1 -0
  67. package/dist/esm/mcp/pool/errors.d.ts +76 -0
  68. package/dist/esm/mcp/pool/errors.js +91 -0
  69. package/dist/esm/mcp/pool/errors.js.map +1 -0
  70. package/dist/esm/mcp/pool/identityKey.d.ts +57 -0
  71. package/dist/esm/mcp/pool/identityKey.js +94 -0
  72. package/dist/esm/mcp/pool/identityKey.js.map +1 -0
  73. package/dist/esm/mcp/pool/lease.d.ts +36 -0
  74. package/dist/esm/mcp/pool/lease.js +51 -0
  75. package/dist/esm/mcp/pool/lease.js.map +1 -0
  76. package/dist/esm/mcp/pool/listTools.d.ts +33 -0
  77. package/dist/esm/mcp/pool/listTools.js +146 -0
  78. package/dist/esm/mcp/pool/listTools.js.map +1 -0
  79. package/dist/esm/mcp/pool/mcpClientPool.d.ts +121 -0
  80. package/dist/esm/mcp/pool/mcpClientPool.js +151 -0
  81. package/dist/esm/mcp/pool/mcpClientPool.js.map +1 -0
  82. package/dist/esm/mcp/pool/options.d.ts +183 -0
  83. package/dist/esm/mcp/pool/options.js +119 -0
  84. package/dist/esm/mcp/pool/options.js.map +1 -0
  85. package/dist/esm/mcp/pool/plan.d.ts +77 -0
  86. package/dist/esm/mcp/pool/plan.js +134 -0
  87. package/dist/esm/mcp/pool/plan.js.map +1 -0
  88. package/dist/esm/mcp/pool/pool.d.ts +307 -0
  89. package/dist/esm/mcp/pool/pool.js +1071 -0
  90. package/dist/esm/mcp/pool/pool.js.map +1 -0
  91. package/dist/esm/mcp/pool/pooledClient.d.ts +93 -0
  92. package/dist/esm/mcp/pool/pooledClient.js +90 -0
  93. package/dist/esm/mcp/pool/pooledClient.js.map +1 -0
  94. package/dist/esm/mcp/pool/record.d.ts +80 -0
  95. package/dist/esm/mcp/pool/record.js +75 -0
  96. package/dist/esm/mcp/pool/record.js.map +1 -0
  97. package/dist/esm/mcp/pool/sessionEnded.d.ts +24 -0
  98. package/dist/esm/mcp/pool/sessionEnded.js +31 -0
  99. package/dist/esm/mcp/pool/sessionEnded.js.map +1 -0
  100. package/dist/esm/mcp/pool/work.d.ts +116 -0
  101. package/dist/esm/mcp/pool/work.js +213 -0
  102. package/dist/esm/mcp/pool/work.js.map +1 -0
  103. package/dist/esm/mcp/requestGuard.d.ts +70 -0
  104. package/dist/esm/mcp/requestGuard.js +98 -0
  105. package/dist/esm/mcp/requestGuard.js.map +1 -0
  106. package/dist/esm/mcp/requestLedger.d.ts +35 -1
  107. package/dist/esm/mcp/requestLedger.js +76 -3
  108. package/dist/esm/mcp/requestLedger.js.map +1 -1
  109. package/dist/esm/mcp/seriesEvidence.d.ts +10 -6
  110. package/dist/esm/mcp/seriesEvidence.js +16 -7
  111. package/dist/esm/mcp/seriesEvidence.js.map +1 -1
  112. package/dist/esm/mcp/terminate.d.ts +94 -0
  113. package/dist/esm/mcp/terminate.js +184 -0
  114. package/dist/esm/mcp/terminate.js.map +1 -0
  115. package/dist/esm/mcp/throttleRetry.js +71 -7
  116. package/dist/esm/mcp/throttleRetry.js.map +1 -1
  117. package/dist/esm/mcp/types.d.ts +85 -7
  118. package/dist/esm/redaction/knownStrings.js +34 -0
  119. package/dist/esm/redaction/knownStrings.js.map +1 -1
  120. package/dist/esm/tool-providers/index.d.ts +2 -2
  121. package/dist/esm/tool-providers/index.js +7 -1
  122. package/dist/esm/tool-providers/index.js.map +1 -1
  123. package/dist/esm/tools/mcpClientUse.d.ts +59 -0
  124. package/dist/esm/tools/mcpClientUse.js +216 -0
  125. package/dist/esm/tools/mcpClientUse.js.map +1 -0
  126. package/dist/esm/tools/toolProvider.d.ts +16 -0
  127. package/dist/esm/tools/toolSessions.d.ts +41 -0
  128. package/dist/esm/tools/toolSessions.js +41 -1
  129. package/dist/esm/tools/toolSessions.js.map +1 -1
  130. package/dist/events/registry.js +2 -0
  131. package/dist/events/registry.js.map +1 -1
  132. package/dist/identity/types.js.map +1 -1
  133. package/dist/index.js +6 -3
  134. package/dist/index.js.map +1 -1
  135. package/dist/lib/boundedJson.js +14 -7
  136. package/dist/lib/boundedJson.js.map +1 -1
  137. package/dist/mcp/callLifetime.js +5 -2
  138. package/dist/mcp/callLifetime.js.map +1 -1
  139. package/dist/mcp/clientPort.js +38 -0
  140. package/dist/mcp/clientPort.js.map +1 -0
  141. package/dist/mcp/gatewayTransport.js +13 -3
  142. package/dist/mcp/gatewayTransport.js.map +1 -1
  143. package/dist/mcp/index.js +16 -1
  144. package/dist/mcp/index.js.map +1 -1
  145. package/dist/mcp/mcpClient.js +207 -45
  146. package/dist/mcp/mcpClient.js.map +1 -1
  147. package/dist/mcp/mockMcpClient.js +13 -0
  148. package/dist/mcp/mockMcpClient.js.map +1 -1
  149. package/dist/mcp/pool/boundTool.js +223 -0
  150. package/dist/mcp/pool/boundTool.js.map +1 -0
  151. package/dist/mcp/pool/clientSet.js +157 -0
  152. package/dist/mcp/pool/clientSet.js.map +1 -0
  153. package/dist/mcp/pool/definitions.js +174 -0
  154. package/dist/mcp/pool/definitions.js.map +1 -0
  155. package/dist/mcp/pool/errors.js +96 -0
  156. package/dist/mcp/pool/errors.js.map +1 -0
  157. package/dist/mcp/pool/identityKey.js +99 -0
  158. package/dist/mcp/pool/identityKey.js.map +1 -0
  159. package/dist/mcp/pool/lease.js +55 -0
  160. package/dist/mcp/pool/lease.js.map +1 -0
  161. package/dist/mcp/pool/listTools.js +150 -0
  162. package/dist/mcp/pool/listTools.js.map +1 -0
  163. package/dist/mcp/pool/mcpClientPool.js +155 -0
  164. package/dist/mcp/pool/mcpClientPool.js.map +1 -0
  165. package/dist/mcp/pool/options.js +123 -0
  166. package/dist/mcp/pool/options.js.map +1 -0
  167. package/dist/mcp/pool/plan.js +140 -0
  168. package/dist/mcp/pool/plan.js.map +1 -0
  169. package/dist/mcp/pool/pool.js +1075 -0
  170. package/dist/mcp/pool/pool.js.map +1 -0
  171. package/dist/mcp/pool/pooledClient.js +94 -0
  172. package/dist/mcp/pool/pooledClient.js.map +1 -0
  173. package/dist/mcp/pool/record.js +80 -0
  174. package/dist/mcp/pool/record.js.map +1 -0
  175. package/dist/mcp/pool/sessionEnded.js +35 -0
  176. package/dist/mcp/pool/sessionEnded.js.map +1 -0
  177. package/dist/mcp/pool/work.js +219 -0
  178. package/dist/mcp/pool/work.js.map +1 -0
  179. package/dist/mcp/requestGuard.js +106 -0
  180. package/dist/mcp/requestGuard.js.map +1 -0
  181. package/dist/mcp/requestLedger.js +76 -3
  182. package/dist/mcp/requestLedger.js.map +1 -1
  183. package/dist/mcp/seriesEvidence.js +16 -7
  184. package/dist/mcp/seriesEvidence.js.map +1 -1
  185. package/dist/mcp/terminate.js +193 -0
  186. package/dist/mcp/terminate.js.map +1 -0
  187. package/dist/mcp/throttleRetry.js +71 -7
  188. package/dist/mcp/throttleRetry.js.map +1 -1
  189. package/dist/redaction/knownStrings.js +34 -0
  190. package/dist/redaction/knownStrings.js.map +1 -1
  191. package/dist/tool-providers/index.js +12 -1
  192. package/dist/tool-providers/index.js.map +1 -1
  193. package/dist/tools/mcpClientUse.js +225 -0
  194. package/dist/tools/mcpClientUse.js.map +1 -0
  195. package/dist/tools/toolSessions.js +44 -1
  196. package/dist/tools/toolSessions.js.map +1 -1
  197. package/dist/types/adapters/mcp/agentcoreRuntime/invoke.d.ts +23 -4
  198. package/dist/types/adapters/mcp/agentcoreRuntime/invoke.d.ts.map +1 -1
  199. package/dist/types/adapters/mcp/agentcoreRuntime/session.d.ts +20 -6
  200. package/dist/types/adapters/mcp/agentcoreRuntime/session.d.ts.map +1 -1
  201. package/dist/types/adapters/mcp/agentcoreRuntime/transport.d.ts.map +1 -1
  202. package/dist/types/core/Agent.d.ts.map +1 -1
  203. package/dist/types/core/agent/stages/toolCalls.d.ts.map +1 -1
  204. package/dist/types/core/slots/buildToolsSlot.d.ts +12 -0
  205. package/dist/types/core/slots/buildToolsSlot.d.ts.map +1 -1
  206. package/dist/types/events/payloads.d.ts +41 -0
  207. package/dist/types/events/payloads.d.ts.map +1 -1
  208. package/dist/types/events/registry.d.ts +3 -1
  209. package/dist/types/events/registry.d.ts.map +1 -1
  210. package/dist/types/identity/types.d.ts +7 -3
  211. package/dist/types/identity/types.d.ts.map +1 -1
  212. package/dist/types/index.d.ts +1 -1
  213. package/dist/types/index.d.ts.map +1 -1
  214. package/dist/types/lib/boundedJson.d.ts +14 -7
  215. package/dist/types/lib/boundedJson.d.ts.map +1 -1
  216. package/dist/types/mcp/callLifetime.d.ts.map +1 -1
  217. package/dist/types/mcp/clientPort.d.ts +79 -0
  218. package/dist/types/mcp/clientPort.d.ts.map +1 -0
  219. package/dist/types/mcp/gatewayTransport.d.ts.map +1 -1
  220. package/dist/types/mcp/index.d.ts +9 -1
  221. package/dist/types/mcp/index.d.ts.map +1 -1
  222. package/dist/types/mcp/mcpClient.d.ts +18 -1
  223. package/dist/types/mcp/mcpClient.d.ts.map +1 -1
  224. package/dist/types/mcp/mockMcpClient.d.ts.map +1 -1
  225. package/dist/types/mcp/pool/boundTool.d.ts +59 -0
  226. package/dist/types/mcp/pool/boundTool.d.ts.map +1 -0
  227. package/dist/types/mcp/pool/clientSet.d.ts +74 -0
  228. package/dist/types/mcp/pool/clientSet.d.ts.map +1 -0
  229. package/dist/types/mcp/pool/definitions.d.ts +104 -0
  230. package/dist/types/mcp/pool/definitions.d.ts.map +1 -0
  231. package/dist/types/mcp/pool/errors.d.ts +77 -0
  232. package/dist/types/mcp/pool/errors.d.ts.map +1 -0
  233. package/dist/types/mcp/pool/identityKey.d.ts +58 -0
  234. package/dist/types/mcp/pool/identityKey.d.ts.map +1 -0
  235. package/dist/types/mcp/pool/lease.d.ts +37 -0
  236. package/dist/types/mcp/pool/lease.d.ts.map +1 -0
  237. package/dist/types/mcp/pool/listTools.d.ts +34 -0
  238. package/dist/types/mcp/pool/listTools.d.ts.map +1 -0
  239. package/dist/types/mcp/pool/mcpClientPool.d.ts +122 -0
  240. package/dist/types/mcp/pool/mcpClientPool.d.ts.map +1 -0
  241. package/dist/types/mcp/pool/options.d.ts +184 -0
  242. package/dist/types/mcp/pool/options.d.ts.map +1 -0
  243. package/dist/types/mcp/pool/plan.d.ts +78 -0
  244. package/dist/types/mcp/pool/plan.d.ts.map +1 -0
  245. package/dist/types/mcp/pool/pool.d.ts +308 -0
  246. package/dist/types/mcp/pool/pool.d.ts.map +1 -0
  247. package/dist/types/mcp/pool/pooledClient.d.ts +94 -0
  248. package/dist/types/mcp/pool/pooledClient.d.ts.map +1 -0
  249. package/dist/types/mcp/pool/record.d.ts +81 -0
  250. package/dist/types/mcp/pool/record.d.ts.map +1 -0
  251. package/dist/types/mcp/pool/sessionEnded.d.ts +25 -0
  252. package/dist/types/mcp/pool/sessionEnded.d.ts.map +1 -0
  253. package/dist/types/mcp/pool/work.d.ts +117 -0
  254. package/dist/types/mcp/pool/work.d.ts.map +1 -0
  255. package/dist/types/mcp/requestGuard.d.ts +71 -0
  256. package/dist/types/mcp/requestGuard.d.ts.map +1 -0
  257. package/dist/types/mcp/requestLedger.d.ts +35 -1
  258. package/dist/types/mcp/requestLedger.d.ts.map +1 -1
  259. package/dist/types/mcp/seriesEvidence.d.ts +10 -6
  260. package/dist/types/mcp/seriesEvidence.d.ts.map +1 -1
  261. package/dist/types/mcp/terminate.d.ts +95 -0
  262. package/dist/types/mcp/terminate.d.ts.map +1 -0
  263. package/dist/types/mcp/throttleRetry.d.ts.map +1 -1
  264. package/dist/types/mcp/types.d.ts +85 -7
  265. package/dist/types/mcp/types.d.ts.map +1 -1
  266. package/dist/types/redaction/knownStrings.d.ts.map +1 -1
  267. package/dist/types/tool-providers/index.d.ts +2 -2
  268. package/dist/types/tool-providers/index.d.ts.map +1 -1
  269. package/dist/types/tools/mcpClientUse.d.ts +60 -0
  270. package/dist/types/tools/mcpClientUse.d.ts.map +1 -0
  271. package/dist/types/tools/toolProvider.d.ts +16 -0
  272. package/dist/types/tools/toolProvider.d.ts.map +1 -1
  273. package/dist/types/tools/toolSessions.d.ts +41 -0
  274. package/dist/types/tools/toolSessions.d.ts.map +1 -1
  275. package/package.json +3 -3
@@ -47,6 +47,7 @@ const types_js_2 = require("../../integrity/finding/types.js");
47
47
  const skillTools_js_1 = require("../../injection-engine/skillTools.js");
48
48
  const skillSteps_js_1 = require("../../injection-engine/skillSteps.js");
49
49
  const typedEmit_js_1 = require("../../recorders/core/typedEmit.js");
50
+ const mcpClientUse_js_1 = require("../../tools/mcpClientUse.js");
50
51
  const helpers_js_1 = require("./helpers.js");
51
52
  const reserved_js_1 = require("../agent/findings/reserved.js");
52
53
  const declare_js_1 = require("../../tools/declare.js");
@@ -247,11 +248,14 @@ function buildToolsSlot(config) {
247
248
  const activeSkillIds = (scope.$getValue('activeInjections') ?? [])
248
249
  .filter((inj) => inj.flavor === 'skill')
249
250
  .map((inj) => inj.id);
251
+ // The caller's own identity, never a derived one (`ToolDispatchContext.callerIdentity`).
252
+ const callerIdentity = config.callerIdentity?.(scope);
250
253
  const ctx = {
251
254
  iteration,
252
255
  ...(activatedIds.length > 0 && { activeSkillId: activatedIds[activatedIds.length - 1] }),
253
256
  ...(activeSkillIds.length > 0 && { activeSkillIds }),
254
257
  ...(identity && { identity }),
258
+ ...(callerIdentity !== undefined && { callerIdentity }),
255
259
  ...(env.signal && { signal: env.signal }),
256
260
  };
257
261
  (0, typedEmit_js_1.typedEmit)(scope, 'agentfootprint.tools.discovery_started', {
@@ -266,6 +270,9 @@ function buildToolsSlot(config) {
266
270
  visibleTools = result instanceof Promise ? await result : result;
267
271
  }
268
272
  catch (err) {
273
+ // An MCP client pool's use of a client is recorded whether or not its
274
+ // listing succeeded (`tools/mcpClientUse.ts`).
275
+ (0, mcpClientUse_js_1.emitListUses)(scope, ctx);
269
276
  // Discovery failure is loud by design. Emit the typed event
270
277
  // with the providerId so consumers can route alerts; then
271
278
  // re-throw so a configured `reliability` rule decides whether
@@ -283,6 +290,7 @@ function buildToolsSlot(config) {
283
290
  });
284
291
  throw err;
285
292
  }
293
+ (0, mcpClientUse_js_1.emitListUses)(scope, ctx);
286
294
  (0, typedEmit_js_1.typedEmit)(scope, 'agentfootprint.tools.discovery_completed', {
287
295
  providerId: toolProvider.id,
288
296
  iteration,
@@ -1 +1 @@
1
- {"version":3,"file":"buildToolsSlot.js","sourceRoot":"","sources":["../../../src/core/slots/buildToolsSlot.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"buildToolsSlot.js","sourceRoot":"","sources":["../../../src/core/slots/buildToolsSlot.ts"],"names":[],"mappings":"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"}
@@ -58,9 +58,19 @@
58
58
  *
59
59
  * ── What the operation cannot carry ──────────────────────────────────────────
60
60
  * Any method but POST. A GET (the optional server-message stream) and a DELETE
61
- * (ending a session) are answered HERE with 405, which the MCP Streamable HTTP
62
- * spec defines as "not offered" for both, so the MCP client carries on. And any
63
- * header the operation does not model — it has no field to put one in.
61
+ * are answered HERE with 405, which the MCP Streamable HTTP spec defines as "not
62
+ * offered" for both, so the MCP client carries on. And any header the operation
63
+ * does not model — it has no field to put one in. A `'reuse'` connection's
64
+ * DELETE never reaches this far: the session strategy turns it into a stop
65
+ * (`STOP_RUNTIME_SESSION`), sent as `StopRuntimeSessionCommand`.
66
+ *
67
+ * ── The send gate runs after signing ─────────────────────────────────────────
68
+ * A request the MCP client pool sent carries its send gate (`mcp/requestGuard.ts`).
69
+ * Signing is asynchronous work inside the AWS SDK's `send`, so the gate is a
70
+ * step on each COMMAND's own middleware stack, after the request is signed and
71
+ * before the request handler sends it — never on the client's stack, so an AWS
72
+ * client the app passed is not changed. A command with no stack (a double) has
73
+ * the gate asked just before `send`, as every command also does.
64
74
  *
65
75
  * Pattern: Adapter (fetch ↔ command). Role: outer ring, lazy AWS peer dep.
66
76
  */
@@ -78,7 +88,15 @@ export interface BedrockAgentCoreRuntimeSdkModule {
78
88
  maxAttempts?: number;
79
89
  }) => AgentCoreRuntimeSdkClient;
80
90
  readonly InvokeAgentRuntimeCommand?: new (input: unknown) => unknown;
91
+ /** Needed under `session: 'reuse'`, where ending a client stops its runtime session. */
92
+ readonly StopRuntimeSessionCommand?: new (input: unknown) => unknown;
81
93
  }
94
+ /**
95
+ * @internal The `init` key a `'reuse'` connection's stop rides under: the
96
+ * runtime session id to stop (`transport.ts` · `stopSession`). A symbol, so no
97
+ * request the MCP client makes can ever claim it.
98
+ */
99
+ export declare const STOP_RUNTIME_SESSION: unique symbol;
82
100
  /** Which runtime every request goes to, as the operation names it. */
83
101
  export interface InvokeTarget {
84
102
  readonly agentRuntimeArn: string;
@@ -107,6 +125,7 @@ export interface InvokeSdkOptions {
107
125
  export declare function invokeSdk(options: InvokeSdkOptions): {
108
126
  readonly client: AgentCoreRuntimeSdkClient;
109
127
  readonly InvokeAgentRuntimeCommand: new (input: unknown) => unknown;
128
+ readonly StopRuntimeSessionCommand?: new (input: unknown) => unknown;
110
129
  };
111
130
  /**
112
131
  * A `fetch` that sends each request as one `InvokeAgentRuntimeCommand`.
@@ -115,4 +134,4 @@ export declare function invokeSdk(options: InvokeSdkOptions): {
115
134
  * reports and errors, while the invocation goes to `target` — the SDK resolves
116
135
  * the endpoint itself, from the client's region.
117
136
  */
118
- export declare function invokeFetch(target: InvokeTarget, client: AgentCoreRuntimeSdkClient, InvokeAgentRuntimeCommand: new (input: unknown) => unknown): ThrottleFetch;
137
+ export declare function invokeFetch(target: InvokeTarget, client: AgentCoreRuntimeSdkClient, InvokeAgentRuntimeCommand: new (input: unknown) => unknown, StopRuntimeSessionCommand?: new (input: unknown) => unknown): ThrottleFetch;
@@ -58,17 +58,34 @@
58
58
  *
59
59
  * ── What the operation cannot carry ──────────────────────────────────────────
60
60
  * Any method but POST. A GET (the optional server-message stream) and a DELETE
61
- * (ending a session) are answered HERE with 405, which the MCP Streamable HTTP
62
- * spec defines as "not offered" for both, so the MCP client carries on. And any
63
- * header the operation does not model — it has no field to put one in.
61
+ * are answered HERE with 405, which the MCP Streamable HTTP spec defines as "not
62
+ * offered" for both, so the MCP client carries on. And any header the operation
63
+ * does not model — it has no field to put one in. A `'reuse'` connection's
64
+ * DELETE never reaches this far: the session strategy turns it into a stop
65
+ * (`STOP_RUNTIME_SESSION`), sent as `StopRuntimeSessionCommand`.
66
+ *
67
+ * ── The send gate runs after signing ─────────────────────────────────────────
68
+ * A request the MCP client pool sent carries its send gate (`mcp/requestGuard.ts`).
69
+ * Signing is asynchronous work inside the AWS SDK's `send`, so the gate is a
70
+ * step on each COMMAND's own middleware stack, after the request is signed and
71
+ * before the request handler sends it — never on the client's stack, so an AWS
72
+ * client the app passed is not changed. A command with no stack (a double) has
73
+ * the gate asked just before `send`, as every command also does.
64
74
  *
65
75
  * Pattern: Adapter (fetch ↔ command). Role: outer ring, lazy AWS peer dep.
66
76
  */
67
77
  import { lazyRequire } from '../../../lib/lazyRequire.js';
78
+ import { guardOf } from '../../../mcp/requestGuard.js';
68
79
  import { sdkLoadFailure } from '../../../mcp/sdkLoadFailure.js';
69
80
  import { AGENTCORE_RUNTIME_SESSION_HEADER, MCP_SESSION_HEADER } from './session.js';
70
81
  const MCP_PROTOCOL_VERSION_HEADER = 'Mcp-Protocol-Version';
71
82
  const SDK_PACKAGE = '@aws-sdk/client-bedrock-agentcore';
83
+ /**
84
+ * @internal The `init` key a `'reuse'` connection's stop rides under: the
85
+ * runtime session id to stop (`transport.ts` · `stopSession`). A symbol, so no
86
+ * request the MCP client makes can ever claim it.
87
+ */
88
+ export const STOP_RUNTIME_SESSION = Symbol('agentcore.stop-runtime-session');
72
89
  /**
73
90
  * The client and the command constructor this strategy sends with.
74
91
  *
@@ -89,8 +106,12 @@ export function invokeSdk(options) {
89
106
  if (typeof Command !== 'function') {
90
107
  throw new Error(`agentCoreRuntimeMcpTransport: ${source} \`InvokeAgentRuntimeCommand\`. ${advice}`);
91
108
  }
109
+ // Ending a `'reuse'` client stops its runtime session with this command. An
110
+ // SDK module without it still invokes; that ending is then 'failed' (`stopFetch`).
111
+ const Stop = mod.StopRuntimeSessionCommand;
112
+ const stop = typeof Stop === 'function' ? { StopRuntimeSessionCommand: Stop } : {};
92
113
  if (options.client)
93
- return { client: options.client, InvokeAgentRuntimeCommand: Command };
114
+ return { client: options.client, InvokeAgentRuntimeCommand: Command, ...stop };
94
115
  if (typeof mod.BedrockAgentCoreClient !== 'function') {
95
116
  throw new Error(`agentCoreRuntimeMcpTransport: ${source} \`BedrockAgentCoreClient\`. ${advice}`);
96
117
  }
@@ -98,6 +119,7 @@ export function invokeSdk(options) {
98
119
  // The SDK's own retry OFF: it would re-send work that may have run.
99
120
  client: new mod.BedrockAgentCoreClient({ region: options.region, maxAttempts: 1 }),
100
121
  InvokeAgentRuntimeCommand: Command,
122
+ ...stop,
101
123
  };
102
124
  }
103
125
  function loadSdk() {
@@ -130,8 +152,12 @@ const NULL_BODY_STATUS = new Set([204, 205, 304]);
130
152
  * reports and errors, while the invocation goes to `target` — the SDK resolves
131
153
  * the endpoint itself, from the client's region.
132
154
  */
133
- export function invokeFetch(target, client, InvokeAgentRuntimeCommand) {
155
+ export function invokeFetch(target, client, InvokeAgentRuntimeCommand, StopRuntimeSessionCommand) {
134
156
  return async (_input, init) => {
157
+ const stopping = stopOf(init);
158
+ if (stopping !== undefined) {
159
+ return stopFetch(target, client, StopRuntimeSessionCommand, stopping, init);
160
+ }
135
161
  const method = (init?.method ?? 'GET').toUpperCase();
136
162
  if (method !== 'POST') {
137
163
  return new Response(null, { status: 405, statusText: 'Method Not Allowed' });
@@ -150,7 +176,7 @@ export function invokeFetch(target, client, InvokeAgentRuntimeCommand) {
150
176
  });
151
177
  let answer;
152
178
  try {
153
- answer = ((await client.send(command, init?.signal ? { abortSignal: init.signal } : undefined)) ?? {});
179
+ answer = ((await sendGated(client, command, init)) ?? {});
154
180
  }
155
181
  catch (err) {
156
182
  const answered = serviceAnswerOf(err);
@@ -161,6 +187,86 @@ export function invokeFetch(target, client, InvokeAgentRuntimeCommand) {
161
187
  return responseOf(answer);
162
188
  };
163
189
  }
190
+ /** The runtime session a stop request names (`STOP_RUNTIME_SESSION`), or `undefined`. */
191
+ function stopOf(init) {
192
+ const value = init?.[STOP_RUNTIME_SESSION];
193
+ return typeof value === 'string' && value !== '' ? value : undefined;
194
+ }
195
+ /**
196
+ * `StopRuntimeSession` for one runtime session, as the `Response` an HTTPS
197
+ * caller would read: 200 when the platform stopped it, a service exception as
198
+ * its status (`ResourceNotFoundException` 404, `RetryableConflictException` 409
199
+ * — retried by the series — `AccessDeniedException` 403, …).
200
+ */
201
+ async function stopFetch(target, client, StopRuntimeSessionCommand, runtimeSessionId, init) {
202
+ if (StopRuntimeSessionCommand === undefined) {
203
+ throw new Error('agentCoreRuntimeMcpTransport: the AWS SDK module has no `StopRuntimeSessionCommand`, ' +
204
+ "so a 'reuse' client's runtime session cannot be stopped. Upgrade the SDK.");
205
+ }
206
+ const command = new StopRuntimeSessionCommand({
207
+ runtimeSessionId,
208
+ agentRuntimeArn: target.agentRuntimeArn,
209
+ ...(target.qualifier !== undefined && { qualifier: target.qualifier }),
210
+ clientToken: clientTokenOf(init?.body),
211
+ });
212
+ try {
213
+ await sendGated(client, command, init);
214
+ }
215
+ catch (err) {
216
+ const answered = serviceAnswerOf(err);
217
+ if (answered === undefined)
218
+ throw err;
219
+ return answered;
220
+ }
221
+ return new Response(null, { status: 200 });
222
+ }
223
+ /** The stop's idempotency token, as its body carries it — one per stop, across attempts. */
224
+ function clientTokenOf(body) {
225
+ if (typeof body !== 'string')
226
+ return undefined;
227
+ try {
228
+ const token = JSON.parse(body).clientToken;
229
+ return typeof token === 'string' ? token : undefined;
230
+ }
231
+ catch {
232
+ return undefined;
233
+ }
234
+ }
235
+ /**
236
+ * `client.send(command)`, with a pooled request's send gate asked before it and
237
+ * — on a command with its own middleware stack — again after signing, and the
238
+ * send counted under the request until it settles (`mcp/requestGuard.ts`).
239
+ */
240
+ function sendGated(client, command, init) {
241
+ const guard = guardOf(init);
242
+ if (guard !== undefined) {
243
+ installGate(command, guard);
244
+ guard.check();
245
+ }
246
+ const sent = client.send(command, init?.signal ? { abortSignal: init.signal } : undefined);
247
+ guard?.track(sent);
248
+ return sent;
249
+ }
250
+ /** The gate's name on a command's middleware stack. */
251
+ const GATE_STEP = 'agentfootprintSendGate';
252
+ /**
253
+ * Put `guard` on `command`'s OWN middleware stack, after signing and before the
254
+ * request handler: the AWS SDK signs at the `finalizeRequest` step (its signer
255
+ * sits right after its retry middleware, at high priority), so a low-priority
256
+ * `finalizeRequest` step runs after the signature and before the deserializer
257
+ * hands the request to the handler. The client's stack is never touched.
258
+ * A command without a stack is left as it is.
259
+ */
260
+ function installGate(command, guard) {
261
+ const stack = command
262
+ ?.middlewareStack;
263
+ if (typeof stack?.add !== 'function')
264
+ return;
265
+ stack.add.call(stack, (next) => async (args) => {
266
+ guard.check();
267
+ return next(args);
268
+ }, { step: 'finalizeRequest', priority: 'low', name: GATE_STEP, override: true });
269
+ }
164
270
  /**
165
271
  * An SDK service exception as the `Response` the service sent: its status, its
166
272
  * error type, its `retry-after`. `undefined` for anything that carries no
@@ -1 +1 @@
1
- {"version":3,"file":"invoke.js","sourceRoot":"","sources":["../../../../../src/adapters/mcp/agentcoreRuntime/invoke.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"invoke.js","sourceRoot":"","sources":["../../../../../src/adapters/mcp/agentcoreRuntime/invoke.ts"],"names":[],"mappings":"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"}
@@ -33,8 +33,12 @@
33
33
  * `Mcp-Session-Id` the server returns for it is stored WITH that connection,
34
34
  * and the client is handed an opaque handle of the transport's own in its
35
35
  * place. Every later request carrying the handle is sent in that connection's
36
- * runtime session with the server's own id; a handle the transport does not
37
- * know is answered 404 "Session not found" here, never sent.
36
+ * runtime session with the server's own id. A handle the transport does not
37
+ * know — one it never issued, or one it forgot — is never sent: the request
38
+ * fails with `LocalSessionHandleLostError`, thrown from the transport's
39
+ * `fetch`. It is not a 404: no server said anything, and the runtime session
40
+ * behind a forgotten handle may still run — it can no longer be stopped from
41
+ * here, because its id went with the handle.
38
42
  *
39
43
  * Why a handle and not the server's id: the server's ids are unique only as far
40
44
  * as the server makes them. One that numbers sessions per process hands every
@@ -46,7 +50,10 @@
46
50
  * between users.
47
51
  *
48
52
  * At most {@link MAX_CONNECTIONS} connections are remembered, least recently
49
- * used forgotten first; a client's `DELETE` (its `close()`) forgets its own.
53
+ * used forgotten first. A client's `DELETE` — sent by `terminate()`, never by
54
+ * `close()`, which ends only the local side — forgets its own handle first, and
55
+ * then becomes `StopRuntimeSession` for that connection's runtime session
56
+ * (`transport.ts`), answered like a server would answer the `DELETE`.
50
57
  *
51
58
  * Pattern: Strategy. Role: outer ring, vendor fact. Holds no credential.
52
59
  */
@@ -57,17 +64,24 @@ export declare const MCP_SESSION_HEADER = "Mcp-Session-Id";
57
64
  /** Which session a request lands in. See the module note for each. */
58
65
  export type AgentCoreRuntimeSession = 'reuse' | 'per-call';
59
66
  /**
60
- * What a strategy does with one request: either answer it here, unsent, or
61
- * let it go — with its session headers fixed in place — and say what the MCP
62
- * client may see of the response.
67
+ * What a strategy does with one request: answer it here, unsent; let it go —
68
+ * with its session headers fixed in place — and say what the MCP client may see
69
+ * of the response; or, for a `'reuse'` connection's `DELETE`, stop that
70
+ * connection's runtime session (`stop`, its runtime session id).
63
71
  */
64
72
  export type SessionStep = {
65
73
  readonly answer: Response;
66
74
  } | {
67
75
  readonly settle: (response: Response) => Response;
76
+ } | {
77
+ readonly stop: string;
68
78
  };
69
79
  /** One strategy, applied once per request the MCP client makes. */
70
80
  export interface SessionStrategy {
81
+ /**
82
+ * @throws `LocalSessionHandleLostError` for a handle this strategy does not
83
+ * hold: nothing is sent
84
+ */
71
85
  request(headers: Headers, method: string): SessionStep;
72
86
  }
73
87
  /** How many connections a 'reuse' transport remembers before it forgets the least recently used. */
@@ -33,8 +33,12 @@
33
33
  * `Mcp-Session-Id` the server returns for it is stored WITH that connection,
34
34
  * and the client is handed an opaque handle of the transport's own in its
35
35
  * place. Every later request carrying the handle is sent in that connection's
36
- * runtime session with the server's own id; a handle the transport does not
37
- * know is answered 404 "Session not found" here, never sent.
36
+ * runtime session with the server's own id. A handle the transport does not
37
+ * know — one it never issued, or one it forgot — is never sent: the request
38
+ * fails with `LocalSessionHandleLostError`, thrown from the transport's
39
+ * `fetch`. It is not a 404: no server said anything, and the runtime session
40
+ * behind a forgotten handle may still run — it can no longer be stopped from
41
+ * here, because its id went with the handle.
38
42
  *
39
43
  * Why a handle and not the server's id: the server's ids are unique only as far
40
44
  * as the server makes them. One that numbers sessions per process hands every
@@ -46,10 +50,14 @@
46
50
  * between users.
47
51
  *
48
52
  * At most {@link MAX_CONNECTIONS} connections are remembered, least recently
49
- * used forgotten first; a client's `DELETE` (its `close()`) forgets its own.
53
+ * used forgotten first. A client's `DELETE` — sent by `terminate()`, never by
54
+ * `close()`, which ends only the local side — forgets its own handle first, and
55
+ * then becomes `StopRuntimeSession` for that connection's runtime session
56
+ * (`transport.ts`), answered like a server would answer the `DELETE`.
50
57
  *
51
58
  * Pattern: Strategy. Role: outer ring, vendor fact. Holds no credential.
52
59
  */
60
+ import { LocalSessionHandleLostError } from '../../../tools/toolSessions.js';
53
61
  /** The runtime session header, as `InvokeAgentRuntime` binds `runtimeSessionId` to it. */
54
62
  export const AGENTCORE_RUNTIME_SESSION_HEADER = 'X-Amzn-Bedrock-AgentCore-Runtime-Session-Id';
55
63
  /** The MCP Streamable HTTP session header. */
@@ -93,15 +101,19 @@ function reuse() {
93
101
  request(headers, method) {
94
102
  const handle = headers.get(MCP_SESSION_HEADER);
95
103
  const known = handle === null ? undefined : connections.get(handle);
96
- // A handle this transport did not issue, or has forgotten: fail closed.
104
+ // A handle this transport did not issue, or has forgotten: fail closed,
105
+ // and say what happened — nothing was sent, and nothing answered.
97
106
  if (handle !== null && known === undefined)
98
- return { answer: sessionNotFound() };
107
+ throw new LocalSessionHandleLostError();
99
108
  const connection = known ?? { runtimeId: newId() };
100
109
  if (handle !== null) {
101
- if (method === 'DELETE')
110
+ // Ending the session: the handle is forgotten FIRST, so nothing more is
111
+ // ever sent under it, then the runtime session is stopped.
112
+ if (method === 'DELETE') {
102
113
  connections.delete(handle);
103
- else
104
- remember(handle, connection);
114
+ return { stop: connection.runtimeId };
115
+ }
116
+ remember(handle, connection);
105
117
  }
106
118
  // Set, not merged: these are the only session ids this request sends.
107
119
  headers.set(AGENTCORE_RUNTIME_SESSION_HEADER, connection.runtimeId);
@@ -122,8 +134,7 @@ function reuse() {
122
134
  remember(issued, { ...connection, serverSessionId: returned });
123
135
  return withSessionHeader(response, issued);
124
136
  }
125
- if (method !== 'DELETE')
126
- connection.serverSessionId = returned;
137
+ connection.serverSessionId = returned;
127
138
  return withSessionHeader(response, handle);
128
139
  },
129
140
  };
@@ -161,15 +172,4 @@ function withSessionHeader(response, value) {
161
172
  headers,
162
173
  });
163
174
  }
164
- /**
165
- * The MCP Streamable HTTP answer to a session the server does not know: 404,
166
- * after which a client starts a new session with `initialize`.
167
- */
168
- function sessionNotFound() {
169
- return new Response(JSON.stringify({
170
- jsonrpc: '2.0',
171
- id: null,
172
- error: { code: -32001, message: 'Session not found' },
173
- }), { status: 404, headers: { 'content-type': 'application/json' } });
174
- }
175
175
  //# sourceMappingURL=session.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../../../src/adapters/mcp/agentcoreRuntime/session.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.js","sourceRoot":"","sources":["../../../../../src/adapters/mcp/agentcoreRuntime/session.ts"],"names":[],"mappings":"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"}