@cyanheads/mcp-ts-core 0.6.17 → 0.7.1

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 (54) hide show
  1. package/CLAUDE.md +1 -1
  2. package/README.md +1 -1
  3. package/changelog/0.7.x/0.7.0.md +30 -0
  4. package/changelog/0.7.x/0.7.1.md +22 -0
  5. package/dist/config/index.d.ts +3 -0
  6. package/dist/config/index.d.ts.map +1 -1
  7. package/dist/config/index.js +10 -0
  8. package/dist/config/index.js.map +1 -1
  9. package/dist/linter/rules/format-parity-rules.d.ts.map +1 -1
  10. package/dist/linter/rules/format-parity-rules.js +24 -1
  11. package/dist/linter/rules/format-parity-rules.js.map +1 -1
  12. package/dist/logs/combined.log +4 -4
  13. package/dist/logs/error.log +4 -4
  14. package/dist/mcp-server/resources/utils/resourceHandlerFactory.d.ts.map +1 -1
  15. package/dist/mcp-server/resources/utils/resourceHandlerFactory.js +6 -3
  16. package/dist/mcp-server/resources/utils/resourceHandlerFactory.js.map +1 -1
  17. package/dist/mcp-server/tools/tool-registration.d.ts.map +1 -1
  18. package/dist/mcp-server/tools/tool-registration.js +2 -5
  19. package/dist/mcp-server/tools/tool-registration.js.map +1 -1
  20. package/dist/mcp-server/tools/utils/toolHandlerFactory.d.ts.map +1 -1
  21. package/dist/mcp-server/tools/utils/toolHandlerFactory.js +12 -5
  22. package/dist/mcp-server/tools/utils/toolHandlerFactory.js.map +1 -1
  23. package/dist/mcp-server/transports/http/httpTransport.d.ts.map +1 -1
  24. package/dist/mcp-server/transports/http/httpTransport.js +50 -15
  25. package/dist/mcp-server/transports/http/httpTransport.js.map +1 -1
  26. package/dist/mcp-server/transports/http/landing-page/handler.d.ts +12 -7
  27. package/dist/mcp-server/transports/http/landing-page/handler.d.ts.map +1 -1
  28. package/dist/mcp-server/transports/http/landing-page/handler.js +37 -11
  29. package/dist/mcp-server/transports/http/landing-page/handler.js.map +1 -1
  30. package/dist/services/llm/providers/openrouter.provider.d.ts +12 -4
  31. package/dist/services/llm/providers/openrouter.provider.d.ts.map +1 -1
  32. package/dist/services/llm/providers/openrouter.provider.js +37 -7
  33. package/dist/services/llm/providers/openrouter.provider.js.map +1 -1
  34. package/dist/utils/internal/error-handler/errorHandler.d.ts +4 -1
  35. package/dist/utils/internal/error-handler/errorHandler.d.ts.map +1 -1
  36. package/dist/utils/internal/error-handler/errorHandler.js +15 -2
  37. package/dist/utils/internal/error-handler/errorHandler.js.map +1 -1
  38. package/dist/utils/internal/error-handler/helpers.d.ts +17 -0
  39. package/dist/utils/internal/error-handler/helpers.d.ts.map +1 -1
  40. package/dist/utils/internal/error-handler/helpers.js +29 -0
  41. package/dist/utils/internal/error-handler/helpers.js.map +1 -1
  42. package/dist/utils/internal/error-handler/mappings.d.ts.map +1 -1
  43. package/dist/utils/internal/error-handler/mappings.js +1 -0
  44. package/dist/utils/internal/error-handler/mappings.js.map +1 -1
  45. package/package.json +1 -1
  46. package/scripts/build-changelog.ts +7 -1
  47. package/scripts/devcheck.ts +3 -4
  48. package/skills/api-linter/SKILL.md +13 -2
  49. package/skills/maintenance/SKILL.md +20 -9
  50. package/skills/release-and-publish/SKILL.md +29 -5
  51. package/skills/report-issue-framework/SKILL.md +20 -6
  52. package/skills/report-issue-local/SKILL.md +26 -3
  53. package/templates/.github/ISSUE_TEMPLATE/bug_report.yml +9 -0
  54. package/templates/.github/ISSUE_TEMPLATE/feature_request.yml +11 -0
@@ -1 +1 @@
1
- {"version":3,"file":"toolHandlerFactory.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/utils/toolHandlerFactory.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,KAAK,EACV,cAAc,EAEd,kBAAkB,EAClB,aAAa,EACd,MAAM,oCAAoC,CAAC;AAO5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAGvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAGzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAM7D,KAAK,QAAQ,GAAG,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;AAOvE,qEAAqE;AACrE,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,cAAc,CAAC;CACzB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,yBAAyB,CAAC,EAAE,MAAM,IAAI,CAAC;IACvC,qBAAqB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C;AAgCD;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,iBAAiB,EACtB,QAAQ,EAAE,sBAAsB,EAChC,SAAS,EAAE,gBAAgB,GAC1B,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC,cAAc,CAAC,CA4F9E"}
1
+ {"version":3,"file":"toolHandlerFactory.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/utils/toolHandlerFactory.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,8CAA8C,CAAC;AACxF,OAAO,KAAK,EACV,cAAc,EAEd,kBAAkB,EAClB,aAAa,EACd,MAAM,oCAAoC,CAAC;AAO5C,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAGvE,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAGzD,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAM7D,KAAK,QAAQ,GAAG,mBAAmB,CAAC,aAAa,EAAE,kBAAkB,CAAC,CAAC;AAOvE,qEAAqE;AACrE,MAAM,WAAW,sBAAsB;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,cAAc,CAAC;CACzB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,gBAAgB;IAC/B,yBAAyB,CAAC,EAAE,MAAM,IAAI,CAAC;IACvC,qBAAqB,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,CAAC;CAC/C;AAgCD;;;;;;;;;;;;GAYG;AACH,wBAAgB,iBAAiB,CAC/B,GAAG,EAAE,iBAAiB,EACtB,QAAQ,EAAE,sBAAsB,EAChC,SAAS,EAAE,gBAAgB,GAC1B,CAAC,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,KAAK,EAAE,QAAQ,KAAK,OAAO,CAAC,cAAc,CAAC,CAmG9E"}
@@ -3,6 +3,7 @@
3
3
  * Constructs Context, checks inline auth, measures execution, formats response.
4
4
  * @module src/mcp-server/tools/utils/toolHandlerFactory
5
5
  */
6
+ import { ZodError } from 'zod';
6
7
  import { createContext } from '../../../core/context.js';
7
8
  import { withRequiredScopes } from '../../../mcp-server/transports/auth/lib/authUtils.js';
8
9
  import { JsonRpcErrorCode, McpError } from '../../../types-global/errors.js';
@@ -53,14 +54,17 @@ export function createToolHandler(def, services, notifiers) {
53
54
  const sdkContext = callContext;
54
55
  const sdkCaps = callContext;
55
56
  const sessionId = typeof sdkContext?.sessionId === 'string' ? sdkContext.sessionId : undefined;
56
- // Create internal RequestContext for tracing
57
+ // Create internal RequestContext for tracing. Raw `input` is intentionally
58
+ // excluded — it flows into the completion log via context spread and can
59
+ // contain caller PII or secrets. Input size and top-level parameter names
60
+ // are captured as OTel metric attributes in measureToolExecution instead.
57
61
  const appContext = requestContextService.createRequestContext({
58
62
  parentContext: {
59
63
  ...(typeof sdkContext?.requestId === 'string' ? { requestId: sdkContext.requestId } : {}),
60
64
  ...(sessionId ? { sessionId } : {}),
61
65
  },
62
66
  operation: 'HandleToolRequest',
63
- additionalContext: { toolName: def.name, sessionId, input },
67
+ additionalContext: { toolName: def.name, sessionId },
64
68
  });
65
69
  try {
66
70
  // Check inline auth scopes
@@ -101,15 +105,18 @@ export function createToolHandler(def, services, notifiers) {
101
105
  const handled = ErrorHandler.handleError(error, {
102
106
  operation: `tool:${def.name}`,
103
107
  context: appContext,
104
- input,
105
108
  });
106
109
  const mcpError = handled instanceof McpError
107
110
  ? handled
108
111
  : new McpError(JsonRpcErrorCode.InternalError, handled.message, {
109
112
  originalError: handled.name,
110
113
  });
111
- // Surface error classification via _meta so programmatic clients can distinguish error types (auth, validation, not-found, etc.) without parsing the text message. Only propagate data from explicitly thrown McpError instances — ErrorHandler enrichment contains internal context (stack traces, operation details) that shouldn't be client-visible.
112
- const originalData = error instanceof McpError ? error.data : undefined;
114
+ // Surface error classification via _meta so programmatic clients can distinguish error types (auth, validation, not-found, etc.) without parsing the text message. Only propagate data from explicitly thrown McpError instances and ZodError (structured validation issues) — ErrorHandler enrichment contains internal context (stack traces, operation details) that shouldn't be client-visible.
115
+ const originalData = error instanceof McpError
116
+ ? error.data
117
+ : error instanceof ZodError
118
+ ? { issues: error.issues }
119
+ : undefined;
113
120
  return {
114
121
  isError: true,
115
122
  content: [{ type: 'text', text: `Error: ${mcpError.message}` }],
@@ -1 +1 @@
1
- {"version":3,"file":"toolHandlerFactory.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/utils/toolHandlerFactory.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"toolHandlerFactory.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/utils/toolHandlerFactory.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"httpTransport.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/transports/http/httpTransport.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,KAAK,UAAU,EAAS,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAK/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAKlF,OAAO,EAAwB,YAAY,EAAE,MAAM,8CAA8C,CAAC;AAElG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAkIzE;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,aAAa,CAAC,SAAS,SAAS,MAAM,GAAG,gBAAgB,EAC7E,aAAa,EAAE,MAAM,OAAO,CAAC,SAAS,CAAC,EACvC,aAAa,EAAE,cAAc,EAC7B,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC;IAAE,GAAG,EAAE,IAAI,CAAC;QAAE,QAAQ,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;IAAC,YAAY,EAAE,YAAY,GAAG,IAAI,CAAA;CAAE,CAAC,CAgYpF;AA+ED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,CAAC,aAAa,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,MAAM,OAAO,CAAC,SAAS,CAAC,EACvC,aAAa,EAAE,cAAc,EAC7B,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,mBAAmB,CAAC,CAuB9B"}
1
+ {"version":3,"file":"httpTransport.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/transports/http/httpTransport.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAIH,OAAO,EAAE,KAAK,UAAU,EAAS,MAAM,mBAAmB,CAAC;AAC3D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACzE,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAG5B,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAK/D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,2CAA2C,CAAC;AAKlF,OAAO,EAAwB,YAAY,EAAE,MAAM,8CAA8C,CAAC;AAElG,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,oCAAoC,CAAC;AAyIzE;;;;;;;;;;;;;;GAcG;AACH,wBAAsB,aAAa,CAAC,SAAS,SAAS,MAAM,GAAG,gBAAgB,EAC7E,aAAa,EAAE,MAAM,OAAO,CAAC,SAAS,CAAC,EACvC,aAAa,EAAE,cAAc,EAC7B,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC;IAAE,GAAG,EAAE,IAAI,CAAC;QAAE,QAAQ,EAAE,SAAS,CAAA;KAAE,CAAC,CAAC;IAAC,YAAY,EAAE,YAAY,GAAG,IAAI,CAAA;CAAE,CAAC,CAoapF;AA+ED;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,UAAU,CAAC;IACnB,IAAI,EAAE,CAAC,aAAa,EAAE,cAAc,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACxD;AAED,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,MAAM,OAAO,CAAC,SAAS,CAAC,EACvC,aAAa,EAAE,cAAc,EAC7B,QAAQ,EAAE,cAAc,GACvB,OAAO,CAAC,mBAAmB,CAAC,CAuB9B"}
@@ -39,6 +39,12 @@ class McpSessionTransport extends StreamableHTTPTransport {
39
39
  * before giving up and logging a failure. Silent hangs here accumulate
40
40
  * retained closures — bounded wait surfaces the issue as a metric. */
41
41
  const PER_REQUEST_CLOSE_TIMEOUT_MS = 5_000;
42
+ /** Matches loopback origins (http(s)://localhost|127.0.0.1|[::1] with optional port).
43
+ * Used as the fail-closed default for the Origin guard when no explicit
44
+ * MCP_ALLOWED_ORIGINS is configured — an unauthenticated MCP server must not
45
+ * accept browser Origin headers from arbitrary hosts (MCP Spec 2025-06-18 DNS
46
+ * rebinding protection). */
47
+ const LOOPBACK_ORIGIN_RE = /^https?:\/\/(?:localhost|127\.0\.0\.1|\[::1\])(?::\d+)?$/i;
42
48
  let closeFailureCounter;
43
49
  function getCloseFailureCounter() {
44
50
  closeFailureCounter ??= createCounter('mcp.http.close_failures', 'Per-request HTTP close failures (transport or server close threw or timed out)', '{failures}');
@@ -165,36 +171,59 @@ export async function createHttpApp(serverFactory, parentContext, manifest) {
165
171
  logger.warning('@hono/otel not installed — HTTP instrumentation disabled. Install with: bun add @hono/otel', transportContext);
166
172
  }
167
173
  }
168
- // CORS (with permissive fallback)
169
- const allowedOrigin = Array.isArray(config.mcpAllowedOrigins) && config.mcpAllowedOrigins.length > 0
174
+ // CORS + Origin guard. These are two independent concerns:
175
+ //
176
+ // - CORS controls which browsers can read responses cross-origin.
177
+ // - The Origin guard (DNS-rebinding protection, MCP Spec 2025-06-18) rejects
178
+ // MCP endpoint requests whose Origin header doesn't match the allowlist.
179
+ //
180
+ // When MCP_ALLOWED_ORIGINS is unset, CORS falls back to wildcard (so non-browser
181
+ // CLI clients still work — they send no Origin header, so wildcard CORS is a
182
+ // no-op for them) while the Origin guard falls back to loopback-only. This
183
+ // fails closed for browser-CSRF attacks against unauthenticated dev servers.
184
+ //
185
+ // Set MCP_ALLOWED_ORIGINS='*' to explicitly disable Origin validation (public
186
+ // API on an authenticated transport). That is an opt-in, not a default.
187
+ const explicitOrigins = Array.isArray(config.mcpAllowedOrigins) && config.mcpAllowedOrigins.length > 0
170
188
  ? config.mcpAllowedOrigins
171
- : '*';
172
- if (allowedOrigin === '*') {
173
- logger.warning('CORS origin set to wildcard (*). Set MCP_ALLOWED_ORIGINS for production deployments.', transportContext);
189
+ : undefined;
190
+ const wildcardExplicitlyAllowed = explicitOrigins?.includes('*') ?? false;
191
+ const corsOrigin = !explicitOrigins || wildcardExplicitlyAllowed ? '*' : explicitOrigins;
192
+ if (!explicitOrigins) {
193
+ logger.warning('MCP_ALLOWED_ORIGINS is not set — CORS is wildcard for CLI clients; browser Origin headers are restricted to loopback. Set MCP_ALLOWED_ORIGINS for production deployments accepting remote browser origins.', transportContext);
194
+ }
195
+ else if (wildcardExplicitlyAllowed) {
196
+ logger.warning("MCP_ALLOWED_ORIGINS contains '*' — DNS-rebinding protection is disabled. Rely on MCP_AUTH_MODE for access control.", transportContext);
174
197
  }
175
198
  // Per Fetch spec, Access-Control-Allow-Origin: * with
176
199
  // Access-Control-Allow-Credentials: true is invalid — browsers reject the
177
200
  // preflight. Only enable credentials when origin is explicitly configured.
178
201
  app.use('*', cors({
179
- origin: allowedOrigin,
202
+ origin: corsOrigin,
180
203
  allowMethods: ['GET', 'POST', 'DELETE', 'OPTIONS'],
181
204
  allowHeaders: ['Content-Type', 'Authorization', 'Mcp-Session-Id', 'MCP-Protocol-Version'],
182
205
  exposeHeaders: ['Mcp-Session-Id'],
183
- ...(allowedOrigin !== '*' && { credentials: true }),
206
+ ...(corsOrigin !== '*' && { credentials: true }),
184
207
  }));
185
208
  // Centralized error handling
186
209
  app.onError(httpErrorHandler);
187
- // MCP Spec 2025-06-18: Origin header validation for DNS rebinding protection
210
+ // MCP Spec 2025-06-18: Origin header validation for DNS rebinding protection.
188
211
  // https://modelcontextprotocol.io/specification/2025-06-18/basic/transports#security-warning
212
+ //
213
+ // Requests without an Origin header (CLI clients) pass through. Requests with
214
+ // an Origin are checked against: the explicit allowlist when set; loopback-only
215
+ // when unset; or unconditionally accepted when MCP_ALLOWED_ORIGINS='*' is
216
+ // explicitly configured.
189
217
  app.use(config.mcpHttpEndpointPath, async (c, next) => {
190
218
  const origin = c.req.header('origin');
191
219
  if (origin) {
192
- const isAllowed = allowedOrigin === '*' || (Array.isArray(allowedOrigin) && allowedOrigin.includes(origin));
220
+ const isAllowed = wildcardExplicitlyAllowed ||
221
+ (explicitOrigins ? explicitOrigins.includes(origin) : LOOPBACK_ORIGIN_RE.test(origin));
193
222
  if (!isAllowed) {
194
223
  logger.warning('Rejected request with invalid Origin header', {
195
224
  ...transportContext,
196
225
  origin,
197
- allowedOrigins: allowedOrigin,
226
+ allowedOrigins: explicitOrigins ?? 'loopback-only',
198
227
  });
199
228
  return c.json({ error: 'Invalid origin. DNS rebinding protection.' }, 403);
200
229
  }
@@ -218,12 +247,19 @@ export async function createHttpApp(serverFactory, parentContext, manifest) {
218
247
  else {
219
248
  logger.warning(`MCP endpoint is configured at ${serverCardPath}; Server Card not mounted (would collide).`, transportContext);
220
249
  }
250
+ // Create the auth strategy once — used by the MCP endpoint's auth middleware
251
+ // AND by the landing page when `landing.requireAuth=true`, so both surfaces
252
+ // apply the same token validation (JWT/OAuth) the operator configured.
253
+ const authStrategy = createAuthStrategy();
221
254
  // HTML landing page at `/` — unauthenticated by default (`landing.requireAuth`
222
255
  // is honored inside the handler when enabled). Skipped when landing.enabled=false
223
256
  // or when the MCP endpoint is (unusually) configured at `/`.
224
257
  const landingPath = '/';
225
258
  if (manifest.landing.enabled && config.mcpHttpEndpointPath !== landingPath) {
226
- app.get(landingPath, createLandingPageHandler(manifest));
259
+ if (manifest.landing.requireAuth && !authStrategy) {
260
+ logger.warning('landing.requireAuth=true but MCP_AUTH_MODE=none — the landing page inventory will be hidden for all callers. Configure an auth mode (jwt/oauth) or set landing.requireAuth=false.', transportContext);
261
+ }
262
+ app.get(landingPath, createLandingPageHandler(manifest, authStrategy));
227
263
  logger.debug(`Landing page mounted at ${landingPath}.`, transportContext);
228
264
  }
229
265
  else if (!manifest.landing.enabled) {
@@ -275,10 +311,9 @@ export async function createHttpApp(serverFactory, parentContext, manifest) {
275
311
  },
276
312
  });
277
313
  });
278
- // Create auth strategy and middleware if auth is enabled
279
- // IMPORTANT: Auth middleware must be registered BEFORE route handlers
280
- // so Hono applies it to all subsequent routes on this path.
281
- const authStrategy = createAuthStrategy();
314
+ // Auth middleware is registered BEFORE the MCP endpoint route handlers below
315
+ // so Hono applies it to all subsequent routes on this path. The strategy
316
+ // itself was created above so the landing page can share it.
282
317
  if (authStrategy) {
283
318
  const authMiddleware = createAuthMiddleware(authStrategy);
284
319
  app.use(config.mcpHttpEndpointPath, authMiddleware);
@@ -1 +1 @@
1
- {"version":3,"file":"httpTransport.js","sourceRoot":"","sources":["../../../../src/mcp-server/transports/http/httpTransport.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"httpTransport.js","sourceRoot":"","sources":["../../../../src/mcp-server/transports/http/httpTransport.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,uBAAuB,EAAE,MAAM,WAAW,CAAC;AACpD,OAAO,EAAmB,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAE3D,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAC5B,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,MAAM,EAAE,MAAM,mBAAmB,CAAC;AAE3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,6CAA6C,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,gDAAgD,CAAC;AACtF,OAAO,EAAE,WAAW,EAAE,MAAM,iDAAiD,CAAC;AAC9E,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAC;AAEpF,OAAO,EAAE,wBAAwB,EAAE,MAAM,oDAAoD,CAAC;AAC9F,OAAO,EAAE,gCAAgC,EAAE,MAAM,2DAA2D,CAAC;AAC7G,OAAO,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AACrF,OAAO,EAAE,uBAAuB,EAAE,MAAM,gDAAgD,CAAC;AACzF,OAAO,EAAwB,YAAY,EAAE,MAAM,8CAA8C,CAAC;AAClG,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AAEpD,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,aAAa,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AAEpF;;GAEG;AACH,MAAM,mBAAoB,SAAQ,uBAAuB;IAChD,SAAS,CAAS;IAEzB,YAAY,SAAiB;QAC3B,KAAK,EAAE,CAAC;QACR,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CACF;AAED;;sEAEsE;AACtE,MAAM,4BAA4B,GAAG,KAAK,CAAC;AAE3C;;;;4BAI4B;AAC5B,MAAM,kBAAkB,GAAG,2DAA2D,CAAC;AAEvF,IAAI,mBAAiE,CAAC;AACtE,SAAS,sBAAsB;IAC7B,mBAAmB,KAAK,aAAa,CACnC,yBAAyB,EACzB,gFAAgF,EAChF,YAAY,CACb,CAAC;IACF,OAAO,mBAAmB,CAAC;AAC7B,CAAC;AAED,8EAA8E;AAC9E,0CAA0C;AAC1C,EAAE;AACF,4EAA4E;AAC5E,0EAA0E;AAC1E,uEAAuE;AACvE,mEAAmE;AACnE,EAAE;AACF,uDAAuD;AACvD,sEAAsE;AACtE,oEAAoE;AACpE,qEAAqE;AACrE,UAAU;AACV,8EAA8E;AAE9E,IAAI,wBAAsE,CAAC;AAC3E,IAAI,0BAAwE,CAAC;AAC7E,SAAS,2BAA2B;IAClC,wBAAwB,KAAK,aAAa,CACxC,8BAA8B,EAC9B,6DAA6D,EAC7D,aAAa,CACd,CAAC;IACF,OAAO,wBAAwB,CAAC;AAClC,CAAC;AACD,SAAS,6BAA6B;IACpC,0BAA0B,KAAK,aAAa,CAC1C,gCAAgC,EAChC,qEAAqE,EACrE,aAAa,CACd,CAAC;IACF,OAAO,0BAA0B,CAAC;AACpC,CAAC;AAMD;;+DAE+D;AAC/D,IAAI,8BAAgF,CAAC;AACrF,SAAS,iCAAiC;IACxC,8BAA8B,KAAK,IAAI,oBAAoB,CAAiB,CAAC,IAAI,EAAE,EAAE;QACnF,6BAA6B,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACnD,CAAC,CAAC,CAAC;IACH,OAAO,8BAA8B,CAAC;AACxC,CAAC;AAED,SAAS,uBAAuB,CAAC,GAAW,EAAE,IAAoB;IAChE,2BAA2B,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,iCAAiC,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;AAC1D,CAAC;AAED;0CAC0C;AAC1C,SAAS,WAAW,CAAI,CAAa,EAAE,EAAU,EAAE,KAAa;IAC9D,IAAI,KAAgD,CAAC;IACrD,OAAO,OAAO,CAAC,IAAI,CAAC;QAClB,CAAC;QACD,IAAI,OAAO,CAAI,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;YAC3B,KAAK,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,GAAG,KAAK,oBAAoB,EAAE,IAAI,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtF,CAAC,CAAC;KACH,CAAC,CAAC,OAAO,CAAC,GAAG,EAAE;QACd,IAAI,KAAK,KAAK,SAAS;YAAE,YAAY,CAAC,KAAK,CAAC,CAAC;IAC/C,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;oBAGoB;AACpB,KAAK,UAAU,wBAAwB,CACrC,SAA8B,EAC9B,MAAiB,EACjB,SAAiB,EACjB,gBAAgC;IAEhC,MAAM,KAAK,GAAsC;QAC/C,CAAC,WAAW,EAAE,SAAS,CAAC,KAAK,EAAE,CAAC;QAChC,CAAC,QAAQ,EAAE,MAAM,CAAC,KAAK,EAAE,CAAC;KAC3B,CAAC;IAEF,MAAM,OAAO,CAAC,GAAG,CACf,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,OAAO,EAAE,YAAY,CAAC,EAAE,EAAE;QAC1C,IAAI,CAAC;YACH,MAAM,WAAW,CAAC,YAAY,EAAE,4BAA4B,EAAE,GAAG,OAAO,QAAQ,CAAC,CAAC;QACpF,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,sBAAsB,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;YACjE,MAAM,CAAC,OAAO,CAAC,mBAAmB,OAAO,yBAAyB,EAAE;gBAClE,GAAG,gBAAgB;gBACnB,SAAS;gBACT,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;aACxD,CAAC,CAAC;QACL,CAAC;IACH,CAAC,CAAC,CACH,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CACjC,aAAuC,EACvC,aAA6B,EAC7B,QAAwB;IAExB,MAAM,GAAG,GAAG,IAAI,IAAI,EAA2B,CAAC;IAChD,MAAM,gBAAgB,GAAG;QACvB,GAAG,aAAa;QAChB,SAAS,EAAE,oBAAoB;KAChC,CAAC;IAEF,8CAA8C;IAC9C,mEAAmE;IACnE,MAAM,UAAU,GAAG,MAAM,CAAC,cAAc,KAAK,UAAU,IAAI,MAAM,CAAC,cAAc,KAAK,MAAM,CAAC;IAC5F,MAAM,YAAY,GAAG,UAAU;QAC7B,CAAC,CAAC,IAAI,YAAY,CAAC,MAAM,CAAC,gCAAgC,CAAC;QAC3D,CAAC,CAAC,IAAI,CAAC;IAET,mEAAmE;IACnE,iGAAiG;IACjG,qBAAqB,CACnB,qBAAqB,EACrB,+BAA+B,EAC/B,GAAG,EAAE,CAAC,YAAY,EAAE,eAAe,EAAE,IAAI,CAAC,EAC1C,YAAY,CACb,CAAC;IAEF,2EAA2E;IAC3E,iEAAiE;IACjE,6EAA6E;IAC7E,uEAAuE;IACvE,IAAI,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,CAAC;QACjC,IAAI,CAAC;YACH,MAAM,EAAE,6BAA6B,EAAE,GAAG,MAAM,MAAM,CAAC,YAAY,CAAC,CAAC;YACrE,GAAG,CAAC,GAAG,CACL,MAAM,CAAC,mBAAmB,EAC1B,6BAA6B,CAAC;gBAC5B,qBAAqB,EAAE,CAAC,gBAAgB,CAAC;aAC1C,CAAC,CACH,CAAC;YACF,MAAM,CAAC,KAAK,CAAC,2DAA2D,EAAE,gBAAgB,CAAC,CAAC;QAC9F,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,CAAC,OAAO,CACZ,4FAA4F,EAC5F,gBAAgB,CACjB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,2DAA2D;IAC3D,EAAE;IACF,oEAAoE;IACpE,+EAA+E;IAC/E,6EAA6E;IAC7E,EAAE;IACF,iFAAiF;IACjF,6EAA6E;IAC7E,2EAA2E;IAC3E,6EAA6E;IAC7E,EAAE;IACF,8EAA8E;IAC9E,wEAAwE;IACxE,MAAM,eAAe,GACnB,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,CAAC,IAAI,MAAM,CAAC,iBAAiB,CAAC,MAAM,GAAG,CAAC;QAC5E,CAAC,CAAC,MAAM,CAAC,iBAAiB;QAC1B,CAAC,CAAC,SAAS,CAAC;IAChB,MAAM,yBAAyB,GAAG,eAAe,EAAE,QAAQ,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC;IAC1E,MAAM,UAAU,GACd,CAAC,eAAe,IAAI,yBAAyB,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,eAAe,CAAC;IAExE,IAAI,CAAC,eAAe,EAAE,CAAC;QACrB,MAAM,CAAC,OAAO,CACZ,4MAA4M,EAC5M,gBAAgB,CACjB,CAAC;IACJ,CAAC;SAAM,IAAI,yBAAyB,EAAE,CAAC;QACrC,MAAM,CAAC,OAAO,CACZ,oHAAoH,EACpH,gBAAgB,CACjB,CAAC;IACJ,CAAC;IAED,sDAAsD;IACtD,0EAA0E;IAC1E,2EAA2E;IAC3E,GAAG,CAAC,GAAG,CACL,GAAG,EACH,IAAI,CAAC;QACH,MAAM,EAAE,UAAU;QAClB,YAAY,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,SAAS,CAAC;QAClD,YAAY,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,gBAAgB,EAAE,sBAAsB,CAAC;QACzF,aAAa,EAAE,CAAC,gBAAgB,CAAC;QACjC,GAAG,CAAC,UAAU,KAAK,GAAG,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;KACjD,CAAC,CACH,CAAC;IAEF,6BAA6B;IAC7B,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC,CAAC;IAE9B,8EAA8E;IAC9E,6FAA6F;IAC7F,EAAE;IACF,8EAA8E;IAC9E,gFAAgF;IAChF,0EAA0E;IAC1E,yBAAyB;IACzB,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,IAAI,EAAE,EAAE;QACpD,MAAM,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,SAAS,GACb,yBAAyB;gBACzB,CAAC,eAAe,CAAC,CAAC,CAAC,eAAe,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,kBAAkB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC;YAEzF,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,CAAC,OAAO,CAAC,6CAA6C,EAAE;oBAC5D,GAAG,gBAAgB;oBACnB,MAAM;oBACN,cAAc,EAAE,eAAe,IAAI,eAAe;iBACnD,CAAC,CAAC;gBACH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,2CAA2C,EAAE,EAAE,GAAG,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;QACD,2CAA2C;QAC3C,OAAO,MAAM,IAAI,EAAE,CAAC;IACtB,CAAC,CAAC,CAAC;IAEH,gEAAgE;IAChE,GAAG,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAErD,yEAAyE;IACzE,gDAAgD;IAChD,GAAG,CAAC,GAAG,CAAC,uCAAuC,EAAE,gCAAgC,CAAC,CAAC;IAEnF,kEAAkE;IAClE,2EAA2E;IAC3E,+DAA+D;IAC/D,MAAM,cAAc,GAAG,uBAAuB,CAAC;IAC/C,IAAI,MAAM,CAAC,mBAAmB,KAAK,cAAc,EAAE,CAAC;QAClD,GAAG,CAAC,GAAG,CAAC,cAAc,EAAE,uBAAuB,CAAC,QAAQ,CAAC,CAAC,CAAC;QAC3D,MAAM,CAAC,KAAK,CAAC,mCAAmC,cAAc,GAAG,EAAE,gBAAgB,CAAC,CAAC;IACvF,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,OAAO,CACZ,iCAAiC,cAAc,4CAA4C,EAC3F,gBAAgB,CACjB,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,4EAA4E;IAC5E,uEAAuE;IACvE,MAAM,YAAY,GAAG,kBAAkB,EAAE,CAAC;IAE1C,+EAA+E;IAC/E,kFAAkF;IAClF,6DAA6D;IAC7D,MAAM,WAAW,GAAG,GAAG,CAAC;IACxB,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,IAAI,MAAM,CAAC,mBAAmB,KAAK,WAAW,EAAE,CAAC;QAC3E,IAAI,QAAQ,CAAC,OAAO,CAAC,WAAW,IAAI,CAAC,YAAY,EAAE,CAAC;YAClD,MAAM,CAAC,OAAO,CACZ,mLAAmL,EACnL,gBAAgB,CACjB,CAAC;QACJ,CAAC;QACD,GAAG,CAAC,GAAG,CAAC,WAAW,EAAE,wBAAwB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC,CAAC;QACvE,MAAM,CAAC,KAAK,CAAC,2BAA2B,WAAW,GAAG,EAAE,gBAAgB,CAAC,CAAC;IAC5E,CAAC;SAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,OAAO,EAAE,CAAC;QACrC,MAAM,CAAC,KAAK,CAAC,kDAAkD,EAAE,gBAAgB,CAAC,CAAC;IACrF,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,OAAO,CACZ,iCAAiC,WAAW,6CAA6C,EACzF,gBAAgB,CACjB,CAAC;IACJ,CAAC;IAED,8EAA8E;IAC9E,iFAAiF;IACjF,EAAE;IACF,iFAAiF;IACjF,2EAA2E;IAC3E,2EAA2E;IAC3E,+EAA+E;IAC/E,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,EAAE;QAC9C,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,mBAAmB,CAAC,EAAE,CAAC;YAC1D,OAAO,IAAI,EAAE,CAAC,CAAC,4CAA4C;QAC7D,CAAC;QAED,kEAAkE;QAClE,mFAAmF;QACnF,IAAI,MAAM,CAAC,WAAW,KAAK,MAAM,EAAE,CAAC;YAClC,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QAClC,CAAC;QAED,OAAO,CAAC,CAAC,IAAI,CAAC;YACZ,MAAM,EAAE,IAAI;YACZ,MAAM,EAAE;gBACN,IAAI,EAAE,QAAQ,CAAC,MAAM,CAAC,IAAI;gBAC1B,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,OAAO;gBAChC,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW;gBACxC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;gBACvE,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,WAAW;gBACxC,SAAS,EAAE,QAAQ,CAAC,SAAS,CAAC,IAAI;gBAClC,WAAW,EAAE,QAAQ,CAAC,SAAS,CAAC,WAAW;aAC5C;YACD,gBAAgB,EAAE,QAAQ,CAAC,QAAQ,CAAC,iBAAiB;YACrD,YAAY,EAAE;gBACZ,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,OAAO;gBACtC,OAAO,EAAE,QAAQ,CAAC,YAAY,CAAC,OAAO;gBACtC,SAAS,EAAE,QAAQ,CAAC,YAAY,CAAC,SAAS;gBAC1C,KAAK,EAAE,QAAQ,CAAC,YAAY,CAAC,KAAK;aACnC;YACD,UAAU,EAAE;gBACV,4BAA4B,EAAE,4BAA4B,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,EAAE,CAAC;aAC1F;YACD,SAAS,EAAE,QAAQ,CAAC,SAAS;YAC7B,IAAI,EAAE;gBACJ,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI;aACzB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,6EAA6E;IAC7E,yEAAyE;IACzE,6DAA6D;IAC7D,IAAI,YAAY,EAAE,CAAC;QACjB,MAAM,cAAc,GAAG,oBAAoB,CAAC,YAAY,CAAC,CAAC;QAC1D,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAmB,EAAE,cAAc,CAAC,CAAC;QACpD,MAAM,CAAC,IAAI,CAAC,qDAAqD,EAAE,gBAAgB,CAAC,CAAC;IACvF,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,IAAI,CAAC,0DAA0D,EAAE,gBAAgB,CAAC,CAAC;IAC5F,CAAC;IAED,oEAAoE;IACpE,SAAS,sBAAsB;QAC7B,MAAM,QAAQ,GAAG,WAAW,CAAC,QAAQ,EAAE,EAAE,QAAQ,CAAC;QAClD,IAAI,CAAC,QAAQ;YAAE,OAAO;QACtB,OAAO,MAAM,CAAC,WAAW,CACvB,MAAM,CAAC,OAAO,CAAC;YACb,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,QAAQ,EAAE,QAAQ,CAAC,QAAQ;YAC3B,OAAO,EAAE,QAAQ,CAAC,OAAO;SAC1B,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC,CACb,CAAC;IACvB,CAAC;IAED,+DAA+D;IAC/D,8DAA8D;IAC9D,+FAA+F;IAC/F,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,EAAE,CAAC,CAAC,EAAE,EAAE;QAC3C,MAAM,SAAS,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAEjD,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,MAAM,CAAC,OAAO,CAAC,mCAAmC,EAAE,gBAAgB,CAAC,CAAC;YACtE,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,EAAE,GAAG,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,+BAA+B,EAAE;YAC3C,GAAG,gBAAgB;YACnB,SAAS;SACV,CAAC,CAAC;QAEH,sEAAsE;QACtE,IAAI,MAAM,CAAC,cAAc,KAAK,WAAW,IAAI,CAAC,YAAY,EAAE,CAAC;YAC3D,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,qDAAqD,EAAE,EAAE,GAAG,CAAC,CAAC;QACvF,CAAC;QAED,0DAA0D;QAC1D,MAAM,eAAe,GAAG,sBAAsB,EAAE,CAAC;QAEjD,IAAI,CAAC,YAAY,CAAC,kBAAkB,CAAC,SAAS,EAAE,eAAe,CAAC,EAAE,CAAC;YACjE,MAAM,CAAC,OAAO,CAAC,4DAA4D,EAAE;gBAC3E,GAAG,gBAAgB;gBACnB,SAAS;gBACT,aAAa,EAAE,eAAe,EAAE,QAAQ;gBACxC,aAAa,EAAE,eAAe,EAAE,QAAQ;aACzC,CAAC,CAAC;YACH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,oCAAoC,EAAE,EAAE,GAAG,CAAC,CAAC;QACtE,CAAC;QAED,qCAAqC;QACrC,YAAY,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAElC,MAAM,CAAC,IAAI,CAAC,iCAAiC,EAAE;YAC7C,GAAG,gBAAgB;YACnB,SAAS;SACV,CAAC,CAAC;QAEH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,EAAE,GAAG,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;IAEH,kCAAkC;IAClC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAmB,EAAE,KAAK,EAAE,CAAC,EAAE,EAAE;QAC9C,MAAM,eAAe,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,sBAAsB,CAAC,IAAI,YAAY,CAAC;QAC7E,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE;YACpC,GAAG,gBAAgB;YACnB,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI;YAChB,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM;YACpB,eAAe;SAChB,CAAC,CAAC;QAEH,yEAAyE;QACzE,oEAAoE;QACpE,sEAAsE;QACtE,MAAM,iBAAiB,GAAG,QAAQ,CAAC,QAAQ,CAAC,iBAAiB,CAAC;QAC9D,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,eAAe,CAAC,EAAE,CAAC;YACjD,MAAM,CAAC,OAAO,CAAC,6CAA6C,EAAE;gBAC5D,GAAG,gBAAgB;gBACnB,eAAe;gBACf,iBAAiB;aAClB,CAAC,CAAC;YACH,OAAO,CAAC,CAAC,IAAI,CACX;gBACE,KAAK,EAAE,kCAAkC;gBACzC,eAAe;gBACf,iBAAiB;aAClB,EACD,GAAG,CACJ,CAAC;QACJ,CAAC;QAED,MAAM,iBAAiB,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC;QAEzD,0DAA0D;QAC1D,0DAA0D;QAC1D,MAAM,eAAe,GAAG,sBAAsB,EAAE,CAAC;QAEjD,kEAAkE;QAClE,+FAA+F;QAC/F,wEAAwE;QACxE,IACE,YAAY;YACZ,iBAAiB;YACjB,CAAC,YAAY,CAAC,kBAAkB,CAAC,iBAAiB,EAAE,eAAe,CAAC,EACpE,CAAC;YACD,MAAM,CAAC,OAAO,CAAC,yDAAyD,EAAE;gBACxE,GAAG,gBAAgB;gBACnB,SAAS,EAAE,iBAAiB;gBAC5B,aAAa,EAAE,eAAe,EAAE,QAAQ;gBACxC,aAAa,EAAE,eAAe,EAAE,QAAQ;aACzC,CAAC,CAAC;YACH,OAAO,CAAC,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,EAAE,GAAG,CAAC,CAAC;QAChE,CAAC;QAED,uEAAuE;QACvE,uEAAuE;QACvE,mEAAmE;QACnE,uEAAuE;QACvE,MAAM,SAAS,GAAG,iBAAiB,IAAI,uBAAuB,EAAE,CAAC;QAEjE,MAAM,SAAS,GAAG,IAAI,mBAAmB,CAAC,SAAS,CAAC,CAAC;QACrD,uBAAuB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;QAEhD,MAAM,SAAS,GAAG,KAAK,IAAuB,EAAE;YAC9C,8DAA8D;YAC9D,2EAA2E;YAC3E,2BAA2B;YAC3B,MAAM,MAAM,GAAG,MAAM,aAAa,EAAE,CAAC;YACrC,uBAAuB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;YAC1C,MAAM,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;YAChC,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;YAElD,IAAI,QAAQ,EAAE,CAAC;gBACb,sEAAsE;gBACtE,+DAA+D;gBAC/D,yDAAyD;gBACzD,IAAI,YAAY,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;oBAChC,YAAY,CAAC,WAAW,CAAC,SAAS,EAAE,eAAe,CAAC,CAAC;gBACvD,CAAC;gBAED,2EAA2E;gBAC3E,wDAAwD;gBACxD,kFAAkF;gBAClF,IAAI,UAAU,IAAI,QAAQ,CAAC,EAAE,EAAE,CAAC;oBAC9B,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,gBAAgB,EAAE,SAAS,CAAC,CAAC;oBAClD,MAAM,CAAC,KAAK,CAAC,yCAAyC,EAAE;wBACtD,GAAG,gBAAgB;wBACnB,SAAS;qBACV,CAAC,CAAC;gBACL,CAAC;gBAED,wEAAwE;gBACxE,kEAAkE;gBAClE,kEAAkE;gBAClE,sEAAsE;gBACtE,EAAE;gBACF,iEAAiE;gBACjE,gEAAgE;gBAChE,mEAAmE;gBACnE,MAAM,KAAK,GAAG,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC,EAAE,QAAQ,CAAC,mBAAmB,CAAC,CAAC;gBAClF,IAAI,CAAC,KAAK,EAAE,CAAC;oBACX,cAAc,CAAC,GAAG,EAAE;wBAClB,KAAK,wBAAwB,CAAC,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,gBAAgB,CAAC,CAAC;oBAChF,CAAC,CAAC,CAAC;gBACL,CAAC;gBAED,OAAO,QAAQ,CAAC;YAClB,CAAC;YACD,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;QAC3B,CAAC,CAAC;QAEF,2EAA2E;QAC3E,kEAAkE;QAClE,IAAI,CAAC;YACH,OAAO,MAAM,SAAS,EAAE,CAAC;QAC3B,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,uEAAuE;YACvE,mEAAmE;YACnE,yEAAyE;YACzE,aAAa;YACb,MAAM,WAAW,CAAC,SAAS,CAAC,KAAK,EAAE,EAAE,4BAA4B,EAAE,iBAAiB,CAAC,CAAC,KAAK,CACzF,CAAC,QAAiB,EAAE,EAAE;gBACpB,sBAAsB,EAAE,CAAC,GAAG,CAAC,CAAC,EAAE,EAAE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;gBAC5E,MAAM,CAAC,OAAO,CAAC,uCAAuC,EAAE;oBACtD,GAAG,gBAAgB;oBACnB,SAAS;oBACT,KAAK,EAAE,QAAQ,YAAY,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC;iBACvE,CAAC,CAAC;YACL,CAAC,CACF,CAAC;YACF,MAAM,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC,CAAC,CAAC;IAEH,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE,gBAAgB,CAAC,CAAC;IAClE,OAAO,EAAE,GAAG,EAAE,YAAY,EAAE,CAAC;AAC/B,CAAC;AAED,SAAS,WAAW,CAAC,IAAY,EAAE,IAAY,EAAE,aAA6B;IAC5E,MAAM,OAAO,GAAG,EAAE,GAAG,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IAC3E,MAAM,CAAC,KAAK,CAAC,oBAAoB,IAAI,eAAe,EAAE,OAAO,CAAC,CAAC;IAC/D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,MAAM,UAAU,GAAG,IAAI,CAAC,YAAY,EAAE,CAAC;QACvC,UAAU;aACP,IAAI,CAAC,OAAO,EAAE,CAAC,GAA0B,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,YAAY,CAAC,CAAC;aACjF,IAAI,CAAC,WAAW,EAAE,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC;aAC/D,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IACxB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,wBAAwB,CAC/B,GAAkC,EAClC,WAAmB,EACnB,IAAY,EACZ,UAAkB,EAClB,aAA6B;IAE7B,MAAM,YAAY,GAAG;QACnB,GAAG,aAAa;QAChB,SAAS,EAAE,0BAA0B;KACtC,CAAC;IACF,MAAM,CAAC,IAAI,CACT,2CAA2C,WAAW,SAAS,UAAU,WAAW,EACpF,YAAY,CACb,CAAC;IAEF,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,aAAa,EAAc,CAAC;IAEzE,MAAM,OAAO,GAAG,CAAC,IAAY,EAAE,OAAe,EAAE,EAAE;QAChD,IAAI,OAAO,GAAG,UAAU,GAAG,CAAC,EAAE,CAAC;YAC7B,MAAM,KAAK,GAAG,IAAI,KAAK,CAAC,oCAAoC,UAAU,WAAW,CAAC,CAAC;YACnF,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,GAAG,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;YAChE,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;QACvB,CAAC;QAED,WAAW,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,GAAG,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;aACxD,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE;YACd,IAAI,KAAK,EAAE,CAAC;gBACV,MAAM,CAAC,OAAO,CAAC,QAAQ,IAAI,yBAAyB,EAAE;oBACpD,GAAG,YAAY;oBACf,IAAI;oBACJ,OAAO;iBACR,CAAC,CAAC;gBACH,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,uBAAuB,CAAC,CAAC;gBACjF,OAAO;YACT,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,cAAc,GAAG,KAAK,CAAC,EAAE,KAAK,EAAE,GAAG,CAAC,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,EAAE;oBAChF,MAAM,aAAa,GAAG,UAAU,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,mBAAmB,EAAE,CAAC;oBACzF,MAAM,CAAC,IAAI,CAAC,+BAA+B,aAAa,EAAE,EAAE;wBAC1D,GAAG,YAAY;wBACf,IAAI;wBACJ,OAAO,EAAE,aAAa;qBACvB,CAAC,CAAC;oBACH,gBAAgB,CAAC,+BAA+B,aAAa,EAAE,EAAE,MAAM,CAAC,CAAC;gBAC3E,CAAC,CAAC,CAAC;gBACH,OAAO,CAAC,cAAc,CAAC,CAAC;YAC1B,CAAC;YAAC,OAAO,GAAY,EAAE,CAAC;gBACtB,MAAM,CAAC,OAAO,CAAC,mCAAmC,IAAI,eAAe,EAAE;oBACrE,GAAG,YAAY;oBACf,IAAI;oBACJ,OAAO;oBACP,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC;iBACnB,CAAC,CAAC;gBACH,UAAU,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,EAAE,OAAO,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,uBAAuB,CAAC,CAAC;YACnF,CAAC;QACH,CAAC,CAAC;aACD,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;IACjF,CAAC,CAAC;IAEF,OAAO,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;IACxB,OAAO,OAAO,CAAC;AACjB,CAAC;AAYD,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,aAAuC,EACvC,aAA6B,EAC7B,QAAwB;IAExB,MAAM,gBAAgB,GAAG;QACvB,GAAG,aAAa;QAChB,SAAS,EAAE,oBAAoB;KAChC,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,0BAA0B,EAAE,gBAAgB,CAAC,CAAC;IAE1D,MAAM,EAAE,GAAG,EAAE,YAAY,EAAE,GAAG,MAAM,aAAa,CAAC,aAAa,EAAE,gBAAgB,EAAE,QAAQ,CAAC,CAAC;IAE7F,MAAM,MAAM,GAAG,MAAM,wBAAwB,CAC3C,GAAG,EACH,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,WAAW,EAClB,MAAM,CAAC,qBAAqB,EAC5B,gBAAgB,CACjB,CAAC;IAEF,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE,gBAAgB,CAAC,CAAC;IAEtE,OAAO;QACL,MAAM;QACN,IAAI,EAAE,CAAC,GAAmB,EAAE,EAAE,CAAC,iBAAiB,CAAC,MAAM,EAAE,YAAY,EAAE,GAAG,CAAC;KAC5E,CAAC;AACJ,CAAC;AAED,mFAAmF;AACnF,MAAM,gBAAgB,GAAG,KAAK,CAAC;AAE/B,SAAS,iBAAiB,CACxB,MAAkB,EAClB,YAAiC,EACjC,aAA6B;IAE7B,MAAM,gBAAgB,GAAG;QACvB,GAAG,aAAa;QAChB,SAAS,EAAE,mBAAmB;QAC9B,aAAa,EAAE,MAAM;KACtB,CAAC;IACF,MAAM,CAAC,IAAI,CAAC,sCAAsC,EAAE,gBAAgB,CAAC,CAAC;IAEtE,YAAY,EAAE,OAAO,EAAE,CAAC;IAExB,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;QACrC,2EAA2E;QAC3E,yEAAyE;QACzE,0EAA0E;QAC1E,2CAA2C;QAC3C,MAAM,UAAU,GAAG,UAAU,CAAC,GAAG,EAAE;YACjC,MAAM,CAAC,OAAO,CAAC,wDAAwD,EAAE,gBAAgB,CAAC,CAAC;YAC1F,MAAsB,CAAC,mBAAmB,EAAE,CAAC;QAChD,CAAC,EAAE,gBAAgB,CAAC,CAAC;QACrB,UAAU,CAAC,KAAK,EAAE,CAAC;QAEnB,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE;YACnB,YAAY,CAAC,UAAU,CAAC,CAAC;YACzB,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,CAAC,KAAK,CAAC,4BAA4B,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAC;gBAClE,OAAO,MAAM,CAAC,GAAG,CAAC,CAAC;YACrB,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,kCAAkC,EAAE,gBAAgB,CAAC,CAAC;YAClE,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC"}
@@ -1,12 +1,14 @@
1
1
  /**
2
2
  * @fileoverview Hono handler factory for `GET /` — serves the HTML landing
3
- * page. Cache and body shape depend on `manifest.landing.requireAuth` and
4
- * whether the caller presents an Authorization header.
3
+ * page. Cache and body shape depend on `manifest.landing.requireAuth` and,
4
+ * when an auth strategy is provided, whether the caller presents a valid
5
+ * bearer token.
5
6
  *
6
7
  * @module src/mcp-server/transports/http/landing-page/handler
7
8
  */
8
9
  import type { Context } from 'hono';
9
10
  import type { ServerManifest } from '../../../../core/serverManifest.js';
11
+ import type { AuthStrategy } from '../../../../mcp-server/transports/auth/strategies/authStrategy.js';
10
12
  /**
11
13
  * Factory for the `GET /` route handler.
12
14
  *
@@ -17,10 +19,13 @@ import type { ServerManifest } from '../../../../core/serverManifest.js';
17
19
  * | `false` (default) | full page · `Cache-Control: public, max-age=60` | full page · same |
18
20
  * | `true` | full page · `Cache-Control: private, max-age=60` · `Vary: Authorization` | reduced hero-only page · same cache headers |
19
21
  *
20
- * The check is header-presence based we don't validate the bearer token
21
- * here (that's the MCP endpoint's job). If a caller presents any Authorization
22
- * header, the full inventory renders; if not, they see a stub and a pointer
23
- * to the docs link when available.
22
+ * When `requireAuth` is `true` the handler validates the bearer token via the
23
+ * provided {@link AuthStrategy} (the same strategy the MCP endpoint uses). A
24
+ * missing, malformed, or invalid token produces the degraded page. When no
25
+ * auth strategy is configured (e.g. `MCP_AUTH_MODE=none`) while `requireAuth`
26
+ * is on, there is no way to authenticate — every caller gets the degraded
27
+ * page. This keeps the inventory hidden by default rather than falling back
28
+ * to a header-presence heuristic that any caller can bypass.
24
29
  *
25
30
  * When `manifest.transport.publicUrl` is set, the base URL is deterministic,
26
31
  * so both page variants (full and degraded) are rendered once at factory
@@ -28,5 +33,5 @@ import type { ServerManifest } from '../../../../core/serverManifest.js';
28
33
  * only runs when the origin must be derived per-request from
29
34
  * `new URL(c.req.url).origin`.
30
35
  */
31
- export declare function createLandingPageHandler(manifest: ServerManifest): (c: Context) => Response;
36
+ export declare function createLandingPageHandler(manifest: ServerManifest, authStrategy?: AuthStrategy | null): (c: Context) => Promise<Response>;
32
37
  //# sourceMappingURL=handler.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../../src/mcp-server/transports/http/landing-page/handler.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAwB/D;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,wBAAwB,CAAC,QAAQ,EAAE,cAAc,IASvD,GAAG,OAAO,KAAG,QAAQ,CAqC9B"}
1
+ {"version":3,"file":"handler.d.ts","sourceRoot":"","sources":["../../../../../src/mcp-server/transports/http/landing-page/handler.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,MAAM,CAAC;AAEpC,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC/D,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,yDAAyD,CAAC;AAwB5F;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,wBAAwB,CACtC,QAAQ,EAAE,cAAc,EACxB,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,IAgBpB,GAAG,OAAO,KAAG,OAAO,CAAC,QAAQ,CAAC,CAqD7C"}
@@ -1,7 +1,8 @@
1
1
  /**
2
2
  * @fileoverview Hono handler factory for `GET /` — serves the HTML landing
3
- * page. Cache and body shape depend on `manifest.landing.requireAuth` and
4
- * whether the caller presents an Authorization header.
3
+ * page. Cache and body shape depend on `manifest.landing.requireAuth` and,
4
+ * when an auth strategy is provided, whether the caller presents a valid
5
+ * bearer token.
5
6
  *
6
7
  * @module src/mcp-server/transports/http/landing-page/handler
7
8
  */
@@ -35,10 +36,13 @@ const CONTENT_SECURITY_POLICY = [
35
36
  * | `false` (default) | full page · `Cache-Control: public, max-age=60` | full page · same |
36
37
  * | `true` | full page · `Cache-Control: private, max-age=60` · `Vary: Authorization` | reduced hero-only page · same cache headers |
37
38
  *
38
- * The check is header-presence based we don't validate the bearer token
39
- * here (that's the MCP endpoint's job). If a caller presents any Authorization
40
- * header, the full inventory renders; if not, they see a stub and a pointer
41
- * to the docs link when available.
39
+ * When `requireAuth` is `true` the handler validates the bearer token via the
40
+ * provided {@link AuthStrategy} (the same strategy the MCP endpoint uses). A
41
+ * missing, malformed, or invalid token produces the degraded page. When no
42
+ * auth strategy is configured (e.g. `MCP_AUTH_MODE=none`) while `requireAuth`
43
+ * is on, there is no way to authenticate — every caller gets the degraded
44
+ * page. This keeps the inventory hidden by default rather than falling back
45
+ * to a header-presence heuristic that any caller can bypass.
42
46
  *
43
47
  * When `manifest.transport.publicUrl` is set, the base URL is deterministic,
44
48
  * so both page variants (full and degraded) are rendered once at factory
@@ -46,7 +50,7 @@ const CONTENT_SECURITY_POLICY = [
46
50
  * only runs when the origin must be derived per-request from
47
51
  * `new URL(c.req.url).origin`.
48
52
  */
49
- export function createLandingPageHandler(manifest) {
53
+ export function createLandingPageHandler(manifest, authStrategy) {
50
54
  const { publicUrl } = manifest.transport;
51
55
  const precomputed = publicUrl
52
56
  ? {
@@ -54,14 +58,36 @@ export function createLandingPageHandler(manifest) {
54
58
  degraded: renderLandingPage(manifest, publicUrl, true),
55
59
  }
56
60
  : null;
57
- return (c) => {
61
+ const requireAuth = manifest.landing.requireAuth;
62
+ // When requireAuth is on without a strategy, `degraded` stays true on every
63
+ // request and nobody unlocks the full inventory. Narrow the strategy once
64
+ // so the per-request closure doesn't need a non-null assertion.
65
+ const verifier = requireAuth && authStrategy ? authStrategy : null;
66
+ return async (c) => {
58
67
  const context = requestContextService.createRequestContext({
59
68
  operation: 'landingPageHandler',
60
69
  });
61
70
  const baseUrl = publicUrl ?? new URL(c.req.url).origin;
62
- const requireAuth = manifest.landing.requireAuth;
63
- const authHeader = c.req.header('authorization');
64
- const isAuthenticated = Boolean(authHeader && authHeader.trim().length > 0);
71
+ let isAuthenticated = false;
72
+ if (verifier) {
73
+ // Matches authMiddleware's extraction: case-sensitive 'Bearer ' prefix,
74
+ // token is everything after. Keeps both surfaces consistent on what
75
+ // counts as a well-formed Authorization header.
76
+ const authHeader = c.req.header('authorization');
77
+ const token = authHeader?.startsWith('Bearer ') ? authHeader.substring(7) : undefined;
78
+ if (token) {
79
+ try {
80
+ await verifier.verify(token);
81
+ isAuthenticated = true;
82
+ }
83
+ catch (err) {
84
+ logger.debug('Landing page bearer validation failed.', {
85
+ ...context,
86
+ error: err instanceof Error ? err.message : String(err),
87
+ });
88
+ }
89
+ }
90
+ }
65
91
  const degraded = requireAuth && !isAuthenticated;
66
92
  const html = precomputed
67
93
  ? degraded
@@ -1 +1 @@
1
- {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../../../src/mcp-server/transports/http/landing-page/handler.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAKH,OAAO,EAAE,MAAM,EAAE,MAAM,4BAA4B,CAAC;AACpD,OAAO,EAAE,qBAAqB,EAAE,MAAM,oCAAoC,CAAC;AAE3E,OAAO,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAEhD;;;;;;;GAOG;AACH,MAAM,uBAAuB,GAAG;IAC9B,oBAAoB;IACpB,2BAA2B;IAC3B,4BAA4B;IAC5B,6BAA6B;IAC7B,oBAAoB;IACpB,wBAAwB;IACxB,iBAAiB;CAClB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AAEb;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,wBAAwB,CAAC,QAAwB;IAC/D,MAAM,EAAE,SAAS,EAAE,GAAG,QAAQ,CAAC,SAAS,CAAC;IACzC,MAAM,WAAW,GAAG,SAAS;QAC3B,CAAC,CAAC;YACE,IAAI,EAAE,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,KAAK,CAAC;YACnD,QAAQ,EAAE,iBAAiB,CAAC,QAAQ,EAAE,SAAS,EAAE,IAAI,CAAC;SACvD;QACH,CAAC,CAAC,IAAI,CAAC;IAET,OAAO,CAAC,CAAU,EAAY,EAAE;QAC9B,MAAM,OAAO,GAAG,qBAAqB,CAAC,oBAAoB,CAAC;YACzD,SAAS,EAAE,oBAAoB;SAChC,CAAC,CAAC;QACH,MAAM,OAAO,GAAG,SAAS,IAAI,IAAI,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;QAEvD,MAAM,WAAW,GAAG,QAAQ,CAAC,OAAO,CAAC,WAAW,CAAC;QACjD,MAAM,UAAU,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC;QACjD,MAAM,eAAe,GAAG,OAAO,CAAC,UAAU,IAAI,UAAU,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC5E,MAAM,QAAQ,GAAG,WAAW,IAAI,CAAC,eAAe,CAAC;QAEjD,MAAM,IAAI,GAAG,WAAW;YACtB,CAAC,CAAC,QAAQ;gBACR,CAAC,CAAC,WAAW,CAAC,QAAQ;gBACtB,CAAC,CAAC,WAAW,CAAC,IAAI;YACpB,CAAC,CAAC,iBAAiB,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAC;QAEnD,MAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE;YACpC,GAAG,OAAO;YACV,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;YAC9B,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,WAAW;YACX,QAAQ;YACR,MAAM,EAAE,WAAW,KAAK,IAAI;SAC7B,CAAC,CAAC;QAEH,CAAC,CAAC,MAAM,CAAC,cAAc,EAAE,0BAA0B,CAAC,CAAC;QACrD,CAAC,CAAC,MAAM,CAAC,wBAAwB,EAAE,SAAS,CAAC,CAAC;QAC9C,CAAC,CAAC,MAAM,CAAC,yBAAyB,EAAE,uBAAuB,CAAC,CAAC;QAC7D,IAAI,WAAW,EAAE,CAAC;YAChB,CAAC,CAAC,MAAM,CAAC,eAAe,EAAE,qBAAqB,CAAC,CAAC;YACjD,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YACN,CAAC,CAAC,MAAM,CAAC,eAAe,EAAE,oBAAoB,CAAC,CAAC;QAClD,CAAC;QACD,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtB,CAAC,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"handler.js","sourceRoot":"","sources":["../../../../../src/mcp-server/transports/http/landing-page/handler.ts"],"names":[],"mappings":"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"}
@@ -116,10 +116,18 @@ export declare class OpenRouterProvider implements ILlmProvider {
116
116
  private _prepareApiParameters;
117
117
  /**
118
118
  * Dispatches a single chat completion call to the OpenRouter API via the
119
- * provided `OpenAI` client. Logs the outbound request via `logInteraction`.
120
- * For non-streaming calls, awaits the response and logs it before returning.
121
- * For streaming calls, returns the `Stream` immediately; the caller is
122
- * responsible for consuming and logging the stream (see `chatCompletionStream`).
119
+ * provided `OpenAI` client. Emits an interaction log entry for the outbound
120
+ * request and inbound response. For streaming calls, returns the `Stream`
121
+ * immediately; the caller consumes and logs the stream (see
122
+ * `chatCompletionStream`).
123
+ *
124
+ * Payload shape depends on `config.logLlmInteractions`:
125
+ *
126
+ * - `false` (default) — metadata only: model, message count, streaming flag,
127
+ * generation params, token usage.
128
+ * - `true` — full request body and response body. Only enable when transcript
129
+ * persistence is an explicit audit requirement; LLM messages and completions
130
+ * can include user PII, secrets, or confidential prompts.
123
131
  *
124
132
  * @param client - Initialized `OpenAI` client to use for the request.
125
133
  * @param params - Fully-prepared API parameters (defaults already merged).
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter.provider.d.ts","sourceRoot":"","sources":["../../../../src/services/llm/providers/openrouter.provider.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAC7F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAI9F,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEvE,OAAO,EAAE,KAAK,cAAc,EAAyB,MAAM,oCAAoC,CAAC;AAChG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAqDnE;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,0DAA0D;IAC1D,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,kBAAmB,YAAW,YAAY;IA8BnD,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,MAAM;IA/BhB,0EAA0E;IAC1E,OAAO,CAAC,MAAM,CAAqB;IACnC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB,CAA8B;IACvD,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAO5B;IAEF;;;;;;;;;OASG;gBAEO,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,OAAO,UAAU,EACzB,MAAM,EAAE,OAAO,UAAU;IA0BnC;;;;;;;OAOG;YACW,YAAY;IAM1B;;;;;;;;;;;;OAYG;YACW,UAAU;IAsCxB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,qBAAqB;IAyB7B;;;;;;;;;;;;OAYG;YACW,8BAA8B;IA0B5C;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACU,cAAc,CACzB,MAAM,EAAE,oBAAoB,EAC5B,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAsFxD;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACU,oBAAoB,CAC/B,MAAM,EAAE,oBAAoB,EAC5B,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;CA4B/C"}
1
+ {"version":3,"file":"openrouter.provider.d.ts","sourceRoot":"","sources":["../../../../src/services/llm/providers/openrouter.provider.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,mCAAmC,CAAC;AAC7F,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAE/C,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,KAAK,EAAE,YAAY,EAAE,oBAAoB,EAAE,MAAM,qCAAqC,CAAC;AAI9F,OAAO,KAAK,EAAE,MAAM,IAAI,UAAU,EAAE,MAAM,4BAA4B,CAAC;AAEvE,OAAO,EAAE,KAAK,cAAc,EAAyB,MAAM,oCAAoC,CAAC;AAChG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,iCAAiC,CAAC;AAqDnE;;;;GAIG;AACH,MAAM,WAAW,uBAAuB;IACtC,0DAA0D;IAC1D,MAAM,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,qBAAa,kBAAmB,YAAW,YAAY;IA8BnD,OAAO,CAAC,WAAW;IACnB,OAAO,CAAC,MAAM;IACd,OAAO,CAAC,MAAM;IA/BhB,0EAA0E;IAC1E,OAAO,CAAC,MAAM,CAAqB;IACnC;;;;OAIG;IACH,OAAO,CAAC,iBAAiB,CAA8B;IACvD,kFAAkF;IAClF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAO5B;IAEF;;;;;;;;;OASG;gBAEO,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,OAAO,UAAU,EACzB,MAAM,EAAE,OAAO,UAAU;IA0BnC;;;;;;;OAOG;YACW,YAAY;IAM1B;;;;;;;;;;;;OAYG;YACW,UAAU;IAsCxB;;;;;;;;;;;;;;OAcG;IACH,OAAO,CAAC,qBAAqB;IAyB7B;;;;;;;;;;;;;;;;;;;;OAoBG;YACW,8BAA8B;IAyC5C;;;;;;;;;;;;;;;;;;;;;;;;;OAyBG;IACU,cAAc,CACzB,MAAM,EAAE,oBAAoB,EAC5B,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,cAAc,GAAG,MAAM,CAAC,mBAAmB,CAAC,CAAC;IAsFxD;;;;;;;;;;;;;;;;;;;;;;;;;;OA0BG;IACU,oBAAoB,CAC/B,MAAM,EAAE,oBAAoB,EAC5B,OAAO,EAAE,cAAc,EACvB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC;CAmC/C"}
@@ -198,10 +198,18 @@ export class OpenRouterProvider {
198
198
  }
199
199
  /**
200
200
  * Dispatches a single chat completion call to the OpenRouter API via the
201
- * provided `OpenAI` client. Logs the outbound request via `logInteraction`.
202
- * For non-streaming calls, awaits the response and logs it before returning.
203
- * For streaming calls, returns the `Stream` immediately; the caller is
204
- * responsible for consuming and logging the stream (see `chatCompletionStream`).
201
+ * provided `OpenAI` client. Emits an interaction log entry for the outbound
202
+ * request and inbound response. For streaming calls, returns the `Stream`
203
+ * immediately; the caller consumes and logs the stream (see
204
+ * `chatCompletionStream`).
205
+ *
206
+ * Payload shape depends on `config.logLlmInteractions`:
207
+ *
208
+ * - `false` (default) — metadata only: model, message count, streaming flag,
209
+ * generation params, token usage.
210
+ * - `true` — full request body and response body. Only enable when transcript
211
+ * persistence is an explicit audit requirement; LLM messages and completions
212
+ * can include user PII, secrets, or confidential prompts.
205
213
  *
206
214
  * @param client - Initialized `OpenAI` client to use for the request.
207
215
  * @param params - Fully-prepared API parameters (defaults already merged).
@@ -212,7 +220,16 @@ export class OpenRouterProvider {
212
220
  async _openRouterChatCompletionLogic(client, params, context, signal) {
213
221
  this.logger.logInteraction('OpenRouterRequest', {
214
222
  context,
215
- request: params,
223
+ ...(this.config.logLlmInteractions
224
+ ? { request: params }
225
+ : {
226
+ model: params.model,
227
+ messageCount: params.messages?.length ?? 0,
228
+ streaming: Boolean(params.stream),
229
+ maxTokens: params.max_tokens,
230
+ temperature: params.temperature,
231
+ topP: params.top_p,
232
+ }),
216
233
  });
217
234
  const requestOpts = signal ? { signal } : undefined;
218
235
  if (params.stream) {
@@ -222,7 +239,13 @@ export class OpenRouterProvider {
222
239
  const response = await client.chat.completions.create(params, requestOpts);
223
240
  this.logger.logInteraction('OpenRouterResponse', {
224
241
  context,
225
- response,
242
+ ...(this.config.logLlmInteractions
243
+ ? { response }
244
+ : {
245
+ model: response.model,
246
+ finishReasons: response.choices?.map((c) => c.finish_reason),
247
+ usage: response.usage,
248
+ }),
226
249
  });
227
250
  return response;
228
251
  }
@@ -364,8 +387,15 @@ export class OpenRouterProvider {
364
387
  finally {
365
388
  this.logger.logInteraction('OpenRouterResponse', {
366
389
  context,
367
- response: chunks,
368
390
  streaming: true,
391
+ ...(this.config.logLlmInteractions
392
+ ? { response: chunks }
393
+ : {
394
+ chunkCount: chunks.length,
395
+ model: chunks[0]?.model,
396
+ // Usage chunk is emitted last when `stream_options.include_usage=true`.
397
+ usage: chunks.findLast((c) => c.usage != null)?.usage,
398
+ }),
369
399
  });
370
400
  }
371
401
  }.bind(this)();
@@ -1 +1 @@
1
- {"version":3,"file":"openrouter.provider.js","sourceRoot":"","sources":["../../../../src/services/llm/providers/openrouter.provider.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"openrouter.provider.js","sourceRoot":"","sources":["../../../../src/services/llm/providers/openrouter.provider.ts"],"names":[],"mappings":"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"}
@@ -76,11 +76,14 @@ export declare class ErrorHandler {
76
76
  * handler factory where the SDK logs the re-thrown error).
77
77
  *
78
78
  * @param error - The error instance or value to classify.
79
- * @returns `{ code, message }` — the classified error code and extracted message.
79
+ * @returns `{ code, message, data? }` — the classified error code, a human-readable
80
+ * message, and optional structured data (populated for `ZodError` with
81
+ * the full `issues` array so clients can render field-level errors).
80
82
  */
81
83
  static classifyOnly(error: unknown): {
82
84
  code: JsonRpcErrorCode;
83
85
  message: string;
86
+ data?: Record<string, unknown>;
84
87
  };
85
88
  /**
86
89
  * Maps an error to a specific error type `T` by testing it against an ordered list of `ErrorMapping` rules.