managed-deepagents 0.6.2-dev.4 → 0.6.2-dev.41

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 (90) hide show
  1. package/README.md +18 -3
  2. package/dist/agent-auth.d.ts +141 -0
  3. package/dist/agent-auth.d.ts.map +1 -0
  4. package/dist/agent-auth.js +426 -0
  5. package/dist/agent-auth.js.map +1 -0
  6. package/dist/channels/manifest.d.ts +4 -0
  7. package/dist/channels/manifest.d.ts.map +1 -1
  8. package/dist/channels/schedule-delivery.d.ts +2 -0
  9. package/dist/channels/schedule-delivery.d.ts.map +1 -1
  10. package/dist/channels/schedule-delivery.js +40 -4
  11. package/dist/channels/schedule-delivery.js.map +1 -1
  12. package/dist/channels/trigger/client.d.ts +1 -0
  13. package/dist/channels/trigger/client.d.ts.map +1 -1
  14. package/dist/channels/trigger/client.js +19 -8
  15. package/dist/channels/trigger/client.js.map +1 -1
  16. package/dist/channels/trigger/http.d.ts +8 -0
  17. package/dist/channels/trigger/http.d.ts.map +1 -1
  18. package/dist/channels/trigger/http.js +42 -1
  19. package/dist/channels/trigger/http.js.map +1 -1
  20. package/dist/channels/trigger/identity-context.d.ts +47 -0
  21. package/dist/channels/trigger/identity-context.d.ts.map +1 -0
  22. package/dist/channels/trigger/identity-context.js +171 -0
  23. package/dist/channels/trigger/identity-context.js.map +1 -0
  24. package/dist/channels/trigger/types.d.ts +5 -1
  25. package/dist/channels/trigger/types.d.ts.map +1 -1
  26. package/dist/channels/trigger/types.js +5 -0
  27. package/dist/channels/trigger/types.js.map +1 -1
  28. package/dist/connections.d.ts +74 -0
  29. package/dist/connections.d.ts.map +1 -0
  30. package/dist/connections.js +277 -0
  31. package/dist/connections.js.map +1 -0
  32. package/dist/connectors/mcp/index.d.ts +29 -89
  33. package/dist/connectors/mcp/index.d.ts.map +1 -1
  34. package/dist/connectors/mcp/index.js +258 -50
  35. package/dist/connectors/mcp/index.js.map +1 -1
  36. package/dist/connectors/mcp/schema.d.ts +12 -0
  37. package/dist/connectors/mcp/schema.d.ts.map +1 -0
  38. package/dist/connectors/mcp/schema.js +57 -0
  39. package/dist/connectors/mcp/schema.js.map +1 -0
  40. package/dist/connectors/mcp/types.d.ts +62 -0
  41. package/dist/connectors/mcp/types.d.ts.map +1 -0
  42. package/dist/connectors/mcp/types.js +2 -0
  43. package/dist/connectors/mcp/types.js.map +1 -0
  44. package/dist/connectors/tool-selection.d.ts +9 -18
  45. package/dist/connectors/tool-selection.d.ts.map +1 -1
  46. package/dist/connectors/tool-selection.js +32 -58
  47. package/dist/connectors/tool-selection.js.map +1 -1
  48. package/dist/credential-gate.d.ts +40 -0
  49. package/dist/credential-gate.d.ts.map +1 -0
  50. package/dist/credential-gate.js +227 -0
  51. package/dist/credential-gate.js.map +1 -0
  52. package/dist/identity/index.d.ts +1 -1
  53. package/dist/identity/index.d.ts.map +1 -1
  54. package/dist/identity/index.js.map +1 -1
  55. package/dist/identity/types.d.ts +79 -5
  56. package/dist/identity/types.d.ts.map +1 -1
  57. package/dist/index.d.ts +11 -6
  58. package/dist/index.d.ts.map +1 -1
  59. package/dist/index.js +1 -0
  60. package/dist/index.js.map +1 -1
  61. package/dist/ingress/index.d.ts +10 -2
  62. package/dist/ingress/index.d.ts.map +1 -1
  63. package/dist/ingress/index.js +17 -9
  64. package/dist/ingress/index.js.map +1 -1
  65. package/dist/runtime/auth.d.ts +49 -5
  66. package/dist/runtime/auth.d.ts.map +1 -1
  67. package/dist/runtime/auth.js +100 -5
  68. package/dist/runtime/auth.js.map +1 -1
  69. package/dist/runtime/http.d.ts +1 -1
  70. package/dist/runtime/http.d.ts.map +1 -1
  71. package/dist/runtime/http.js.map +1 -1
  72. package/dist/runtime/identity-runtime.d.ts +65 -5
  73. package/dist/runtime/identity-runtime.d.ts.map +1 -1
  74. package/dist/runtime/identity-runtime.js +148 -0
  75. package/dist/runtime/identity-runtime.js.map +1 -1
  76. package/dist/runtime/index.d.ts.map +1 -1
  77. package/dist/runtime/index.js +12 -7
  78. package/dist/runtime/index.js.map +1 -1
  79. package/dist/runtime/managed-middleware.d.ts +2 -2
  80. package/dist/runtime/managed-middleware.js +6 -6
  81. package/dist/runtime/managed-tools.d.ts +19 -15
  82. package/dist/runtime/managed-tools.d.ts.map +1 -1
  83. package/dist/runtime/managed-tools.js +14 -13
  84. package/dist/runtime/managed-tools.js.map +1 -1
  85. package/dist/runtime/types.d.ts +2 -2
  86. package/package.json +8 -8
  87. package/dist/connectors/mcp/load.d.ts +0 -12
  88. package/dist/connectors/mcp/load.d.ts.map +0 -1
  89. package/dist/connectors/mcp/load.js +0 -122
  90. package/dist/connectors/mcp/load.js.map +0 -1
@@ -1,122 +0,0 @@
1
- import { MultiServerMCPClient } from "@langchain/mcp-adapters";
2
- import { selectTools } from "../tool-selection.js";
3
- /**
4
- * MCP tools loaded per declared connector, cached for the process lifetime.
5
- *
6
- * The compiled entry's graph factory runs `compileManagedAgent` on every
7
- * invocation, but each connector's MCP connection and tool surface are stable
8
- * for the life of the deployment — so the client is created and its tools
9
- * loaded once per declaration, and every subsequent run reuses them. Storing
10
- * the in-flight promise also dedupes concurrent first runs for the same
11
- * connector. Multiple `connectors.mcp(...)` modules each get their own entry.
12
- */
13
- const cachedTools = new Map();
14
- /**
15
- * Load (and cache) the MCP tools for one connector declaration.
16
- *
17
- * A failed load is never cached, so a transient connection error on the first
18
- * run can be retried on the next, but a misconfigured deployment surfaces the
19
- * error rather than silently starting with no tools.
20
- */
21
- export function loadManagedMcpTools(connectors) {
22
- const cached = cachedTools.get(connectors);
23
- if (cached) {
24
- return cached;
25
- }
26
- const loading = createClientAndLoadTools(connectors).catch((error) => {
27
- cachedTools.delete(connectors);
28
- throw error;
29
- });
30
- cachedTools.set(connectors, loading);
31
- return loading;
32
- }
33
- /** Clear the process-level MCP tool cache. @internal Test-only. */
34
- export function clearManagedMcpToolsCacheForTests(connectors) {
35
- if (connectors) {
36
- cachedTools.delete(connectors);
37
- return;
38
- }
39
- cachedTools.clear();
40
- }
41
- /**
42
- * Create the `@langchain/mcp-adapters` client from the declaration and load its
43
- * tools, applying the managed defaults the spec recommends.
44
- *
45
- * `@langchain/mcp-adapters` is a direct dependency of `managed-deepagents`, so
46
- * the client is imported statically at the top of the module.
47
- */
48
- async function createClientAndLoadTools(connectors) {
49
- const prefixToolNameWithServerName = connectors.prefixToolNameWithServerName ?? true;
50
- const client = new MultiServerMCPClient({
51
- mcpServers: stripManagedToolSelection(connectors.mcpServers),
52
- prefixToolNameWithServerName,
53
- throwOnLoadError: connectors.throwOnLoadError ?? true,
54
- useStandardContentBlocks: connectors.useStandardContentBlocks ?? true,
55
- onConnectionError: connectors.onConnectionError ?? "throw",
56
- });
57
- const tools = await loadToolsByServer(client, connectors.mcpServers, prefixToolNameWithServerName);
58
- // When prefixing is disabled, names can collide with authored tools or across
59
- // servers. The spec only allows opting out if MDA validates no collisions.
60
- if (!prefixToolNameWithServerName) {
61
- assertNoToolNameCollisions(tools);
62
- }
63
- return tools;
64
- }
65
- function stripManagedToolSelection(servers) {
66
- return Object.fromEntries(Object.entries(servers).map(([name, server]) => {
67
- const { includeTools: _includeTools, excludeTools: _excludeTools, ...clientConfig } = server;
68
- // `defaultToolTimeout` is a first-class `@langchain/mcp-adapters` option
69
- // and stays on the server config. The Python adapter has no equivalent
70
- // connection kwarg, so the PyPI loader strips it and wraps tools itself.
71
- return [name, clientConfig];
72
- }));
73
- }
74
- async function loadToolsByServer(client, servers, prefixToolNameWithServerName) {
75
- const tools = [];
76
- for (const [serverName, server] of Object.entries(servers)) {
77
- const serverTools = await client.getTools(serverName);
78
- tools.push(...filterToolsForServer(serverName, server, serverTools, prefixToolNameWithServerName));
79
- }
80
- return tools;
81
- }
82
- /**
83
- * Apply a server's selection, matching against raw MCP tool names.
84
- *
85
- * The adapter has already applied the `{server}__` prefix by the time tools get
86
- * here, so the prefix is stripped back off for matching — an author selects the
87
- * name the server publishes, not the one MDA renamed it to.
88
- */
89
- function filterToolsForServer(serverName, selection, tools, prefixToolNameWithServerName) {
90
- return selectTools(`MCP server "${serverName}"`, selection, tools, (tool) => {
91
- const name = tool.name;
92
- if (typeof name !== "string") {
93
- return undefined;
94
- }
95
- const prefix = `${serverName}__`;
96
- return prefixToolNameWithServerName && name.startsWith(prefix)
97
- ? name.slice(prefix.length)
98
- : name;
99
- });
100
- }
101
- /**
102
- * Reject duplicate tool names among the loaded MCP tools. Only reached when the
103
- * author opted out of server-name prefixing.
104
- */
105
- function assertNoToolNameCollisions(tools) {
106
- const seen = new Set();
107
- const collisions = new Set();
108
- for (const tool of tools) {
109
- const name = tool.name;
110
- if (typeof name !== "string")
111
- continue;
112
- if (seen.has(name))
113
- collisions.add(name);
114
- seen.add(name);
115
- }
116
- if (collisions.size > 0) {
117
- throw new Error(`MCP tool name collision: ${[...collisions].sort().join(", ")}. ` +
118
- "Set `prefixToolNameWithServerName: true` (the default) so each tool is " +
119
- "namespaced by its server, or rename the conflicting tools.");
120
- }
121
- }
122
- //# sourceMappingURL=load.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"load.js","sourceRoot":"","sources":["../../../src/connectors/mcp/load.ts"],"names":[],"mappings":"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"}