@armoriq/sdk-dev 0.8.3 → 0.8.4

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 (48) hide show
  1. package/dist/_version.d.ts +1 -1
  2. package/dist/_version.js +1 -1
  3. package/dist/client.d.ts.map +1 -1
  4. package/dist/client.js +4 -0
  5. package/dist/client.js.map +1 -1
  6. package/dist/client_context.d.ts +9 -0
  7. package/dist/client_context.d.ts.map +1 -0
  8. package/dist/client_context.js +58 -0
  9. package/dist/client_context.js.map +1 -0
  10. package/dist/debug.d.ts +3 -0
  11. package/dist/debug.d.ts.map +1 -0
  12. package/dist/debug.js +11 -0
  13. package/dist/debug.js.map +1 -0
  14. package/dist/index.d.ts +1 -0
  15. package/dist/index.d.ts.map +1 -1
  16. package/dist/index.js +3 -1
  17. package/dist/index.js.map +1 -1
  18. package/dist/integrations/google_adk.d.ts +5 -1
  19. package/dist/integrations/google_adk.d.ts.map +1 -1
  20. package/dist/integrations/google_adk.js +16 -10
  21. package/dist/integrations/google_adk.js.map +1 -1
  22. package/dist/integrations/langchain.d.ts.map +1 -1
  23. package/dist/integrations/langchain.js +3 -2
  24. package/dist/integrations/langchain.js.map +1 -1
  25. package/dist/integrations/openai.d.ts +9 -0
  26. package/dist/integrations/openai.d.ts.map +1 -0
  27. package/dist/integrations/openai.js +60 -0
  28. package/dist/integrations/openai.js.map +1 -0
  29. package/dist/integrations/strands.d.ts.map +1 -1
  30. package/dist/integrations/strands.js +5 -19
  31. package/dist/integrations/strands.js.map +1 -1
  32. package/dist/optional_module.d.ts +3 -0
  33. package/dist/optional_module.d.ts.map +1 -0
  34. package/dist/optional_module.js +34 -0
  35. package/dist/optional_module.js.map +1 -0
  36. package/dist/session.d.ts +2 -0
  37. package/dist/session.d.ts.map +1 -1
  38. package/dist/session.js +8 -0
  39. package/dist/session.js.map +1 -1
  40. package/dist/tool_push.d.ts +1 -1
  41. package/dist/tool_push.d.ts.map +1 -1
  42. package/dist/tool_push.js +14 -10
  43. package/dist/tool_push.js.map +1 -1
  44. package/dist/tool_registry.d.ts +36 -13
  45. package/dist/tool_registry.d.ts.map +1 -1
  46. package/dist/tool_registry.js +300 -114
  47. package/dist/tool_registry.js.map +1 -1
  48. package/package.json +1 -1
@@ -1,6 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ToolRegistry = exports.SNAPSHOT_HASH_PREFIX = void 0;
4
+ exports.serverKey = serverKey;
4
5
  exports.snapshotHash = snapshotHash;
5
6
  exports.defaultToolRegistry = defaultToolRegistry;
6
7
  exports.agentKeyFor = agentKeyFor;
@@ -13,6 +14,8 @@ exports.mcpBackedByName = mcpBackedByName;
13
14
  exports.observeForClient = observeForClient;
14
15
  exports.geminiSchemaToJsonSchema = geminiSchemaToJsonSchema;
15
16
  exports.declarationsFromAdkAgent = declarationsFromAdkAgent;
17
+ exports.declarationsFromAdkResolvedTools = declarationsFromAdkResolvedTools;
18
+ exports.declarationsFromAdkAgentAsync = declarationsFromAdkAgentAsync;
16
19
  exports.declarationsFromStrandsAgent = declarationsFromStrandsAgent;
17
20
  exports.declarationsFromOpenAiTools = declarationsFromOpenAiTools;
18
21
  exports.declarationsFromLangChainTools = declarationsFromLangChainTools;
@@ -23,6 +26,7 @@ exports.declarationsFromLangChainTools = declarationsFromLangChainTools;
23
26
  */
24
27
  const crypto_1 = require("crypto");
25
28
  const _version_1 = require("./_version");
29
+ const debug_1 = require("./debug");
26
30
  const tool_name_1 = require("./tool_name");
27
31
  const tool_schema_1 = require("./tool_schema");
28
32
  function toWire(d) {
@@ -38,6 +42,28 @@ function toWire(d) {
38
42
  entry.annotations = d.annotations;
39
43
  return entry;
40
44
  }
45
+ function stripPrefix(name, prefix) {
46
+ const p = typeof prefix === 'string' ? prefix : '';
47
+ return p && name.startsWith(p) && name.length > p.length ? name.slice(p.length) : name;
48
+ }
49
+ /** One server is one name inside the org; sightings differing in case or trailing underscores are the same server. */
50
+ function serverKey(s) {
51
+ return (s.name || s.url).trim().replace(/_+$/, '').toLowerCase();
52
+ }
53
+ /** Two sightings of one server: the union of their tools, first schema wins, a URL fills a missing one. */
54
+ function mergeServer(current, next) {
55
+ if (!current)
56
+ return { ...next, tools: [...(next.tools ?? [])] };
57
+ const byName = new Map((current.tools ?? []).map((t) => [t.name, t]));
58
+ for (const t of next.tools ?? [])
59
+ if (!byName.has(t.name))
60
+ byName.set(t.name, t);
61
+ return { name: current.name || next.name, url: current.url || next.url, tools: [...byName.values()] };
62
+ }
63
+ function serverEntry(s) {
64
+ const tools = [...(s.tools ?? [])].sort((a, b) => a.name.localeCompare(b.name)).map(toWire);
65
+ return { name: s.name, url: s.url, snapshotHash: snapshotHash(tools), tools };
66
+ }
41
67
  exports.SNAPSHOT_HASH_PREFIX = 'v1:sha256:';
42
68
  /** `v1:sha256` over sorted `name:schemaHash` lines. Descriptions are not part of it. */
43
69
  function snapshotHash(tools) {
@@ -61,9 +87,12 @@ class ToolRegistry {
61
87
  }
62
88
  this.tools.set(agentKey, bucket);
63
89
  const servers = this.servers.get(agentKey) ?? new Map();
64
- for (const s of mcpServers)
65
- if (!servers.has(s.url || s.name))
66
- servers.set(s.url || s.name, s);
90
+ for (const s of mcpServers) {
91
+ if (!s.name && !s.url)
92
+ continue;
93
+ const id = serverKey(s);
94
+ servers.set(id, mergeServer(servers.get(id), s));
95
+ }
67
96
  this.servers.set(agentKey, servers);
68
97
  }
69
98
  /** A tool ran that nothing declared: record the name with no schema. Server-prefixed names belong to the server. */
@@ -88,9 +117,9 @@ class ToolRegistry {
88
117
  this.hashes.delete(agentKey);
89
118
  }
90
119
  }
91
- /** An empty set is never pushed; an empty snapshot would stale every declared row. */
92
- hasTools(agentKey) {
93
- return (this.tools.get(agentKey)?.size ?? 0) > 0;
120
+ /** Nothing declared is never pushed; an empty snapshot would stale every declared row. */
121
+ hasDeclarations(agentKey) {
122
+ return (this.tools.get(agentKey)?.size ?? 0) > 0 || (this.servers.get(agentKey)?.size ?? 0) > 0;
94
123
  }
95
124
  /** Contract §4 fingerprint of one agent's tools; cached until the set changes. */
96
125
  snapshotHash(agentKey) {
@@ -104,11 +133,18 @@ class ToolRegistry {
104
133
  this.hashes.set(agentKey, value);
105
134
  return value;
106
135
  }
136
+ /** What a push would send, as one string: the agent's tool hash and each server's. A server change moves it; the agent hash alone does not. */
137
+ pushFingerprint(agentKey) {
138
+ const servers = [...(this.servers.get(agentKey)?.values() ?? [])]
139
+ .map((s) => `${serverKey(s)}=${serverEntry(s).snapshotHash}`)
140
+ .sort();
141
+ return [this.snapshotHash(agentKey), ...servers].join('|');
142
+ }
107
143
  /** The `POST /iap/sdk/tools` body for one agent (contract §2). */
108
144
  pushBody(agentKey) {
109
145
  const snap = this.snapshot(agentKey);
110
146
  return {
111
- contract: 1,
147
+ contract: 2,
112
148
  agent: agentKey,
113
149
  sdk: snap.sdk,
114
150
  snapshotHash: snapshotHash(snap.tools),
@@ -132,13 +168,13 @@ class ToolRegistry {
132
168
  tools.push(entry);
133
169
  }
134
170
  for (const [id, s] of this.servers.get(k) ?? [])
135
- servers.set(id, s);
171
+ servers.set(id, mergeServer(servers.get(id), s));
136
172
  }
137
173
  return {
138
174
  agent: agentKey ?? (keys.length === 1 ? keys[0] : null),
139
175
  sdk: `typescript@${_version_1.VERSION}`,
140
176
  tools,
141
- mcpServers: [...servers.values()],
177
+ mcpServers: [...servers.values()].map(serverEntry),
142
178
  };
143
179
  }
144
180
  }
@@ -161,8 +197,8 @@ function registerForClient(client, tools, mcpServers = []) {
161
197
  if (key)
162
198
  DEFAULT.register(key, tools, mcpServers);
163
199
  }
164
- catch {
165
- /* registry problems never stop an agent */
200
+ catch (err) {
201
+ (0, debug_1.debugLog)('registerForClient', err);
166
202
  }
167
203
  }
168
204
  function serverNamesOf(boot) {
@@ -184,7 +220,8 @@ async function knownServerNames(client) {
184
220
  try {
185
221
  return serverNamesOf(await c.bootstrap());
186
222
  }
187
- catch {
223
+ catch (err) {
224
+ (0, debug_1.debugLog)('knownServerNames bootstrap', err);
188
225
  return [];
189
226
  }
190
227
  }
@@ -210,7 +247,8 @@ async function knownToolMap(client) {
210
247
  try {
211
248
  return toolMapOf(await c.bootstrap());
212
249
  }
213
- catch {
250
+ catch (err) {
251
+ (0, debug_1.debugLog)('knownToolMap bootstrap', err);
214
252
  return {};
215
253
  }
216
254
  }
@@ -226,30 +264,40 @@ function observeForClient(client, name) {
226
264
  if (key)
227
265
  DEFAULT.observe(key, name, cachedServerNames(client), cachedToolMap(client));
228
266
  }
229
- catch {
230
- /* registry problems never stop an agent */
267
+ catch (err) {
268
+ (0, debug_1.debugLog)('observeForClient', err);
231
269
  }
232
270
  }
233
271
  const isRecord = (v) => !!v && typeof v === 'object' && !Array.isArray(v);
234
272
  /** Gemini `Schema` (uppercase `type`, `nullable`) to JSON Schema. */
273
+ const GEMINI_KEY = {
274
+ type: (out, v) => {
275
+ out.type = typeof v === 'string' ? v.toLowerCase() : v;
276
+ },
277
+ properties: (out, v) => {
278
+ out.properties = isRecord(v)
279
+ ? Object.fromEntries(Object.entries(v).map(([k, x]) => [k, geminiSchemaToJsonSchema(x)]))
280
+ : v;
281
+ },
282
+ items: (out, v) => {
283
+ out.items = geminiSchemaToJsonSchema(v);
284
+ },
285
+ anyOf: (out, v) => {
286
+ out.anyOf = Array.isArray(v) ? v.map(geminiSchemaToJsonSchema) : v;
287
+ },
288
+ any_of: (out, v) => {
289
+ out.anyOf = Array.isArray(v) ? v.map(geminiSchemaToJsonSchema) : v;
290
+ },
291
+ nullable: () => undefined,
292
+ };
235
293
  function geminiSchemaToJsonSchema(schema) {
236
- if (schema === null || schema === undefined)
237
- return schema;
238
294
  if (!isRecord(schema))
239
295
  return schema;
240
296
  const out = {};
241
297
  for (const [key, value] of Object.entries(schema)) {
242
- if (key === 'type' && typeof value === 'string')
243
- out.type = value.toLowerCase();
244
- else if (key === 'properties' && isRecord(value)) {
245
- out.properties = Object.fromEntries(Object.entries(value).map(([k, v]) => [k, geminiSchemaToJsonSchema(v)]));
246
- }
247
- else if (key === 'items')
248
- out.items = geminiSchemaToJsonSchema(value);
249
- else if ((key === 'anyOf' || key === 'any_of') && Array.isArray(value))
250
- out.anyOf = value.map(geminiSchemaToJsonSchema);
251
- else if (key === 'nullable')
252
- continue;
298
+ const handle = GEMINI_KEY[key];
299
+ if (handle)
300
+ handle(out, value);
253
301
  else
254
302
  out[key] = value;
255
303
  }
@@ -286,121 +334,266 @@ function schemaFromArgs(args) {
286
334
  }
287
335
  return undefined;
288
336
  }
337
+ function isAdkToolset(rec) {
338
+ return typeof rec.getTools === 'function' && typeof rec._getDeclaration !== 'function';
339
+ }
340
+ function adkFunctionDeclaration(rec) {
341
+ let decl;
342
+ if (typeof rec._getDeclaration === 'function') {
343
+ try {
344
+ decl = rec._getDeclaration();
345
+ }
346
+ catch (err) {
347
+ (0, debug_1.debugLog)('adk _getDeclaration', err);
348
+ }
349
+ }
350
+ const name = (decl?.name ?? rec.name);
351
+ if (!name)
352
+ return null;
353
+ const schema = decl?.parametersJsonSchema ?? geminiSchemaToJsonSchema(decl?.parameters);
354
+ return {
355
+ name,
356
+ description: String(decl?.description ?? rec.description ?? ''),
357
+ inputSchema: schema,
358
+ schemaSource: schema !== undefined && schema !== null ? 'framework' : 'none',
359
+ };
360
+ }
289
361
  function declarationsFromAdkAgent(agent) {
290
362
  const tools = [];
291
363
  const servers = [];
292
- const list = agent?.tools ?? [];
293
- for (const t of list) {
364
+ for (const t of agent?.tools ?? []) {
294
365
  const rec = t;
295
- if (typeof rec.getTools === 'function' && typeof rec._getDeclaration !== 'function') {
296
- const params = (rec._connectionParams ?? rec.connectionParams);
297
- const url = String(params?.url ?? rec.url ?? '');
298
- servers.push({ name: String(rec.name ?? url ?? 'mcp'), url });
366
+ if (isAdkToolset(rec)) {
367
+ const { name, url } = adkToolsetIdentity(rec);
368
+ if (name)
369
+ servers.push({ name, url });
299
370
  continue;
300
371
  }
301
- let decl;
302
- if (typeof rec._getDeclaration === 'function') {
303
- try {
304
- decl = rec._getDeclaration();
305
- }
306
- catch {
307
- decl = undefined;
308
- }
309
- }
310
- const name = (decl?.name ?? rec.name);
311
- if (!name)
312
- continue;
313
- const schema = decl?.parametersJsonSchema ?? geminiSchemaToJsonSchema(decl?.parameters);
314
- tools.push({
315
- name,
316
- description: String(decl?.description ?? rec.description ?? ''),
317
- inputSchema: schema,
318
- schemaSource: schema !== undefined && schema !== null ? 'framework' : 'none',
319
- });
372
+ const decl = adkFunctionDeclaration(rec);
373
+ if (decl)
374
+ tools.push(decl);
320
375
  }
321
376
  return { tools, servers };
322
377
  }
323
- function declarationsFromStrandsAgent(agent) {
378
+ /**
379
+ * The tools ADK resolved for one model request (`LlmRequest.toolsDict`): toolsets are
380
+ * already expanded, and each MCP tool carries its raw definition and its session.
381
+ * No extra I/O.
382
+ */
383
+ function declarationsFromAdkResolvedTools(toolsDict) {
324
384
  const tools = [];
325
385
  const servers = new Map();
326
- const a = agent;
327
- const registry = (a?.toolRegistry?.registry ?? a?.tools ?? {});
328
- const entries = Array.isArray(registry)
329
- ? registry.map((t) => [String(t.name ?? ''), t])
330
- : Object.entries(registry).map(([k, v]) => [k, v]);
331
- for (const [key, tool] of entries) {
332
- if (tool?.mcpClient || tool?.constructor?.name === 'MCPAgentTool') {
333
- const client = tool.mcpClient;
334
- const url = String(client?.url ?? '');
335
- const prefix = client?.prefix ?? client?._prefix;
336
- const split = (0, tool_name_1.splitPrefixedToolName)(String(tool.toolSpec?.name ?? key));
337
- const label = prefix
338
- ? String(prefix).replace(/_+$/, '')
339
- : split
340
- ? split.mcp
341
- : String(client?.name ?? url);
342
- if (!label)
343
- continue;
344
- if (!servers.has(url || label))
345
- servers.set(url || label, { name: label, url });
386
+ for (const rec of adkResolvedList(toolsDict)) {
387
+ const url = adkToolSessionUrl(rec);
388
+ if (url) {
389
+ const mcp = mcpToolDeclaration(rec);
390
+ if (mcp)
391
+ addServerTool(servers, url, mcp, url);
346
392
  continue;
347
393
  }
348
- const spec = (tool?.toolSpec ?? tool?.tool_spec);
349
- const input = spec?.inputSchema;
350
- const schema = input ? (input.json ?? input) : undefined;
351
- tools.push({
352
- name: String(spec?.name ?? key),
353
- description: String(spec?.description ?? ''),
354
- inputSchema: schema,
355
- schemaSource: schema !== undefined ? 'framework' : 'none',
356
- });
394
+ const decl = adkFunctionDeclaration(rec);
395
+ if (decl)
396
+ tools.push(decl);
397
+ }
398
+ return { tools, servers: [...servers.values()] };
399
+ }
400
+ function adkResolvedList(toolsDict) {
401
+ if (isRecord(toolsDict))
402
+ return Object.values(toolsDict);
403
+ return Array.isArray(toolsDict) ? toolsDict : [];
404
+ }
405
+ /** A resolved MCP tool knows its session, not its toolset; the session URL is the server's identity. */
406
+ function adkToolSessionUrl(rec) {
407
+ if (!(rec.mcpTool ?? rec.mcp_tool ?? rec._mcp_tool))
408
+ return '';
409
+ const params = rec.mcpSessionManager?.connectionParams;
410
+ return String(params?.url ?? '');
411
+ }
412
+ /** ADK toolsets list their tools asynchronously; each tool wraps the raw MCP definition as `mcpTool`. */
413
+ async function declarationsFromAdkAgentAsync(agent) {
414
+ const sync = declarationsFromAdkAgent(agent);
415
+ const list = (agent?.tools ?? []);
416
+ const toolsets = list.filter(isAdkToolset);
417
+ const servers = await Promise.all(toolsets.map(adkToolsetServer));
418
+ return { tools: sync.tools, servers };
419
+ }
420
+ /** Which server an ADK toolset reaches: its prefix, else its name, else the connection URL. */
421
+ function adkToolsetIdentity(rec) {
422
+ const params = (rec.mcpSessionManager?.connectionParams ??
423
+ rec._connectionParams ??
424
+ rec.connectionParams);
425
+ const url = String(params?.url ?? rec.url ?? '');
426
+ const name = String(rec.prefix ?? rec.name ?? url).replace(/_+$/, '');
427
+ return { name, url };
428
+ }
429
+ async function adkToolsetServer(rec) {
430
+ const { name, url } = adkToolsetIdentity(rec);
431
+ let tools = [];
432
+ try {
433
+ const listed = (await rec.getTools()) ?? [];
434
+ tools = listed.map(mcpToolDeclaration).filter((d) => d !== null);
435
+ }
436
+ catch (err) {
437
+ (0, debug_1.debugLog)('adk getTools', err);
438
+ }
439
+ return { name, url, tools };
440
+ }
441
+ function mcpToolDeclaration(tool) {
442
+ const rec = tool;
443
+ const raw = (rec.mcpTool ?? rec.mcp_tool ?? rec._mcp_tool);
444
+ const name = String(raw?.name ?? rec.name ?? '');
445
+ if (!name)
446
+ return null;
447
+ return {
448
+ name,
449
+ description: String(raw?.description ?? rec.description ?? ''),
450
+ inputSchema: raw?.inputSchema,
451
+ schemaSource: raw?.inputSchema !== undefined ? 'mcp' : 'none',
452
+ };
453
+ }
454
+ /** Which server a Strands `MCPAgentTool` reaches: the client's prefix, else the prefixed name, else the client's name or URL. */
455
+ function strandsClientIdentity(client) {
456
+ return {
457
+ tagged: String(client?.armoriqServerName ?? client?._armoriq_server_name ?? ''),
458
+ url: String(client?.armoriqServerUrl ?? client?._armoriq_server_url ?? client?.url ?? ''),
459
+ prefix: client?.prefix ?? client?._prefix,
460
+ };
461
+ }
462
+ function strandsServerOf(tool, key) {
463
+ const client = tool.mcpClient;
464
+ const { tagged, url, prefix } = strandsClientIdentity(client);
465
+ const spec = (tool.toolSpec ?? tool.tool_spec);
466
+ const split = (0, tool_name_1.splitPrefixedToolName)(String(spec?.name ?? key));
467
+ const fromPrefix = prefix ? String(prefix).replace(/_+$/, '') : '';
468
+ const label = tagged || fromPrefix || split?.mcp || String(client?.name ?? url);
469
+ return label ? { url, label, prefix, action: split?.action } : null;
470
+ }
471
+ /** The tool under its raw MCP name and schema when the client exposes them, else from the Strands spec. */
472
+ function strandsServerTool(tool, key, ref) {
473
+ const rawMcp = (tool.mcpTool ?? tool.mcp_tool);
474
+ const spec = (tool.toolSpec ?? tool.tool_spec);
475
+ const rawSchema = (rawMcp?.inputSchema ?? spec?.inputSchema);
476
+ return {
477
+ name: String(rawMcp?.name ?? ref.action ?? stripPrefix(key, ref.prefix)),
478
+ description: String(rawMcp?.description ?? spec?.description ?? ''),
479
+ inputSchema: rawSchema?.json ?? rawSchema,
480
+ schemaSource: rawMcp ? 'mcp' : 'framework',
481
+ };
482
+ }
483
+ function addStrandsServerTool(servers, key, tool) {
484
+ const ref = strandsServerOf(tool, key);
485
+ if (!ref)
486
+ return;
487
+ const id = serverKey({ name: ref.label, url: ref.url });
488
+ const server = servers.get(id) ?? { name: ref.label, url: ref.url, tools: [] };
489
+ server.tools.push(strandsServerTool(tool, key, ref));
490
+ servers.set(id, server);
491
+ }
492
+ /** The agent's tool registry as `[key, tool]` pairs, whether Strands exposes it as a map or a list. */
493
+ function strandsToolEntries(agent) {
494
+ const a = agent;
495
+ const registry = (a?.toolRegistry?.registry ?? a?.tools ?? {});
496
+ if (Array.isArray(registry))
497
+ return registry.map((t) => [String(t?.name ?? ''), t]);
498
+ return Object.entries(registry).map(([k, v]) => [k, v]);
499
+ }
500
+ function isStrandsMcpTool(tool) {
501
+ return !!tool?.mcpClient || tool?.constructor?.name === 'MCPAgentTool';
502
+ }
503
+ function strandsFunctionTool(key, tool) {
504
+ const spec = (tool?.toolSpec ?? tool?.tool_spec);
505
+ const input = spec?.inputSchema;
506
+ const schema = input ? (input.json ?? input) : undefined;
507
+ return {
508
+ name: String(spec?.name ?? key),
509
+ description: String(spec?.description ?? ''),
510
+ inputSchema: schema,
511
+ schemaSource: schema !== undefined ? 'framework' : 'none',
512
+ };
513
+ }
514
+ function declarationsFromStrandsAgent(agent) {
515
+ const tools = [];
516
+ const servers = new Map();
517
+ for (const [key, tool] of strandsToolEntries(agent)) {
518
+ if (isStrandsMcpTool(tool))
519
+ addStrandsServerTool(servers, key, tool);
520
+ else
521
+ tools.push(strandsFunctionTool(key, tool));
357
522
  }
358
523
  return { tools, servers: [...servers.values()] };
359
524
  }
360
- /** LangChain tools handed to the factory. A name in `<server>__<tool>` form is MCP-backed. */
361
525
  /**
362
526
  * Tool definitions as a model request carries them: `{type:'function', function:{name,
363
527
  * description, parameters}}` or flat `{name, description, parameters | input_schema}`.
364
528
  * LangChain hands these to `handleChatModelStart` in `invocation_params.tools`, so the
365
529
  * registry fills from the model call with nothing for the developer to wire.
366
530
  */
531
+ /** A remote MCP server declared inline in a model request: OpenAI `{type: 'mcp', server_label, server_url}` or Anthropic `{type: 'mcp_toolset', mcp_server_name}`. */
532
+ function serverFromModelToolEntry(raw) {
533
+ if (raw.type === 'mcp') {
534
+ const url = String(raw.server_url ?? '');
535
+ const name = String(raw.server_label ?? url);
536
+ return name ? { name, url, tools: [] } : null;
537
+ }
538
+ if (raw.type === 'mcp_toolset' && typeof raw.mcp_server_name === 'string' && raw.mcp_server_name) {
539
+ return { name: raw.mcp_server_name, url: '', tools: [] };
540
+ }
541
+ return null;
542
+ }
543
+ function modelToolSchema(fn) {
544
+ if (isRecord(fn.parameters))
545
+ return fn.parameters;
546
+ if (isRecord(fn.input_schema))
547
+ return fn.input_schema;
548
+ return undefined;
549
+ }
550
+ /** The server a prefixed tool name belongs to: `<server>__<tool>`, `<server>_<tool>` for a registered server, or the org's tool map. */
551
+ function serverOwnerOf(name, serverNames, toolMap) {
552
+ const split = (0, tool_name_1.splitPrefixedToolName)(name);
553
+ if (split)
554
+ return { owner: split.mcp, action: split.action };
555
+ const registered = serverNames.find((sv) => name.startsWith(`${sv}_`) && name.length > sv.length + 1);
556
+ const owner = registered ?? toolMap[name];
557
+ return owner ? { owner, action: name } : null;
558
+ }
559
+ function addServerTool(servers, owner, tool, url = '') {
560
+ const id = serverKey({ name: owner, url });
561
+ const server = servers.get(id) ?? { name: owner, url, tools: [] };
562
+ server.tools.push(tool);
563
+ servers.set(id, server);
564
+ }
565
+ /** The schemas here are the model-side copies, not what the server sent; only a raw MCP definition is `mcp`. */
367
566
  function declarationsFromOpenAiTools(list, serverNames = [], toolMap = {}) {
368
567
  const tools = [];
369
568
  const servers = new Map();
370
569
  for (const raw of list) {
371
570
  if (!isRecord(raw))
372
571
  continue;
373
- const fn = isRecord(raw.function) ? raw.function : raw;
374
- const name = fn.name;
375
- if (typeof name !== 'string' || !name)
376
- continue;
377
- const split = (0, tool_name_1.splitPrefixedToolName)(name);
378
- if (split) {
379
- if (!servers.has(split.mcp))
380
- servers.set(split.mcp, { name: split.mcp, url: '' });
572
+ const declaredServer = serverFromModelToolEntry(raw);
573
+ if (declaredServer) {
574
+ const id = serverKey(declaredServer);
575
+ servers.set(id, mergeServer(servers.get(id), declaredServer));
381
576
  continue;
382
577
  }
383
- const owner = serverNames.find((sv) => name.startsWith(`${sv}_`) && name.length > sv.length + 1) ??
384
- toolMap[name];
385
- if (owner) {
386
- if (!servers.has(owner))
387
- servers.set(owner, { name: owner, url: '' });
578
+ const fn = isRecord(raw.function) ? raw.function : raw;
579
+ if (typeof fn.name !== 'string' || !fn.name)
388
580
  continue;
389
- }
390
- const schema = isRecord(fn.parameters)
391
- ? fn.parameters
392
- : isRecord(fn.input_schema)
393
- ? fn.input_schema
394
- : undefined;
395
- tools.push({
396
- name,
581
+ const schema = modelToolSchema(fn);
582
+ const decl = {
583
+ name: fn.name,
397
584
  description: String(fn.description ?? ''),
398
585
  inputSchema: schema,
399
586
  schemaSource: schema !== undefined ? 'framework' : 'none',
400
- });
587
+ };
588
+ const owned = serverOwnerOf(fn.name, serverNames, toolMap);
589
+ if (owned)
590
+ addServerTool(servers, owned.owner, { ...decl, name: owned.action });
591
+ else
592
+ tools.push(decl);
401
593
  }
402
594
  return { tools, servers: [...servers.values()] };
403
595
  }
596
+ /** LangChain tools handed to the factory. A name in `<server>__<tool>` form is MCP-backed. */
404
597
  function declarationsFromLangChainTools(list, serverNames = []) {
405
598
  const tools = [];
406
599
  const servers = new Map();
@@ -409,14 +602,7 @@ function declarationsFromLangChainTools(list, serverNames = []) {
409
602
  const name = rec?.name;
410
603
  if (!name)
411
604
  continue;
412
- const split = (0, tool_name_1.splitPrefixedToolName)(name);
413
- if (split) {
414
- if (!servers.has(split.mcp))
415
- servers.set(split.mcp, { name: split.mcp, url: '' });
416
- continue;
417
- }
418
- // `<server>_<tool>` for a server the org registered: MCP-backed, listed as its server.
419
- const owner = serverNames.find((sv) => name.startsWith(`${sv}_`) && name.length > sv.length + 1);
605
+ const owner = serverOwnerOf(name, serverNames, {})?.owner;
420
606
  if (owner) {
421
607
  if (!servers.has(owner))
422
608
  servers.set(owner, { name: owner, url: '' });
@@ -1 +1 @@
1
- {"version":3,"file":"tool_registry.js","sourceRoot":"","sources":["../src/tool_registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tool_registry.js","sourceRoot":"","sources":["../src/tool_registry.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@armoriq/sdk-dev",
3
- "version": "0.8.3",
3
+ "version": "0.8.4",
4
4
  "description": "ArmorIQ SDK - Build secure AI agents with cryptographic intent verification.",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",