qyl-mcp-server 7.1.0 → 7.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 (75) hide show
  1. package/README.md +118 -15
  2. package/dist/auth-extensions.d.ts +20 -0
  3. package/dist/auth-extensions.js +81 -0
  4. package/dist/auth-extensions.js.map +1 -0
  5. package/dist/auth.d.ts +4 -0
  6. package/dist/auth.js +5 -0
  7. package/dist/auth.js.map +1 -0
  8. package/dist/authorization.d.ts +14 -0
  9. package/dist/authorization.js +82 -0
  10. package/dist/authorization.js.map +1 -0
  11. package/dist/ci.d.ts +5 -5
  12. package/dist/ci.js +25 -19
  13. package/dist/ci.js.map +1 -1
  14. package/dist/collector-access.d.ts +17 -0
  15. package/dist/collector-access.js +61 -0
  16. package/dist/collector-access.js.map +1 -0
  17. package/dist/collector.d.ts +4 -1
  18. package/dist/collector.js +6 -2
  19. package/dist/collector.js.map +1 -1
  20. package/dist/config.d.ts +4 -3
  21. package/dist/config.js +5 -5
  22. package/dist/config.js.map +1 -1
  23. package/dist/contract-operations.d.ts +1 -1
  24. package/dist/contract-operations.js +1 -1
  25. package/dist/contract-operations.js.map +1 -1
  26. package/dist/contract-validation.d.ts +1 -1
  27. package/dist/contract-validation.js +45 -1
  28. package/dist/contract-validation.js.map +1 -1
  29. package/dist/events-authorization.d.ts +9 -0
  30. package/dist/events-authorization.js +160 -0
  31. package/dist/events-authorization.js.map +1 -0
  32. package/dist/events.d.ts +235 -0
  33. package/dist/events.js +647 -0
  34. package/dist/events.js.map +1 -0
  35. package/dist/main.d.ts +14 -23
  36. package/dist/main.js +99 -36
  37. package/dist/main.js.map +1 -1
  38. package/dist/mcp-app.html +1 -1
  39. package/dist/mcp-dashboard.html +1 -1
  40. package/dist/mcp-home.html +6 -6
  41. package/dist/metrics-tools.js +16 -13
  42. package/dist/metrics-tools.js.map +1 -1
  43. package/dist/native-execution.d.ts +8 -52
  44. package/dist/native-execution.js +51 -222
  45. package/dist/native-execution.js.map +1 -1
  46. package/dist/oauth-metadata.d.ts +8 -0
  47. package/dist/oauth-metadata.js +89 -0
  48. package/dist/oauth-metadata.js.map +1 -0
  49. package/dist/oauth.d.ts +7 -17
  50. package/dist/oauth.js +16 -68
  51. package/dist/oauth.js.map +1 -1
  52. package/dist/request-scope.d.ts +4 -12
  53. package/dist/request-scope.js +9 -22
  54. package/dist/request-scope.js.map +1 -1
  55. package/dist/server.d.ts +7 -1
  56. package/dist/server.js +83 -33
  57. package/dist/server.js.map +1 -1
  58. package/dist/summaries.d.ts +1 -1
  59. package/dist/summaries.js +2 -2
  60. package/dist/summaries.js.map +1 -1
  61. package/dist/telemetry-redaction.js +13 -0
  62. package/dist/telemetry-redaction.js.map +1 -1
  63. package/dist/tools.d.ts +10 -0
  64. package/dist/tools.js +77 -18
  65. package/dist/tools.js.map +1 -1
  66. package/dist/trace-query.d.ts +5 -0
  67. package/dist/trace-query.js +8 -0
  68. package/dist/trace-query.js.map +1 -0
  69. package/dist/ui-domain.d.ts +4 -0
  70. package/dist/ui-domain.js +28 -0
  71. package/dist/ui-domain.js.map +1 -0
  72. package/dist/webhook.d.ts +45 -0
  73. package/dist/webhook.js +198 -0
  74. package/dist/webhook.js.map +1 -0
  75. package/package.json +27 -22
@@ -1,84 +1,46 @@
1
1
  import { CallToolRequestSchema, CallToolResultSchema } from "@modelcontextprotocol/core";
2
- import { ProtocolError, ProtocolErrorCode } from "@modelcontextprotocol/server";
2
+ import { ProtocolError } from "@modelcontextprotocol/server";
3
3
  import { randomUUID } from "node:crypto";
4
4
  import { rename } from "node:fs/promises";
5
5
  import { homedir } from "node:os";
6
6
  import { join } from "node:path";
7
- import { z } from "zod";
7
+ import * as z from "zod/v4";
8
8
  import { AtomicJsonStore, PersistenceError } from "./atomic-json-store.js";
9
- import { WorkbenchExecutionCostSchema, WorkbenchExecutionTokenUsageSchema, } from "./contract-validation.js";
10
- import { extractExecutionEvidence } from "./execution-evidence.js";
11
- import { MAX_PERSISTED_RESULT_CHARACTERS, sanitizePersistedToolResult, } from "./execution-result.js";
12
9
  import { SecretRedactor } from "./secret-redactor.js";
13
10
  import { McpTelemetry, } from "./telemetry.js";
14
- // 2: usage and cost evidence follows the published contract's snake_case names,
15
- // so a version-1 file must never half-parse. It is set aside rather than read —
16
- // see archiveUnreadableState.
17
- const NATIVE_STATE_VERSION = 2;
11
+ // 3: operation metadata only. Known older layouts are projected into this
12
+ // schema and replaced atomically, without keeping an archive of their payloads.
13
+ const NATIVE_STATE_VERSION = 3;
18
14
  const DEFAULT_MAX_EXECUTIONS = 1_000;
19
15
  const NATIVE_SERVER_ID = "qyl.mcp/native";
20
- const MAX_PROTOCOL_PAYLOAD_CHARACTERS = 64_000;
21
16
  const IdentifierSchema = z.string().min(1).max(256);
22
17
  const IsoDateSchema = z.iso.datetime({ offset: true });
23
- const JsonRpcRequestIdSchema = z.union([z.string().max(2_048), z.number().finite()]);
24
- // Usage and cost evidence is the published contract's own shape, so the
25
- // persisted record validates against the generated schema rather than a local
26
- // copy that can drift from it.
27
- const TokenUsageSchema = WorkbenchExecutionTokenUsageSchema;
28
- const CostSchema = WorkbenchExecutionCostSchema;
29
- const ProtocolEventSchema = z.object({
30
- sequence: z.number().int().positive(),
31
- timestamp: IsoDateSchema,
32
- direction: z.enum(["inbound", "outbound"]),
33
- messageKind: z.enum(["request", "result", "error"]),
34
- jsonrpc: z.literal("2.0"),
35
- requestId: JsonRpcRequestIdSchema,
36
- method: z.literal("tools/call"),
37
- payload: z.unknown(),
38
- }).strict();
39
18
  const NativeExecutionRecordSchema = z.object({
19
+ // Generated by this server; never a client-provided JSON-RPC request id.
40
20
  id: IdentifierSchema,
41
- serverId: z.literal(NATIVE_SERVER_ID),
21
+ toolName: z.string().min(1).max(1_024),
42
22
  status: z.enum(["running", "succeeded", "failed"]),
43
23
  createdAt: IsoDateSchema,
44
24
  startedAt: IsoDateSchema,
45
25
  completedAt: IsoDateSchema.optional(),
46
26
  durationMs: z.number().finite().nonnegative().optional(),
47
- attemptCount: z.literal(1),
48
- request: z.object({
49
- requestId: JsonRpcRequestIdSchema,
50
- toolName: z.string().min(1).max(1_024),
51
- arguments: z.record(z.string(), z.unknown()),
52
- transport: z.enum([
53
- "stdio",
54
- "http",
55
- "streamable_http",
56
- "streamable-http",
57
- "sse",
58
- "inproc",
59
- "builtin",
60
- ]),
61
- meta: z.record(z.string(), z.unknown()).optional(),
62
- }).strict(),
63
- result: z.unknown().optional(),
64
- error: z.object({
65
- code: z.string().min(1).max(128),
66
- message: z.string().min(1).max(4_096),
67
- }).strict().optional(),
68
- tokenUsage: TokenUsageSchema.optional(),
69
- cost: CostSchema.optional(),
70
- protocolEvents: z.array(ProtocolEventSchema).min(1).max(2),
71
- telemetryCorrelation: z.object({
72
- executionId: IdentifierSchema,
73
- traceIds: z.array(z.string().regex(/^[0-9a-f]{32}$/u)).max(2),
74
- spanIds: z.array(z.string().regex(/^[0-9a-f]{16}$/u)).max(2),
75
- }).strict(),
27
+ errorType: z.string().min(1).max(128).optional(),
76
28
  }).strict();
77
29
  const NativeExecutionStateSchema = z.object({
78
30
  version: z.literal(NATIVE_STATE_VERSION),
79
31
  executions: z.array(NativeExecutionRecordSchema),
80
32
  }).strict();
81
- /** Durable, redacted native-server evidence kept separately from workbench state. */
33
+ // Strip unknown fields before migration: legacy request/result contents must
34
+ // never reach a new write, even when an old file contains unrecognized fields.
35
+ const LegacyNativeExecutionStateSchema = z.object({
36
+ version: z.union([z.literal(1), z.literal(2)]),
37
+ executions: z.array(NativeExecutionRecordSchema.omit({ toolName: true, errorType: true })
38
+ .extend({
39
+ request: z.object({ toolName: NativeExecutionRecordSchema.shape.toolName }),
40
+ error: z.object({ code: NativeExecutionRecordSchema.shape.errorType }).optional(),
41
+ }).strip()),
42
+ }).strict();
43
+ /** Bounded operation metadata kept separately from Workbench execution state. */
82
44
  export class FileNativeExecutionRepository {
83
45
  store;
84
46
  openStore;
@@ -86,18 +48,31 @@ export class FileNativeExecutionRepository {
86
48
  maxExecutions;
87
49
  now;
88
50
  initialization;
51
+ needsMigration = false;
89
52
  constructor(options = {}) {
90
53
  const environment = options.environment ?? process.env;
91
54
  const redactor = options.redactor ?? new SecretRedactor({
92
55
  environment,
93
- maxStringLength: MAX_PERSISTED_RESULT_CHARACTERS + 1,
94
56
  });
95
57
  this.maxExecutions = positiveInteger(options.maxExecutions ?? DEFAULT_MAX_EXECUTIONS, "maxExecutions");
96
58
  this.now = options.now ?? Date.now;
97
59
  this.filePath = options.filePath ?? nativeStatePath(environment);
98
60
  this.openStore = () => new AtomicJsonStore(this.filePath, {
99
61
  initial: () => ({ version: NATIVE_STATE_VERSION, executions: [] }),
100
- parse: (value) => NativeExecutionStateSchema.parse(value),
62
+ parse: (value) => {
63
+ const legacy = LegacyNativeExecutionStateSchema.safeParse(value);
64
+ if (!legacy.success)
65
+ return NativeExecutionStateSchema.parse(value);
66
+ this.needsMigration = true;
67
+ return NativeExecutionStateSchema.parse({
68
+ version: NATIVE_STATE_VERSION,
69
+ executions: legacy.data.executions.map(({ request, error, ...record }) => ({
70
+ ...record,
71
+ toolName: request.toolName,
72
+ ...(error?.code === undefined ? {} : { errorType: error.code }),
73
+ })),
74
+ });
75
+ },
101
76
  prepareForWrite: (value) => NativeExecutionStateSchema.parse(redactor.redact(value)),
102
77
  });
103
78
  this.store = this.openStore();
@@ -105,13 +80,13 @@ export class FileNativeExecutionRepository {
105
80
  /**
106
81
  * Move a state file this build cannot read out of the way, and say so.
107
82
  *
108
- * The schema deliberately refuses to half-parse an older layout, but refusing
83
+ * The schema deliberately refuses to guess an unknown layout, but refusing
109
84
  * forever is not the same as refusing to guess: a state file written before a
110
85
  * version bump would otherwise fail every single tool call for the life of the
111
86
  * installation, because the store caches its failed load and evidence is
112
87
  * written before the tool runs. Renaming preserves the old records for anyone
113
- * who wants them and lets this process start a fresh log. Nothing is deleted
114
- * and nothing is migrated.
88
+ * who wants them and lets this process start a fresh log. Known version-1/2
89
+ * files follow the payload-removing migration instead of this recovery path.
115
90
  */
116
91
  async archiveUnreadableState(reason) {
117
92
  const archived = `${this.filePath}.unreadable-${new Date(this.now()).toISOString().replaceAll(":", "-")}`;
@@ -155,6 +130,10 @@ export class FileNativeExecutionRepository {
155
130
  this.store = this.openStore();
156
131
  await this.store.initialize();
157
132
  }
133
+ if (this.needsMigration) {
134
+ await this.store.replace(await this.store.read());
135
+ this.needsMigration = false;
136
+ }
158
137
  const completedMs = this.now();
159
138
  const completedAt = timestamp(completedMs);
160
139
  const current = await this.store.read();
@@ -167,10 +146,7 @@ export class FileNativeExecutionRepository {
167
146
  record.status = "failed";
168
147
  record.completedAt = completedAt;
169
148
  record.durationMs = Math.max(0, completedMs - Date.parse(record.startedAt));
170
- record.error = {
171
- code: "process_interrupted",
172
- message: "The qyl.mcp process stopped before this native tool call completed.",
173
- };
149
+ record.errorType = "process_interrupted";
174
150
  }
175
151
  });
176
152
  }
@@ -187,7 +163,6 @@ export class NativeExecutionRuntime {
187
163
  this.telemetry = options.telemetry;
188
164
  this.redactor = options.redactor ?? new SecretRedactor({
189
165
  environment: process.env,
190
- maxStringLength: MAX_PERSISTED_RESULT_CHARACTERS + 1,
191
166
  });
192
167
  this.now = options.now ?? Date.now;
193
168
  this.id = options.id ?? randomUUID;
@@ -196,28 +171,14 @@ export class NativeExecutionRuntime {
196
171
  const startedMs = this.now();
197
172
  const executionId = this.id();
198
173
  const startedAt = timestamp(startedMs);
199
- const requestId = input.ctx.mcpReq.id;
200
- const durableRequestId = sanitizeRequestId(requestId, this.redactor);
201
174
  const toolName = input.request.params.name;
202
175
  const operation = this.startTelemetry(input, executionId, startedMs);
203
176
  const running = NativeExecutionRecordSchema.parse({
204
177
  id: executionId,
205
- serverId: NATIVE_SERVER_ID,
178
+ toolName: this.redactor.redactText(toolName).slice(0, 1_024),
206
179
  status: "running",
207
180
  createdAt: startedAt,
208
181
  startedAt,
209
- attemptCount: 1,
210
- request: {
211
- requestId: durableRequestId,
212
- toolName: this.redactor.redactText(toolName).slice(0, 1_024),
213
- arguments: sanitizeArguments(input.request.params.arguments, this.redactor),
214
- transport: input.transport,
215
- ...(input.request.params._meta === undefined
216
- ? {}
217
- : { meta: sanitizeRecord(input.request.params._meta, this.redactor) }),
218
- },
219
- protocolEvents: [requestEvent(input, durableRequestId, startedAt, this.redactor)],
220
- telemetryCorrelation: correlation(executionId, operation?.correlation),
221
182
  });
222
183
  try {
223
184
  await this.repository.save(running);
@@ -225,7 +186,6 @@ export class NativeExecutionRuntime {
225
186
  catch (error) {
226
187
  operation?.end({
227
188
  endTimeMs: this.now(),
228
- jsonRpcRequestId: requestId,
229
189
  errorType: "evidence_persistence_failed",
230
190
  });
231
191
  throw new EvidenceRecordingError(error);
@@ -243,12 +203,7 @@ export class NativeExecutionRuntime {
243
203
  status: "failed",
244
204
  completedAt,
245
205
  durationMs: duration(startedMs, completedMs),
246
- error: errorEvidence(error, this.redactor),
247
- protocolEvents: [
248
- ...running.protocolEvents,
249
- errorEvent(durableRequestId, toolName, completedAt, error, this.redactor),
250
- ],
251
- telemetryCorrelation: correlation(executionId, operation?.correlation),
206
+ errorType: errorType(error),
252
207
  });
253
208
  try {
254
209
  await this.repository.save(failedRecord);
@@ -256,14 +211,12 @@ export class NativeExecutionRuntime {
256
211
  catch (persistenceError) {
257
212
  operation?.end({
258
213
  endTimeMs: this.now(),
259
- jsonRpcRequestId: requestId,
260
214
  errorType: "evidence_persistence_failed",
261
215
  });
262
216
  throw new EvidenceRecordingError(persistenceError);
263
217
  }
264
218
  operation?.end({
265
219
  endTimeMs: completedMs,
266
- jsonRpcRequestId: requestId,
267
220
  errorType: errorType(error),
268
221
  ...(error instanceof ProtocolError
269
222
  ? { rpcResponseStatusCode: String(error.code) }
@@ -273,29 +226,13 @@ export class NativeExecutionRuntime {
273
226
  }
274
227
  const completedMs = this.now();
275
228
  const completedAt = timestamp(completedMs);
276
- const durableResult = sanitizePersistedToolResult(result, this.redactor);
277
- const evidence = extractExecutionEvidence(result);
278
229
  const toolFailed = result.isError === true;
279
230
  const completedRecord = NativeExecutionRecordSchema.parse({
280
231
  ...running,
281
232
  status: toolFailed ? "failed" : "succeeded",
282
233
  completedAt,
283
234
  durationMs: duration(startedMs, completedMs),
284
- result: durableResult,
285
- ...(toolFailed
286
- ? {
287
- error: {
288
- code: "tool_result_error",
289
- message: "The MCP tool returned an error result.",
290
- },
291
- }
292
- : {}),
293
- ...evidenceFields(evidence, this.redactor),
294
- protocolEvents: [
295
- ...running.protocolEvents,
296
- resultEvent(durableRequestId, completedAt, durableResult),
297
- ],
298
- telemetryCorrelation: correlation(executionId, operation?.correlation),
235
+ ...(toolFailed ? { errorType: "tool_result_error" } : {}),
299
236
  });
300
237
  try {
301
238
  await this.repository.save(completedRecord);
@@ -303,16 +240,13 @@ export class NativeExecutionRuntime {
303
240
  catch (error) {
304
241
  operation?.end({
305
242
  endTimeMs: this.now(),
306
- jsonRpcRequestId: requestId,
307
243
  errorType: "evidence_persistence_failed",
308
244
  });
309
245
  throw new EvidenceRecordingError(error);
310
246
  }
311
247
  operation?.end({
312
248
  endTimeMs: completedMs,
313
- jsonRpcRequestId: requestId,
314
249
  ...(toolFailed ? { errorType: "tool_error" } : {}),
315
- responseBody: this.redactor.redact(result),
316
250
  });
317
251
  return result;
318
252
  }
@@ -332,7 +266,6 @@ export class NativeExecutionRuntime {
332
266
  transport: input.transport,
333
267
  jsonRpcProtocolVersion: "2.0",
334
268
  executionId,
335
- requestBody: this.redactor.redact(input.request),
336
269
  remotePropagation: propagationCarrier(input.request.params._meta),
337
270
  startTimeMs: startedMs,
338
271
  });
@@ -444,7 +377,6 @@ export async function closeDefaultNativeExecutionRuntime() {
444
377
  function createDefaultRuntime(environment) {
445
378
  const redactor = new SecretRedactor({
446
379
  environment,
447
- maxStringLength: MAX_PERSISTED_RESULT_CHARACTERS + 1,
448
380
  });
449
381
  const repository = new FileNativeExecutionRepository({ environment, redactor });
450
382
  let telemetry;
@@ -460,63 +392,6 @@ function nativeStatePath(environment) {
460
392
  return environment.QYL_MCP_NATIVE_STATE_PATH
461
393
  ?? join(homedir(), ".qyl", "mcp-native-executions.json");
462
394
  }
463
- function requestEvent(input, requestId, at, redactor) {
464
- return {
465
- sequence: 1,
466
- timestamp: at,
467
- direction: "inbound",
468
- messageKind: "request",
469
- jsonrpc: "2.0",
470
- requestId,
471
- method: "tools/call",
472
- payload: boundPayload(redactor.redact({
473
- jsonrpc: "2.0",
474
- id: requestId,
475
- method: "tools/call",
476
- params: input.request.params,
477
- })),
478
- };
479
- }
480
- function resultEvent(requestId, at, result) {
481
- return {
482
- sequence: 2,
483
- timestamp: at,
484
- direction: "outbound",
485
- messageKind: "result",
486
- jsonrpc: "2.0",
487
- requestId,
488
- method: "tools/call",
489
- payload: boundPayload({ jsonrpc: "2.0", id: requestId, result }),
490
- };
491
- }
492
- function errorEvent(requestId, toolName, at, error, redactor) {
493
- const evidence = errorEvidence(error, redactor);
494
- return {
495
- sequence: 2,
496
- timestamp: at,
497
- direction: "outbound",
498
- messageKind: "error",
499
- jsonrpc: "2.0",
500
- requestId,
501
- method: "tools/call",
502
- payload: boundPayload({
503
- jsonrpc: "2.0",
504
- id: requestId,
505
- error: {
506
- code: error instanceof ProtocolError ? error.code : ProtocolErrorCode.InternalError,
507
- message: evidence.message,
508
- data: { toolName: redactor.redactText(toolName).slice(0, 1_024) },
509
- },
510
- }),
511
- };
512
- }
513
- function errorEvidence(error, redactor) {
514
- const message = redactor.redactText(error instanceof Error ? error.message : String(error));
515
- return {
516
- code: errorType(error),
517
- message: message.trim().length === 0 ? "Native MCP tool execution failed." : message.slice(0, 4_096),
518
- };
519
- }
520
395
  function errorType(error) {
521
396
  if (error instanceof ProtocolError)
522
397
  return `mcp_${error.code}`;
@@ -525,61 +400,15 @@ function errorType(error) {
525
400
  }
526
401
  return "native_tool_failure";
527
402
  }
528
- function correlation(executionId, span) {
529
- return {
530
- executionId,
531
- traceIds: span === undefined ? [] : [span.traceId],
532
- spanIds: span === undefined ? [] : [span.spanId],
533
- };
534
- }
535
403
  function propagationCarrier(value) {
536
404
  if (!isRecord(value))
537
405
  return undefined;
538
- const entries = Object.entries(value)
539
- .filter((entry) => typeof entry[1] === "string");
540
- return entries.length === 0 ? undefined : Object.fromEntries(entries);
541
- }
542
- function sanitizeArguments(value, redactor) {
543
- return sanitizeRecord(value ?? {}, redactor);
544
- }
545
- function sanitizeRecord(value, redactor) {
546
- const sanitized = redactor.redact(value);
547
- if (!isRecord(sanitized))
548
- return {};
549
- const bounded = boundPayload(sanitized);
550
- return isRecord(bounded) ? bounded : {};
551
- }
552
- function boundPayload(value) {
553
- const serialized = JSON.stringify(value);
554
- if (serialized === undefined || serialized.length <= MAX_PROTOCOL_PAYLOAD_CHARACTERS) {
555
- return value;
556
- }
557
- return {
558
- truncated: true,
559
- originalCharacters: serialized.length,
560
- preview: `${serialized.slice(0, MAX_PROTOCOL_PAYLOAD_CHARACTERS - 1)}…`,
561
- };
562
- }
563
- function evidenceFields(evidence, redactor) {
564
- const source = evidence.cost?.source === undefined
565
- ? undefined
566
- : redactor.redactText(evidence.cost.source).trim().slice(0, 256);
567
- const cost = evidence.cost === undefined
568
- ? undefined
569
- : {
570
- amount_usd: evidence.cost.amount_usd,
571
- estimated: evidence.cost.estimated,
572
- ...(source === undefined || source.length === 0 ? {} : { source }),
573
- };
574
- return {
575
- ...(evidence.tokenUsage === undefined ? {} : { tokenUsage: evidence.tokenUsage }),
576
- ...(cost === undefined ? {} : { cost }),
577
- };
578
- }
579
- function sanitizeRequestId(value, redactor) {
580
- return typeof value === "string"
581
- ? redactor.redactText(value).slice(0, 2_048)
582
- : value;
406
+ // Preserve trace parenting without passing arbitrary metadata or baggage to
407
+ // logging/exporters. OpenTelemetry validates the trace/span IDs on extraction.
408
+ const traceparent = value.traceparent;
409
+ return typeof traceparent === "string"
410
+ ? { traceparent }
411
+ : undefined;
583
412
  }
584
413
  function duration(startedMs, completedMs) {
585
414
  return Math.max(0, completedMs - startedMs);
@@ -1 +1 @@
1
- {"version":3,"file":"native-execution.js","sourceRoot":"","sources":["../src/native-execution.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"native-execution.js","sourceRoot":"","sources":["../src/native-execution.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ import type { OAuthMetadata } from "@modelcontextprotocol/server";
2
+ export declare function secureMetadataUrl(value: unknown, field: string): URL;
3
+ /** The hosted Auth0 profile supports both CIMD client types and DCR.
4
+ * This checks discovery capabilities, not whether Auth0 has enabled DCR or
5
+ * provisioned any particular client and API grant.
6
+ */
7
+ export declare function validateAuthorizationServerCapabilities(metadata: OAuthMetadata): void;
8
+ export declare function fetchAuthorizationServerMetadata(issuer: URL): Promise<OAuthMetadata>;
@@ -0,0 +1,89 @@
1
+ import { OAuthMetadataSchema } from "@modelcontextprotocol/core";
2
+ const DISCOVERY_TIMEOUT_MS = 10_000;
3
+ const ASYMMETRIC_ALGORITHMS = new Set([
4
+ "RS256", "RS384", "RS512", "PS256", "PS384", "PS512", "ES256", "ES384", "ES512", "EdDSA",
5
+ ]);
6
+ export function secureMetadataUrl(value, field) {
7
+ let url;
8
+ try {
9
+ if (typeof value !== "string")
10
+ throw new Error();
11
+ url = new URL(value);
12
+ }
13
+ catch {
14
+ throw new Error(`Authorization Server must advertise a valid ${field}`);
15
+ }
16
+ if (url.protocol !== "https:" || url.username || url.password || url.hash) {
17
+ throw new Error(`Authorization Server must advertise an HTTPS ${field} without credentials or fragments`);
18
+ }
19
+ return url;
20
+ }
21
+ /** The hosted Auth0 profile supports both CIMD client types and DCR.
22
+ * This checks discovery capabilities, not whether Auth0 has enabled DCR or
23
+ * provisioned any particular client and API grant.
24
+ */
25
+ export function validateAuthorizationServerCapabilities(metadata) {
26
+ for (const field of ["authorization_endpoint", "token_endpoint", "registration_endpoint", "jwks_uri"]) {
27
+ secureMetadataUrl(metadata[field], field);
28
+ }
29
+ if (metadata.client_id_metadata_document_supported !== true) {
30
+ throw new Error("Authorization Server must enable Client ID Metadata Document Registration (CIMD)");
31
+ }
32
+ if (!metadata.code_challenge_methods_supported?.includes("S256")) {
33
+ throw new Error("Authorization Server must advertise PKCE S256");
34
+ }
35
+ if (!metadata.response_types_supported.includes("code")
36
+ || (metadata.grant_types_supported !== undefined
37
+ && !metadata.grant_types_supported.includes("authorization_code"))) {
38
+ throw new Error("Authorization Server must support the authorization_code flow");
39
+ }
40
+ if (metadata.authorization_response_iss_parameter_supported !== true) {
41
+ throw new Error("Authorization Server must advertise authorization response issuer identification");
42
+ }
43
+ if (!metadata.token_endpoint_auth_methods_supported?.includes("private_key_jwt")
44
+ || !metadata.token_endpoint_auth_signing_alg_values_supported?.some((alg) => ASYMMETRIC_ALGORITHMS.has(alg))) {
45
+ throw new Error("Authorization Server must support ChatGPT CIMD private_key_jwt with an asymmetric signing algorithm");
46
+ }
47
+ if (!metadata.token_endpoint_auth_methods_supported.includes("none")) {
48
+ throw new Error("Authorization Server must support Claude CIMD public-client token exchange (none)");
49
+ }
50
+ }
51
+ export async function fetchAuthorizationServerMetadata(issuer) {
52
+ secureMetadataUrl(issuer.href, "issuer");
53
+ if (issuer.search)
54
+ throw new Error("Authorization Server issuer must not contain a query");
55
+ // RFC 8414 inserts the well-known component before an issuer path; OIDC
56
+ // also defines the path-appended location. No redirects change the trust anchor.
57
+ const issuerPath = issuer.pathname.replace(/\/$/u, "");
58
+ const candidates = [...new Set([
59
+ `${issuer.origin}/.well-known/oauth-authorization-server${issuerPath}`,
60
+ `${issuer.origin}/.well-known/openid-configuration${issuerPath}`,
61
+ `${issuer.origin}${issuerPath}/.well-known/openid-configuration`,
62
+ ])];
63
+ const failures = [];
64
+ for (const candidate of candidates) {
65
+ try {
66
+ const response = await fetch(candidate, {
67
+ headers: { accept: "application/json" },
68
+ redirect: "error",
69
+ signal: AbortSignal.timeout(DISCOVERY_TIMEOUT_MS),
70
+ });
71
+ if (!response.ok) {
72
+ failures.push(`HTTP ${response.status}`);
73
+ continue;
74
+ }
75
+ const parsed = OAuthMetadataSchema.safeParse(await response.json());
76
+ if (!parsed.success || parsed.data.issuer !== issuer.href) {
77
+ failures.push(parsed.success ? "issuer mismatch" : "invalid metadata");
78
+ continue;
79
+ }
80
+ // looseObject preserves provider extension fields without fabricating them.
81
+ return parsed.data;
82
+ }
83
+ catch {
84
+ failures.push("discovery request failed");
85
+ }
86
+ }
87
+ throw new Error(`Unable to load Authorization Server metadata from ${issuer.href} (${failures.join("; ")})`);
88
+ }
89
+ //# sourceMappingURL=oauth-metadata.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"oauth-metadata.js","sourceRoot":"","sources":["../src/oauth-metadata.ts"],"names":[],"mappings":"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"}