@mondaydotcomorg/atp-server 0.24.1 → 0.24.2

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.
@@ -80,17 +80,14 @@ export interface LoadOpenAPIOptions {
80
80
  baseURL?: string;
81
81
  /**
82
82
  * Dynamic header provider for per-request authentication (e.g., per-user OAuth).
83
- * Similar to GraphQL's headerProvider. Called before each API request.
83
+ * Called before each API request with the request parameters and the execution's requestContext.
84
84
  * @param params - The request parameters
85
- * @param context - Optional context from contextProvider
85
+ * @param requestContext - Optional request context from the execution environment (e.g., user info, auth tokens)
86
86
  * @returns Headers to add to the request
87
87
  */
88
- headerProvider?: (params: Record<string, unknown> | undefined, context?: Record<string, unknown>) => Promise<Record<string, string>> | Record<string, string>;
88
+ headerProvider?: (params: Record<string, unknown> | undefined, requestContext?: Record<string, unknown>) => Promise<Record<string, string>> | Record<string, string>;
89
89
  /**
90
- * Context provider to extract context from execution environment.
91
- * Similar to GraphQL's contextProvider. Called once per request.
92
- * @param executionContext - The execution context from ATP
93
- * @returns Context object passed to headerProvider
90
+ * @deprecated Use headerProvider instead, which now receives requestContext directly as its second parameter.
94
91
  */
95
92
  contextProvider?: (executionContext?: Record<string, unknown>) => Promise<Record<string, unknown>> | Record<string, unknown>;
96
93
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"openapi-loader.d.ts","sourceRoot":"","sources":["../src/openapi-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openapi-loader.d.ts","sourceRoot":"","sources":["../src/openapi-loader.ts"],"names":[],"mappings":"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"}
@@ -201,12 +201,12 @@ function convertOperation(path, method, operation, spec, baseURL, options, pathP
201
201
  const headers = {
202
202
  'Content-Type': 'application/json',
203
203
  };
204
- let context;
205
- if (options.contextProvider) {
206
- context = await options.contextProvider(handlerContext?.requestContext);
207
- }
208
204
  if (options.headerProvider) {
209
- const dynamicHeaders = await options.headerProvider(input, context);
205
+ let requestContext = handlerContext?.requestContext;
206
+ if (options.contextProvider) {
207
+ requestContext = await options.contextProvider(requestContext);
208
+ }
209
+ const dynamicHeaders = await options.headerProvider(input, requestContext);
210
210
  Object.assign(headers, dynamicHeaders);
211
211
  log.debug('Added headers from headerProvider', { keys: Object.keys(dynamicHeaders) });
212
212
  }
@@ -1 +1 @@
1
- {"version":3,"file":"openapi-loader.js","sourceRoot":"","sources":["../src/openapi-loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openapi-loader.js","sourceRoot":"","sources":["../src/openapi-loader.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mondaydotcomorg/atp-server",
3
- "version": "0.24.1",
3
+ "version": "0.24.2",
4
4
  "description": "Server implementation for Agent Tool Protocol",
5
5
  "type": "module",
6
6
  "main": "./dist/index.cjs",
@@ -49,11 +49,11 @@
49
49
  "@babel/parser": "^7.26.0",
50
50
  "@babel/traverse": "^7.26.0",
51
51
  "@babel/types": "^7.26.0",
52
- "@mondaydotcomorg/atp-compiler": "0.22.0",
53
- "@mondaydotcomorg/atp-protocol": "0.22.0",
54
- "@mondaydotcomorg/atp-provenance": "0.22.0",
55
- "@mondaydotcomorg/atp-providers": "0.22.0",
56
- "@mondaydotcomorg/atp-runtime": "0.22.0",
52
+ "@mondaydotcomorg/atp-compiler": "0.22.1",
53
+ "@mondaydotcomorg/atp-protocol": "0.22.1",
54
+ "@mondaydotcomorg/atp-provenance": "0.22.1",
55
+ "@mondaydotcomorg/atp-providers": "0.22.1",
56
+ "@mondaydotcomorg/atp-runtime": "0.22.1",
57
57
  "@opentelemetry/api": "^1.9.0",
58
58
  "@opentelemetry/auto-instrumentations-node": "^0.66.0",
59
59
  "@opentelemetry/core": "^2.2.0",
@@ -31,11 +31,11 @@ import fs from 'node:fs/promises';
31
31
  * Dynamic header provider for GraphQL requests.
32
32
  *
33
33
  * @param params - The GraphQL query parameters
34
- * @param context - Optional context from contextProvider (e.g., auth tokens)
34
+ * @param requestContext - Optional request context from the execution environment (e.g., user info, auth tokens)
35
35
  */
36
36
  export type GraphQLAuthProvider = (
37
37
  params?: Record<string, any>,
38
- context?: Record<string, any>
38
+ requestContext?: Record<string, any>
39
39
  ) => Promise<Record<string, string>> | Record<string, string>;
40
40
 
41
41
  /**
@@ -43,12 +43,12 @@ export type GraphQLAuthProvider = (
43
43
  * Priority: headerProvider > authProvider + auth > static headers
44
44
  * @param options - Load options including auth config
45
45
  * @param params - Optional request params passed to headerProvider for dynamic resolution
46
- * @param executionContext - Optional execution context passed from handler (contains requestContext)
46
+ * @param requestContext - Optional request context from the execution environment (e.g., user info, auth tokens)
47
47
  */
48
48
  async function resolveHeaders(
49
49
  options: LoadGraphQLOptions,
50
50
  params?: Record<string, any>,
51
- executionContext?: Record<string, any>
51
+ requestContext?: Record<string, any>
52
52
  ): Promise<Record<string, string>> {
53
53
  const headers: Record<string, string> = {};
54
54
 
@@ -65,10 +65,11 @@ async function resolveHeaders(
65
65
  }
66
66
 
67
67
  if (options.headerProvider) {
68
- const context = options.contextProvider
69
- ? await options.contextProvider(executionContext)
70
- : undefined;
71
- const dynamicHeaders = await options.headerProvider(params, context);
68
+ let ctx = requestContext;
69
+ if (options.contextProvider) {
70
+ ctx = await options.contextProvider(requestContext);
71
+ }
72
+ const dynamicHeaders = await options.headerProvider(params, ctx);
72
73
  Object.assign(headers, dynamicHeaders);
73
74
  }
74
75
 
@@ -193,10 +194,11 @@ export interface LoadGraphQLOptions {
193
194
  headers?: Record<string, string>;
194
195
  /** Auth provider for dynamic credential resolution */
195
196
  authProvider?: AuthProvider;
196
- /** Dynamic header provider function - called before each request */
197
+ /** Dynamic header provider function - called before each request with params and requestContext */
197
198
  headerProvider?: GraphQLAuthProvider;
198
- /** Context provider - called before each request to get current context (e.g., auth tokens).
199
- * Receives execution context which may contain requestContext from execute() call. */
199
+ /**
200
+ * @deprecated Use headerProvider instead, which now receives requestContext directly as its second parameter.
201
+ */
200
202
  contextProvider?: (
201
203
  executionContext?: Record<string, any>
202
204
  ) => Record<string, any> | Promise<Record<string, any>>;
@@ -342,7 +344,7 @@ function convertFieldToFunction(
342
344
  description,
343
345
  inputSchema,
344
346
  outputSchema,
345
- handler: async (params: unknown, context?: { metadata?: Record<string, any> }) => {
347
+ handler: async (params: unknown, context?: { metadata?: Record<string, any>; requestContext?: Record<string, unknown> }) => {
346
348
  const paramsObj = (params as Record<string, any>) || {};
347
349
  const customFields = paramsObj._fields;
348
350
 
@@ -373,8 +375,7 @@ function convertFieldToFunction(
373
375
  context.metadata.graphql_variables = variables;
374
376
  }
375
377
 
376
- // Pass execution context (including requestContext) to resolveHeaders
377
- const headers = await resolveHeaders(options, paramsObj, context);
378
+ const headers = await resolveHeaders(options, paramsObj, context?.requestContext);
378
379
 
379
380
  const fetchFn = options.fetcher || fetch;
380
381
  const response = await fetchFn(url, {
@@ -166,21 +166,18 @@ export interface LoadOpenAPIOptions {
166
166
 
167
167
  /**
168
168
  * Dynamic header provider for per-request authentication (e.g., per-user OAuth).
169
- * Similar to GraphQL's headerProvider. Called before each API request.
169
+ * Called before each API request with the request parameters and the execution's requestContext.
170
170
  * @param params - The request parameters
171
- * @param context - Optional context from contextProvider
171
+ * @param requestContext - Optional request context from the execution environment (e.g., user info, auth tokens)
172
172
  * @returns Headers to add to the request
173
173
  */
174
174
  headerProvider?: (
175
175
  params: Record<string, unknown> | undefined,
176
- context?: Record<string, unknown>
176
+ requestContext?: Record<string, unknown>
177
177
  ) => Promise<Record<string, string>> | Record<string, string>;
178
178
 
179
179
  /**
180
- * Context provider to extract context from execution environment.
181
- * Similar to GraphQL's contextProvider. Called once per request.
182
- * @param executionContext - The execution context from ATP
183
- * @returns Context object passed to headerProvider
180
+ * @deprecated Use headerProvider instead, which now receives requestContext directly as its second parameter.
184
181
  */
185
182
  contextProvider?: (
186
183
  executionContext?: Record<string, unknown>
@@ -515,13 +512,12 @@ function convertOperation(
515
512
  'Content-Type': 'application/json',
516
513
  };
517
514
 
518
- let context: Record<string, unknown> | undefined;
519
- if (options.contextProvider) {
520
- context = await options.contextProvider(handlerContext?.requestContext);
521
- }
522
-
523
515
  if (options.headerProvider) {
524
- const dynamicHeaders = await options.headerProvider(input, context);
516
+ let requestContext = handlerContext?.requestContext;
517
+ if (options.contextProvider) {
518
+ requestContext = await options.contextProvider(requestContext);
519
+ }
520
+ const dynamicHeaders = await options.headerProvider(input, requestContext);
525
521
  Object.assign(headers, dynamicHeaders);
526
522
  log.debug('Added headers from headerProvider', { keys: Object.keys(dynamicHeaders) });
527
523
  }