@frontmcp/sdk 1.7.2 → 1.8.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 (252) hide show
  1. package/agent/agent.instance.d.ts.map +1 -1
  2. package/agent/agent.scope.d.ts +2 -399
  3. package/agent/agent.scope.d.ts.map +1 -1
  4. package/agent/flows/call-agent.flow.d.ts +1 -0
  5. package/agent/flows/call-agent.flow.d.ts.map +1 -1
  6. package/app/instances/app.local.instance.d.ts.map +1 -1
  7. package/app/remote-capabilities.utils.d.ts +4 -0
  8. package/app/remote-capabilities.utils.d.ts.map +1 -0
  9. package/auth/auth.registry.d.ts.map +1 -1
  10. package/auth/flows/oauth.auth-ui.flow.d.ts +3 -2
  11. package/auth/flows/oauth.auth-ui.flow.d.ts.map +1 -1
  12. package/auth/flows/oauth.authorize.flow.d.ts +5 -4
  13. package/auth/flows/oauth.authorize.flow.d.ts.map +1 -1
  14. package/auth/flows/oauth.callback.flow.d.ts +4 -3
  15. package/auth/flows/oauth.callback.flow.d.ts.map +1 -1
  16. package/auth/flows/oauth.connect.flow.d.ts +3 -2
  17. package/auth/flows/oauth.connect.flow.d.ts.map +1 -1
  18. package/auth/flows/oauth.provider-callback.flow.d.ts +4 -3
  19. package/auth/flows/oauth.provider-callback.flow.d.ts.map +1 -1
  20. package/auth/flows/oauth.register.flow.d.ts +3 -2
  21. package/auth/flows/oauth.register.flow.d.ts.map +1 -1
  22. package/auth/flows/oauth.token.flow.d.ts +3 -2
  23. package/auth/flows/oauth.token.flow.d.ts.map +1 -1
  24. package/auth/flows/oauth.userinfo.flow.d.ts +3 -2
  25. package/auth/flows/oauth.userinfo.flow.d.ts.map +1 -1
  26. package/auth/flows/session.verify.flow.d.ts +19 -1
  27. package/auth/flows/session.verify.flow.d.ts.map +1 -1
  28. package/auth/flows/well-known.jwks.flow.d.ts +5 -4
  29. package/auth/flows/well-known.jwks.flow.d.ts.map +1 -1
  30. package/auth/flows/well-known.oauth-authorization-server.flow.d.ts +4 -3
  31. package/auth/flows/well-known.oauth-authorization-server.flow.d.ts.map +1 -1
  32. package/auth/flows/well-known.prm.flow.d.ts +3 -2
  33. package/auth/flows/well-known.prm.flow.d.ts.map +1 -1
  34. package/auth/instances/instance.local-primary-auth.d.ts +2 -2
  35. package/auth/instances/instance.local-primary-auth.d.ts.map +1 -1
  36. package/auth/session/utils/session-id.utils.d.ts +11 -4
  37. package/auth/session/utils/session-id.utils.d.ts.map +1 -1
  38. package/common/decorators/agent.decorator.d.ts +27 -6
  39. package/common/decorators/agent.decorator.d.ts.map +1 -1
  40. package/common/decorators/resource.decorator.d.ts.map +1 -1
  41. package/common/decorators/tool.decorator.d.ts +17 -9
  42. package/common/decorators/tool.decorator.d.ts.map +1 -1
  43. package/common/dynamic/dynamic.plugin.d.ts +1 -0
  44. package/common/dynamic/dynamic.plugin.d.ts.map +1 -1
  45. package/common/entries/resource.entry.d.ts +2 -2
  46. package/common/entries/resource.entry.d.ts.map +1 -1
  47. package/common/interfaces/agent.interface.d.ts +1 -1
  48. package/common/interfaces/agent.interface.d.ts.map +1 -1
  49. package/common/interfaces/execution-context.interface.d.ts +4 -4
  50. package/common/interfaces/execution-context.interface.d.ts.map +1 -1
  51. package/common/interfaces/flow.interface.d.ts +7 -2
  52. package/common/interfaces/flow.interface.d.ts.map +1 -1
  53. package/common/interfaces/prompt.interface.d.ts +12 -5
  54. package/common/interfaces/prompt.interface.d.ts.map +1 -1
  55. package/common/interfaces/tool-hook.interface.d.ts +2 -2
  56. package/common/interfaces/tool.interface.d.ts +14 -8
  57. package/common/interfaces/tool.interface.d.ts.map +1 -1
  58. package/common/metadata/agent.metadata.d.ts +6 -6
  59. package/common/metadata/app.metadata.d.ts +64 -40
  60. package/common/metadata/app.metadata.d.ts.map +1 -1
  61. package/common/metadata/front-mcp.metadata.d.ts +578 -413
  62. package/common/metadata/front-mcp.metadata.d.ts.map +1 -1
  63. package/common/metadata/job.metadata.d.ts +2 -2
  64. package/common/metadata/output-policy.d.ts +1 -1
  65. package/common/metadata/plugin.metadata.d.ts +8 -8
  66. package/common/metadata/prompt.metadata.d.ts +1 -1
  67. package/common/metadata/prompt.metadata.d.ts.map +1 -1
  68. package/common/metadata/skill.metadata.d.ts +1 -1
  69. package/common/metadata/tool.metadata.d.ts +8 -3
  70. package/common/metadata/tool.metadata.d.ts.map +1 -1
  71. package/common/metadata/workflow.metadata.d.ts +2 -2
  72. package/common/schemas/annotated-class.schema.d.ts +16 -13
  73. package/common/schemas/annotated-class.schema.d.ts.map +1 -1
  74. package/common/schemas/http-output.schema.d.ts +24 -24
  75. package/common/tokens/front-mcp.tokens.d.ts.map +1 -1
  76. package/common/tokens/server.tokens.d.ts +1 -0
  77. package/common/tokens/server.tokens.d.ts.map +1 -1
  78. package/common/tokens/tool.tokens.d.ts +1 -0
  79. package/common/tokens/tool.tokens.d.ts.map +1 -1
  80. package/common/types/options/auth/index.d.ts +4 -2
  81. package/common/types/options/auth/index.d.ts.map +1 -1
  82. package/common/types/options/http/interfaces.d.ts +1 -1
  83. package/common/types/options/index.d.ts +1 -0
  84. package/common/types/options/index.d.ts.map +1 -1
  85. package/common/types/options/logging/schema.d.ts +1 -1
  86. package/common/types/options/outbound-fetch/index.d.ts +4 -0
  87. package/common/types/options/outbound-fetch/index.d.ts.map +1 -0
  88. package/common/types/options/outbound-fetch/interfaces.d.ts +32 -0
  89. package/common/types/options/outbound-fetch/interfaces.d.ts.map +1 -0
  90. package/common/types/options/outbound-fetch/schema.d.ts +19 -0
  91. package/common/types/options/outbound-fetch/schema.d.ts.map +1 -0
  92. package/common/types/options/skills-http/interfaces.d.ts +3 -2
  93. package/common/types/options/skills-http/interfaces.d.ts.map +1 -1
  94. package/common/types/options/skills-http/schema.d.ts +8 -8
  95. package/common/types/options/transport/index.d.ts +2 -2
  96. package/common/types/options/transport/index.d.ts.map +1 -1
  97. package/common/types/options/transport/schema.d.ts +11 -0
  98. package/common/types/options/transport/schema.d.ts.map +1 -1
  99. package/common/utils/auth-info.utils.d.ts +26 -0
  100. package/common/utils/auth-info.utils.d.ts.map +1 -0
  101. package/common/utils/decide-request-intent.utils.d.ts +1 -1
  102. package/common/utils/decide-request-intent.utils.d.ts.map +1 -1
  103. package/common/utils/guard.utils.d.ts +57 -0
  104. package/common/utils/guard.utils.d.ts.map +1 -0
  105. package/common/utils/index.d.ts +2 -0
  106. package/common/utils/index.d.ts.map +1 -1
  107. package/common/utils/path.utils.d.ts +29 -0
  108. package/common/utils/path.utils.d.ts.map +1 -1
  109. package/completion/flows/complete.flow.d.ts +11 -2
  110. package/completion/flows/complete.flow.d.ts.map +1 -1
  111. package/context/frontmcp-context-storage.d.ts +30 -2
  112. package/context/frontmcp-context-storage.d.ts.map +1 -1
  113. package/context/frontmcp-context.d.ts +19 -6
  114. package/context/frontmcp-context.d.ts.map +1 -1
  115. package/context/frontmcp-context.provider.d.ts +1 -1
  116. package/context/index.d.ts +0 -1
  117. package/context/index.d.ts.map +1 -1
  118. package/context/metadata.utils.d.ts +29 -6
  119. package/context/metadata.utils.d.ts.map +1 -1
  120. package/direct/client.types.d.ts +2 -0
  121. package/direct/client.types.d.ts.map +1 -1
  122. package/direct/direct-server.d.ts +1 -0
  123. package/direct/direct-server.d.ts.map +1 -1
  124. package/direct/index.d.ts +0 -1
  125. package/direct/index.d.ts.map +1 -1
  126. package/elicitation/helpers/elicit.helper.d.ts.map +1 -1
  127. package/errors/auth-internal.errors.d.ts +1 -1
  128. package/errors/auth-internal.errors.d.ts.map +1 -1
  129. package/errors/error-handler.d.ts +10 -5
  130. package/errors/error-handler.d.ts.map +1 -1
  131. package/errors/index.d.ts +3 -3
  132. package/errors/index.d.ts.map +1 -1
  133. package/errors/mcp.error.d.ts +28 -0
  134. package/errors/mcp.error.d.ts.map +1 -1
  135. package/errors/mrtr.error.d.ts +5 -0
  136. package/errors/mrtr.error.d.ts.map +1 -1
  137. package/esm/index.mjs +5476 -4363
  138. package/flows/flow.instance.d.ts.map +1 -1
  139. package/flows/flow.registry.d.ts.map +1 -1
  140. package/flows/flow.stages.d.ts +2 -1
  141. package/flows/flow.stages.d.ts.map +1 -1
  142. package/front-mcp/front-mcp.d.ts +2 -2
  143. package/front-mcp/front-mcp.d.ts.map +1 -1
  144. package/front-mcp/front-mcp.providers.d.ts +2 -3555
  145. package/front-mcp/front-mcp.providers.d.ts.map +1 -1
  146. package/hooks/hooks.utils.d.ts +12 -2
  147. package/hooks/hooks.utils.d.ts.map +1 -1
  148. package/index.d.ts +22 -21
  149. package/index.d.ts.map +1 -1
  150. package/index.js +5985 -4860
  151. package/job/execution/job-execution.manager.d.ts.map +1 -1
  152. package/package.json +10 -10
  153. package/plugin/plugin.registry.d.ts.map +1 -1
  154. package/plugin/plugin.utils.d.ts.map +1 -1
  155. package/prompt/flows/get-prompt.flow.d.ts +2 -1
  156. package/prompt/flows/get-prompt.flow.d.ts.map +1 -1
  157. package/prompt/prompt.registry.d.ts +3 -1
  158. package/prompt/prompt.registry.d.ts.map +1 -1
  159. package/provider/provider.registry.d.ts +1 -0
  160. package/provider/provider.registry.d.ts.map +1 -1
  161. package/resource/flows/read-resource.flow.d.ts +2 -1
  162. package/resource/flows/read-resource.flow.d.ts.map +1 -1
  163. package/resource/resource.instance.d.ts +4 -2
  164. package/resource/resource.instance.d.ts.map +1 -1
  165. package/resource/resource.registry.d.ts +3 -1
  166. package/resource/resource.registry.d.ts.map +1 -1
  167. package/scope/flows/http.ip-filter.flow.d.ts +17 -0
  168. package/scope/flows/http.ip-filter.flow.d.ts.map +1 -0
  169. package/scope/flows/http.request.flow.d.ts +5 -1
  170. package/scope/flows/http.request.flow.d.ts.map +1 -1
  171. package/scope/scope.instance.d.ts +7 -1
  172. package/scope/scope.instance.d.ts.map +1 -1
  173. package/server/adapters/express.host.adapter.d.ts.map +1 -1
  174. package/server/custom-routes.helper.d.ts +7 -1
  175. package/server/custom-routes.helper.d.ts.map +1 -1
  176. package/skill/flows/filter-skills.flow.d.ts +39 -0
  177. package/skill/flows/filter-skills.flow.d.ts.map +1 -0
  178. package/skill/flows/http/llm-full-txt.flow.d.ts +3 -2
  179. package/skill/flows/http/llm-full-txt.flow.d.ts.map +1 -1
  180. package/skill/flows/http/llm-txt.flow.d.ts +3 -2
  181. package/skill/flows/http/llm-txt.flow.d.ts.map +1 -1
  182. package/skill/flows/http/skills-api.flow.d.ts +3 -2
  183. package/skill/flows/http/skills-api.flow.d.ts.map +1 -1
  184. package/skill/flows/index.d.ts +1 -0
  185. package/skill/flows/index.d.ts.map +1 -1
  186. package/skill/flows/load-skill.flow.d.ts.map +1 -1
  187. package/skill/flows/search-skills.flow.d.ts.map +1 -1
  188. package/skill/hooks/skill-tool.hook.d.ts +18 -1
  189. package/skill/hooks/skill-tool.hook.d.ts.map +1 -1
  190. package/skill/index.d.ts +2 -1
  191. package/skill/index.d.ts.map +1 -1
  192. package/skill/sep-2640/resources/skill-file.resource.d.ts.map +1 -1
  193. package/skill/sep-2640/resources/skill-index.resource.d.ts.map +1 -1
  194. package/skill/sep-2640/resources/skill-md.resource.d.ts.map +1 -1
  195. package/skill/sep-2640/sep-2640.per-skill.d.ts.map +1 -1
  196. package/skill/sep-2640/sep-2640.resource-helpers.d.ts +2 -1
  197. package/skill/sep-2640/sep-2640.resource-helpers.d.ts.map +1 -1
  198. package/skill/skill-audit.helper.d.ts +4 -0
  199. package/skill/skill-audit.helper.d.ts.map +1 -1
  200. package/skill/skill-authorities.helper.d.ts +0 -21
  201. package/skill/skill-authorities.helper.d.ts.map +1 -1
  202. package/skill/skill-filter.helper.d.ts +32 -0
  203. package/skill/skill-filter.helper.d.ts.map +1 -0
  204. package/skill/skill-http.utils.d.ts +3 -2
  205. package/skill/skill-http.utils.d.ts.map +1 -1
  206. package/skill/skill-instructions.helper.d.ts +13 -8
  207. package/skill/skill-instructions.helper.d.ts.map +1 -1
  208. package/skill/skill-scope.helper.d.ts +2 -1
  209. package/skill/skill-scope.helper.d.ts.map +1 -1
  210. package/tool/flows/call-tool.flow.d.ts +4 -2
  211. package/tool/flows/call-tool.flow.d.ts.map +1 -1
  212. package/tool/flows/tools-list.flow.d.ts.map +1 -1
  213. package/tool/tool.registry.d.ts +4 -1
  214. package/tool/tool.registry.d.ts.map +1 -1
  215. package/tool/tool.utils.d.ts.map +1 -1
  216. package/tool/ui/index.d.ts +1 -1
  217. package/tool/ui/index.d.ts.map +1 -1
  218. package/tool/ui/ui-shared.d.ts +14 -1
  219. package/tool/ui/ui-shared.d.ts.map +1 -1
  220. package/transport/adapters/transport.local.adapter.d.ts +4 -1
  221. package/transport/adapters/transport.local.adapter.d.ts.map +1 -1
  222. package/transport/adapters/transport.streamable-http.adapter.d.ts.map +1 -1
  223. package/transport/flows/handle.mcp-20260728.flow.d.ts.map +1 -1
  224. package/transport/flows/handle.stateless-http.flow.d.ts.map +1 -1
  225. package/transport/flows/handle.streamable-http.flow.d.ts +1 -1
  226. package/transport/index.d.ts +1 -0
  227. package/transport/index.d.ts.map +1 -1
  228. package/transport/mcp-20260728/dispatcher.d.ts +2 -1
  229. package/transport/mcp-20260728/dispatcher.d.ts.map +1 -1
  230. package/transport/mcp-20260728/mrtr.d.ts.map +1 -1
  231. package/transport/mcp-handlers/call-tool-request.handler.d.ts.map +1 -1
  232. package/transport/mcp-handlers/get-prompt-request.handler.d.ts.map +1 -1
  233. package/transport/mcp-handlers/index.d.ts +549 -549
  234. package/transport/mcp-handlers/index.d.ts.map +1 -1
  235. package/transport/mcp-handlers/mcp-error.utils.d.ts +17 -2
  236. package/transport/mcp-handlers/mcp-error.utils.d.ts.map +1 -1
  237. package/transport/mcp-handlers/read-resource-request.handler.d.ts.map +1 -1
  238. package/transport/mcp-handlers/skills-list-request.handler.d.ts.map +1 -1
  239. package/transport/mcp-handlers/skills-load-request.handler.d.ts.map +1 -1
  240. package/transport/mcp-handlers/skills-search-request.handler.d.ts.map +1 -1
  241. package/transport/transport.registry.d.ts +1 -1
  242. package/transport/transport.registry.d.ts.map +1 -1
  243. package/transport/transport.types.d.ts +2 -0
  244. package/transport/transport.types.d.ts.map +1 -1
  245. package/transport/web-fetch-handler.d.ts +31 -1
  246. package/transport/web-fetch-handler.d.ts.map +1 -1
  247. package/utils/lineage.utils.d.ts +23 -1
  248. package/utils/lineage.utils.d.ts.map +1 -1
  249. package/workflow/engine/workflow-step.executor.d.ts +12 -4
  250. package/workflow/engine/workflow-step.executor.d.ts.map +1 -1
  251. package/workflow/engine/workflow.engine.d.ts +2 -4
  252. package/workflow/engine/workflow.engine.d.ts.map +1 -1
@@ -1,3556 +1,3 @@
1
- import { FrontMcpServer, type FrontMcpConfigType, type ProviderValueType } from '../common';
2
- import { FrontMcpContextStorage } from '../context';
3
- export declare function createMcpGlobalProviders(metadata: FrontMcpConfigType): (typeof FrontMcpContextStorage | ProviderValueType<{
4
- info: {
5
- name: string;
6
- version: string;
7
- title?: string | undefined;
8
- websiteUrl?: string | undefined;
9
- icons?: {
10
- src: string;
11
- mimeType?: string | undefined;
12
- sizes?: string[] | undefined;
13
- theme?: "light" | "dark" | undefined;
14
- }[] | undefined;
15
- };
16
- providers: import("@frontmcp/di").Type<unknown>[];
17
- tools: (string | import("@frontmcp/di").Type<unknown>)[];
18
- resources: import("@frontmcp/di").Type<unknown>[];
19
- skills: import("@frontmcp/di").Type<unknown>[];
20
- plugins: import("@frontmcp/di").Type<unknown>[];
21
- apps: import("@frontmcp/di").Type<unknown>[];
22
- serve: boolean;
23
- transport: {
24
- sessionMode: "stateful" | "stateless" | import("zod/v4/core").$InferOuterFunctionType<import("zod/v4/core").$ZodFunctionArgs, import("zod/v4/core").$ZodFunctionOut>;
25
- protocol: "modern" | "legacy" | "stateless-api" | "full" | {
26
- sse?: boolean | undefined;
27
- streamable?: boolean | undefined;
28
- json?: boolean | undefined;
29
- stateless?: boolean | undefined;
30
- legacy?: boolean | undefined;
31
- strictSession?: boolean | undefined;
32
- };
33
- distributedMode: boolean | "auto";
34
- platformDetection?: {
35
- customOnly: boolean;
36
- mappings?: {
37
- pattern: string | RegExp;
38
- platform: "unknown" | "continue" | "openai" | "claude" | "gemini" | "cursor" | "cody" | "generic-mcp" | "ext-apps";
39
- }[] | undefined;
40
- } | undefined;
41
- defaultProtocolVersion?: "legacy" | "2026-07-28" | undefined;
42
- persistence?: false | {
43
- defaultTtlMs: number;
44
- redis?: {
45
- provider: "redis";
46
- host: string;
47
- port: number;
48
- db: number;
49
- tls: boolean;
50
- keyPrefix: string;
51
- defaultTtlMs: number;
52
- password?: string | undefined;
53
- } | {
54
- provider: "redis";
55
- host: string;
56
- port: number;
57
- db: number;
58
- tls: boolean;
59
- keyPrefix: string;
60
- defaultTtlMs: number;
61
- password?: string | undefined;
62
- } | {
63
- provider: "vercel-kv";
64
- keyPrefix: string;
65
- defaultTtlMs: number;
66
- url?: string | undefined;
67
- token?: string | undefined;
68
- } | undefined;
69
- sqlite?: {
70
- ttlCleanupIntervalMs: number;
71
- walMode: boolean;
72
- path?: string | undefined;
73
- encryption?: {
74
- secret: string;
75
- } | undefined;
76
- } | undefined;
77
- } | undefined;
78
- providerCaching?: boolean | undefined;
79
- eventStore?: {
80
- enabled: boolean;
81
- provider: "redis" | "sqlite" | "memory";
82
- maxEvents: number;
83
- ttlMs: number;
84
- redis?: {
85
- provider: "redis";
86
- host: string;
87
- port: number;
88
- db: number;
89
- tls: boolean;
90
- keyPrefix: string;
91
- defaultTtlMs: number;
92
- password?: string | undefined;
93
- } | {
94
- provider: "redis";
95
- host: string;
96
- port: number;
97
- db: number;
98
- tls: boolean;
99
- keyPrefix: string;
100
- defaultTtlMs: number;
101
- password?: string | undefined;
102
- } | {
103
- provider: "vercel-kv";
104
- keyPrefix: string;
105
- defaultTtlMs: number;
106
- url?: string | undefined;
107
- token?: string | undefined;
108
- } | undefined;
109
- } | undefined;
110
- };
111
- splitByApp: false;
112
- __sourceDir?: string | undefined;
113
- instructions?: string | undefined;
114
- http?: {
115
- port: number;
116
- entryPath: string;
117
- bodyLimit: string | number;
118
- hostFactory?: any;
119
- socketPath?: string | undefined;
120
- cors?: false | {
121
- origin?: string | boolean | string[] | ((origin: string | undefined, callback: (err: Error | null, allow?: boolean) => void) => void) | undefined;
122
- credentials?: boolean | undefined;
123
- maxAge?: number | undefined;
124
- } | undefined;
125
- security?: {
126
- strict?: boolean | undefined;
127
- bindAddress?: string | undefined;
128
- dnsRebindingProtection?: {
129
- enabled?: boolean | undefined;
130
- allowedHosts?: string[] | undefined;
131
- allowedOrigins?: string[] | undefined;
132
- } | undefined;
133
- } | undefined;
134
- urlencodedLimit?: string | number | undefined;
135
- routes?: {
136
- method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS" | "HEAD";
137
- path: string;
138
- handler: import("../common").ServerRequestHandler;
139
- auth?: boolean | undefined;
140
- }[] | undefined;
141
- } | undefined;
142
- redis?: {
143
- provider: "redis";
144
- host: string;
145
- port: number;
146
- db: number;
147
- tls: boolean;
148
- keyPrefix: string;
149
- defaultTtlMs: number;
150
- password?: string | undefined;
151
- } | {
152
- provider: "redis";
153
- host: string;
154
- port: number;
155
- db: number;
156
- tls: boolean;
157
- keyPrefix: string;
158
- defaultTtlMs: number;
159
- password?: string | undefined;
160
- } | {
161
- provider: "vercel-kv";
162
- keyPrefix: string;
163
- defaultTtlMs: number;
164
- url?: string | undefined;
165
- token?: string | undefined;
166
- } | undefined;
167
- pubsub?: {
168
- provider: "redis";
169
- host: string;
170
- port: number;
171
- db: number;
172
- tls: boolean;
173
- keyPrefix: string;
174
- defaultTtlMs: number;
175
- password?: string | undefined;
176
- } | {
177
- provider: "redis";
178
- host: string;
179
- port: number;
180
- db: number;
181
- tls: boolean;
182
- keyPrefix: string;
183
- defaultTtlMs: number;
184
- password?: string | undefined;
185
- } | undefined;
186
- logging?: {
187
- level: import("../common").LogLevel;
188
- enableConsole: boolean;
189
- transports: import("@frontmcp/di").Type<unknown>[];
190
- prefix?: string | undefined;
191
- } | undefined;
192
- pagination?: {
193
- tools?: {
194
- mode: boolean | "auto";
195
- pageSize: number;
196
- autoThreshold: number;
197
- } | undefined;
198
- } | undefined;
199
- elicitation?: {
200
- enabled: boolean;
201
- redis?: {
202
- provider: "redis";
203
- host: string;
204
- port: number;
205
- db: number;
206
- tls: boolean;
207
- keyPrefix: string;
208
- defaultTtlMs: number;
209
- password?: string | undefined;
210
- } | {
211
- provider: "redis";
212
- host: string;
213
- port: number;
214
- db: number;
215
- tls: boolean;
216
- keyPrefix: string;
217
- defaultTtlMs: number;
218
- password?: string | undefined;
219
- } | {
220
- provider: "vercel-kv";
221
- keyPrefix: string;
222
- defaultTtlMs: number;
223
- url?: string | undefined;
224
- token?: string | undefined;
225
- } | undefined;
226
- } | undefined;
227
- skillsConfig?: {
228
- enabled: boolean;
229
- auth: "inherit" | "public" | "api-key" | "bearer";
230
- llmTxt: boolean | {
231
- enabled: boolean;
232
- path?: string | undefined;
233
- };
234
- llmFullTxt: boolean | {
235
- enabled: boolean;
236
- path?: string | undefined;
237
- };
238
- api: boolean | {
239
- enabled: boolean;
240
- path?: string | undefined;
241
- };
242
- mcpResources: boolean;
243
- sep2640InInstructions: boolean;
244
- injectInstructions: "replace" | "off" | "append" | "prepend";
245
- prefix?: string | undefined;
246
- apiKeys?: string[] | undefined;
247
- jwt?: {
248
- issuer: string;
249
- audience?: string | undefined;
250
- jwksUrl?: string | undefined;
251
- } | undefined;
252
- cache?: {
253
- enabled: boolean;
254
- ttlMs: number;
255
- redis?: {
256
- provider: "redis" | "vercel-kv" | "@vercel/kv";
257
- host?: string | undefined;
258
- port?: number | undefined;
259
- password?: string | undefined;
260
- db?: number | undefined;
261
- } | undefined;
262
- keyPrefix?: string | undefined;
263
- } | undefined;
264
- audit?: {
265
- enabled: boolean;
266
- signer?: unknown;
267
- store?: unknown;
268
- subjectMode?: "plain" | "hash" | "omit" | undefined;
269
- headAnchorIntervalMs?: number | undefined;
270
- } | undefined;
271
- scoring?: "cosine" | "bm25" | undefined;
272
- } | undefined;
273
- extApps?: {
274
- enabled: boolean;
275
- hostCapabilities?: {
276
- serverToolProxy?: boolean | undefined;
277
- openLink?: boolean | undefined;
278
- modelContextUpdate?: boolean | undefined;
279
- widgetTools?: boolean | undefined;
280
- displayModes?: ("inline" | "fullscreen" | "pip")[] | undefined;
281
- logging?: boolean | undefined;
282
- } | undefined;
283
- } | undefined;
284
- sqlite?: {
285
- ttlCleanupIntervalMs: number;
286
- walMode: boolean;
287
- path?: string | undefined;
288
- encryption?: {
289
- secret: string;
290
- } | undefined;
291
- } | undefined;
292
- ui?: {
293
- cdnOverrides?: Record<string, string> | undefined;
294
- } | undefined;
295
- output?: {
296
- allowNonFinite?: boolean | undefined;
297
- schemaMode?: "description" | "definition" | "both" | "none" | undefined;
298
- schemaDescriptionFormat?: "summary" | "jsonSchema" | undefined;
299
- } | undefined;
300
- jobs?: {
301
- enabled: boolean;
302
- store?: {
303
- redis?: {
304
- provider: "redis";
305
- host: string;
306
- port: number;
307
- db: number;
308
- tls: boolean;
309
- keyPrefix: string;
310
- defaultTtlMs: number;
311
- password?: string | undefined;
312
- } | {
313
- provider: "redis";
314
- host: string;
315
- port: number;
316
- db: number;
317
- tls: boolean;
318
- keyPrefix: string;
319
- defaultTtlMs: number;
320
- password?: string | undefined;
321
- } | {
322
- provider: "vercel-kv";
323
- keyPrefix: string;
324
- defaultTtlMs: number;
325
- url?: string | undefined;
326
- token?: string | undefined;
327
- } | undefined;
328
- keyPrefix?: string | undefined;
329
- } | undefined;
330
- } | undefined;
331
- loader?: {
332
- url?: string | undefined;
333
- registryUrl?: string | undefined;
334
- token?: string | undefined;
335
- tokenEnvVar?: string | undefined;
336
- } | undefined;
337
- throttle?: {
338
- enabled: boolean;
339
- keyPrefix: string;
340
- storage?: {
341
- [x: string]: unknown;
342
- } | undefined;
343
- global?: {
344
- maxRequests: number;
345
- windowMs: number;
346
- partitionBy: "session" | "global" | ((ctx: {
347
- sessionId: string;
348
- clientIp?: string;
349
- userId?: string;
350
- }) => string) | "ip" | "userId";
351
- } | undefined;
352
- globalConcurrency?: {
353
- maxConcurrent: number;
354
- queueTimeoutMs: number;
355
- partitionBy: "session" | "global" | "ip" | "userId" | ((ctx: {
356
- sessionId: string;
357
- clientIp?: string;
358
- userId?: string;
359
- }) => string);
360
- } | undefined;
361
- defaultRateLimit?: {
362
- maxRequests: number;
363
- windowMs: number;
364
- partitionBy: "session" | "global" | "ip" | "userId" | ((ctx: {
365
- sessionId: string;
366
- clientIp?: string;
367
- userId?: string;
368
- }) => string);
369
- } | undefined;
370
- defaultConcurrency?: {
371
- maxConcurrent: number;
372
- queueTimeoutMs: number;
373
- partitionBy: "session" | "global" | "ip" | "userId" | ((ctx: {
374
- sessionId: string;
375
- clientIp?: string;
376
- userId?: string;
377
- }) => string);
378
- } | undefined;
379
- defaultTimeout?: {
380
- executeMs: number;
381
- } | undefined;
382
- ipFilter?: {
383
- defaultAction: "allow" | "deny";
384
- trustProxy: boolean;
385
- trustedProxyDepth: number;
386
- allowList?: string[] | undefined;
387
- denyList?: string[] | undefined;
388
- } | undefined;
389
- } | undefined;
390
- observability?: boolean | {
391
- tracing?: boolean | {
392
- [x: string]: unknown;
393
- } | undefined;
394
- logging?: boolean | {
395
- [x: string]: unknown;
396
- } | undefined;
397
- requestLogs?: boolean | {
398
- [x: string]: unknown;
399
- } | undefined;
400
- } | undefined;
401
- health?: {
402
- enabled: boolean;
403
- healthzPath: string;
404
- readyzPath: string;
405
- probes: any[];
406
- includeDetails?: boolean | undefined;
407
- readyz?: {
408
- timeoutMs: number;
409
- enabled?: boolean | undefined;
410
- } | undefined;
411
- } | undefined;
412
- metrics?: {
413
- enabled: boolean;
414
- path: string;
415
- format: "json" | "prometheus";
416
- auth: "token" | "public" | {
417
- token: string;
418
- };
419
- tokenEnv: string;
420
- include?: ("auth" | "http" | "tools" | "resources" | "skills" | "process" | "storage" | "sessions")[] | undefined;
421
- process?: {
422
- eventLoopLag?: boolean | undefined;
423
- fdCount?: boolean | undefined;
424
- activeHandles?: boolean | undefined;
425
- } | undefined;
426
- } | undefined;
427
- channels?: {
428
- enabled: boolean;
429
- defaultMeta?: Record<string, string> | undefined;
430
- } | undefined;
431
- authorities?: {
432
- claimsMapping?: Record<string, string | undefined> | undefined;
433
- profiles?: Record<string, {
434
- [x: string]: unknown;
435
- }> | undefined;
436
- relationshipResolver?: any;
437
- evaluators?: Record<string, any> | undefined;
438
- claimsResolver?: any;
439
- scopeMapping?: {
440
- roles?: Record<string, string[]> | undefined;
441
- permissions?: Record<string, string[]> | undefined;
442
- profiles?: Record<string, string[]> | undefined;
443
- } | undefined;
444
- pipes?: any[] | undefined;
445
- } | undefined;
446
- tasks?: {
447
- enabled?: boolean | undefined;
448
- redis?: {
449
- provider: "redis";
450
- host: string;
451
- port: number;
452
- db: number;
453
- tls: boolean;
454
- keyPrefix: string;
455
- defaultTtlMs: number;
456
- password?: string | undefined;
457
- } | {
458
- provider: "redis";
459
- host: string;
460
- port: number;
461
- db: number;
462
- tls: boolean;
463
- keyPrefix: string;
464
- defaultTtlMs: number;
465
- password?: string | undefined;
466
- } | {
467
- provider: "vercel-kv";
468
- keyPrefix: string;
469
- defaultTtlMs: number;
470
- url?: string | undefined;
471
- token?: string | undefined;
472
- } | undefined;
473
- keyPrefix?: string | undefined;
474
- defaultTtlMs?: number | undefined;
475
- maxTtlMs?: number | undefined;
476
- defaultPollIntervalMs?: number | undefined;
477
- maxConcurrentPerSession?: number | undefined;
478
- strict?: boolean | undefined;
479
- runner?: "in-process" | "cli" | undefined;
480
- sqlite?: {
481
- path: string;
482
- encryption?: {
483
- secret: string;
484
- } | undefined;
485
- walMode?: boolean | undefined;
486
- ttlCleanupIntervalMs?: number | undefined;
487
- } | undefined;
488
- cliRunnerCommand?: {
489
- exe: string;
490
- args?: string[] | undefined;
491
- } | undefined;
492
- } | undefined;
493
- auth?: {
494
- mode: "public";
495
- sessionTtl: number;
496
- anonymousScopes: string[];
497
- issuer?: string | undefined;
498
- publicAccess?: {
499
- tools: string[] | "all";
500
- prompts: string[] | "all";
501
- rateLimit: number;
502
- } | undefined;
503
- jwks?: {
504
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
505
- } | undefined;
506
- signKey?: Uint8Array<ArrayBuffer> | import("libs/auth/dist/common/jwt.types").JWK | undefined;
507
- } | {
508
- requiredScopes: string[];
509
- allowAnonymous: boolean;
510
- anonymousScopes: string[];
511
- provider: string;
512
- mode: "transparent";
513
- expectedAudience?: string | string[] | undefined;
514
- requireAudience?: boolean | undefined;
515
- publicAccess?: {
516
- tools: string[] | "all";
517
- prompts: string[] | "all";
518
- rateLimit: number;
519
- } | undefined;
520
- clientId?: string | undefined;
521
- clientSecret?: string | undefined;
522
- scopes?: string[] | undefined;
523
- providerConfig?: {
524
- dcrEnabled: boolean;
525
- name?: string | undefined;
526
- id?: string | undefined;
527
- jwks?: {
528
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
529
- } | undefined;
530
- jwksUri?: string | undefined;
531
- additionalIssuers?: string[] | undefined;
532
- verifyIssuer?: boolean | undefined;
533
- authEndpoint?: string | undefined;
534
- tokenEndpoint?: string | undefined;
535
- registrationEndpoint?: string | undefined;
536
- userInfoEndpoint?: string | undefined;
537
- } | undefined;
538
- } | {
539
- requireEmail: boolean;
540
- anonymousSubject: string;
541
- tokenStorage: "memory" | {
542
- redis: {
543
- host: string;
544
- port: number;
545
- db: number;
546
- tls: boolean;
547
- keyPrefix: string;
548
- defaultTtlMs: number;
549
- password?: string | undefined;
550
- };
551
- } | {
552
- sqlite: {
553
- path: string;
554
- encryption?: {
555
- secret: string;
556
- } | undefined;
557
- ttlCleanupIntervalMs?: number | undefined;
558
- walMode?: boolean | undefined;
559
- };
560
- };
561
- allowDefaultPublic: boolean;
562
- anonymousScopes: string[];
563
- requireRegisteredClients: boolean;
564
- mode: "local";
565
- login?: {
566
- title?: string | undefined;
567
- subtitle?: string | undefined;
568
- logoUri?: string | undefined;
569
- fields?: Record<string, {
570
- type: "text" | "email" | "password" | "select" | "hidden";
571
- label?: string | undefined;
572
- required?: boolean | undefined;
573
- placeholder?: string | undefined;
574
- options?: {
575
- value: string;
576
- label: string;
577
- }[] | undefined;
578
- }> | undefined;
579
- render?: ((ctx: import("libs/auth/dist/options/interfaces").LoginRenderContext) => string) | undefined;
580
- subject?: {
581
- fromField?: string | undefined;
582
- strategy?: "per-session" | "per-account" | undefined;
583
- } | undefined;
584
- } | undefined;
585
- authenticate?: import("libs/auth/dist/options/interfaces").AuthenticateFn | undefined;
586
- providers?: {
587
- id: string;
588
- clientId: string;
589
- name?: string | undefined;
590
- authorizationEndpoint?: string | undefined;
591
- authorizeUrl?: string | undefined;
592
- tokenEndpoint?: string | undefined;
593
- tokenUrl?: string | undefined;
594
- clientSecret?: string | undefined;
595
- scopes?: string[] | undefined;
596
- userInfoEndpoint?: string | undefined;
597
- jwksUri?: string | undefined;
598
- }[] | undefined;
599
- dcr?: {
600
- enabled?: boolean | undefined;
601
- allowedRedirectUris?: string[] | undefined;
602
- allowedClientIds?: string[] | undefined;
603
- initialAccessToken?: string | undefined;
604
- clients?: {
605
- clientId: string;
606
- redirectUris: string[];
607
- tokenEndpointAuthMethod: "none" | "client_secret_basic" | "client_secret_post";
608
- grantTypes: ("authorization_code" | "refresh_token")[];
609
- responseTypes: "code"[];
610
- clientSecret?: string | undefined;
611
- clientName?: string | undefined;
612
- scope?: string | undefined;
613
- }[] | undefined;
614
- maxDynamicClients?: number | undefined;
615
- } | undefined;
616
- local?: {
617
- signKey?: Uint8Array<ArrayBuffer> | import("libs/auth/dist/common/jwt.types").JWK | undefined;
618
- jwks?: {
619
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
620
- } | undefined;
621
- issuer?: string | undefined;
622
- } | undefined;
623
- secureStore?: "memory" | {
624
- sqlite: {
625
- path: string;
626
- encryption?: {
627
- secret: string;
628
- } | undefined;
629
- ttlCleanupIntervalMs?: number | undefined;
630
- walMode?: boolean | undefined;
631
- };
632
- scope?: "user" | "session" | "global" | undefined;
633
- ttlMs?: number | undefined;
634
- encryption?: {
635
- pepper?: string | undefined;
636
- } | undefined;
637
- } | {
638
- redis: {
639
- host: string;
640
- port: number;
641
- db: number;
642
- tls: boolean;
643
- keyPrefix: string;
644
- defaultTtlMs: number;
645
- password?: string | undefined;
646
- };
647
- scope?: "user" | "session" | "global" | undefined;
648
- ttlMs?: number | undefined;
649
- encryption?: {
650
- pepper?: string | undefined;
651
- } | undefined;
652
- } | {
653
- backend: import("libs/auth/dist/options/interfaces").SecureStoreCustomBackend;
654
- scope?: "user" | "session" | "global" | undefined;
655
- ttlMs?: number | undefined;
656
- encryption?: {
657
- pepper?: string | undefined;
658
- } | undefined;
659
- } | {
660
- scope?: "user" | "session" | "global" | undefined;
661
- ttlMs?: number | undefined;
662
- encryption?: {
663
- pepper?: string | undefined;
664
- } | undefined;
665
- } | undefined;
666
- publicAccess?: {
667
- tools: string[] | "all";
668
- prompts: string[] | "all";
669
- rateLimit: number;
670
- } | undefined;
671
- consent?: {
672
- enabled: boolean;
673
- groupByApp: boolean;
674
- showDescriptions: boolean;
675
- allowSelectAll: boolean;
676
- requireSelection: boolean;
677
- rememberConsent: boolean;
678
- customMessage?: string | undefined;
679
- excludedTools?: string[] | undefined;
680
- defaultSelectedTools?: string[] | undefined;
681
- } | undefined;
682
- federatedAuth?: {
683
- stateValidation: "format" | "strict";
684
- minProviders?: number | undefined;
685
- requiredProviders?: string[] | undefined;
686
- } | undefined;
687
- refresh?: {
688
- enabled: boolean;
689
- skewSeconds: number;
690
- } | undefined;
691
- expectedAudience?: string | string[] | undefined;
692
- incrementalAuth?: {
693
- enabled: boolean;
694
- skippedAppBehavior: "anonymous" | "require-auth";
695
- allowSkip: boolean;
696
- showAllAppsAtOnce: boolean;
697
- } | undefined;
698
- cimd?: {
699
- enabled: boolean;
700
- cache?: {
701
- type: "redis" | "memory";
702
- defaultTtlMs: number;
703
- maxTtlMs: number;
704
- minTtlMs: number;
705
- redis?: {
706
- keyPrefix: string;
707
- url?: string | undefined;
708
- host?: string | undefined;
709
- port?: number | undefined;
710
- password?: string | undefined;
711
- db?: number | undefined;
712
- tls?: boolean | undefined;
713
- } | undefined;
714
- } | undefined;
715
- security?: {
716
- blockPrivateIPs: boolean;
717
- warnOnLocalhostRedirects: boolean;
718
- allowInsecureForTesting: boolean;
719
- allowedDomains?: string[] | undefined;
720
- blockedDomains?: string[] | undefined;
721
- } | undefined;
722
- network?: {
723
- timeoutMs: number;
724
- maxResponseSizeBytes: number;
725
- redirectPolicy: "allow" | "deny" | "same-origin";
726
- maxRedirects: number;
727
- } | undefined;
728
- } | undefined;
729
- ui?: Partial<Record<"error" | "login" | "consent" | "incremental" | "federated", string>> | undefined;
730
- extras?: Record<string, import("libs/auth/dist/options/interfaces").AuthExtraHandler> | undefined;
731
- } | {
732
- tokenStorage: "memory" | {
733
- redis: {
734
- host: string;
735
- port: number;
736
- db: number;
737
- tls: boolean;
738
- keyPrefix: string;
739
- defaultTtlMs: number;
740
- password?: string | undefined;
741
- };
742
- } | {
743
- sqlite: {
744
- path: string;
745
- encryption?: {
746
- secret: string;
747
- } | undefined;
748
- ttlCleanupIntervalMs?: number | undefined;
749
- walMode?: boolean | undefined;
750
- };
751
- };
752
- allowDefaultPublic: boolean;
753
- anonymousScopes: string[];
754
- requireRegisteredClients: boolean;
755
- provider: string;
756
- mode: "remote";
757
- local?: {
758
- signKey?: Uint8Array<ArrayBuffer> | import("libs/auth/dist/common/jwt.types").JWK | undefined;
759
- jwks?: {
760
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
761
- } | undefined;
762
- issuer?: string | undefined;
763
- } | undefined;
764
- secureStore?: "memory" | {
765
- sqlite: {
766
- path: string;
767
- encryption?: {
768
- secret: string;
769
- } | undefined;
770
- ttlCleanupIntervalMs?: number | undefined;
771
- walMode?: boolean | undefined;
772
- };
773
- scope?: "user" | "session" | "global" | undefined;
774
- ttlMs?: number | undefined;
775
- encryption?: {
776
- pepper?: string | undefined;
777
- } | undefined;
778
- } | {
779
- redis: {
780
- host: string;
781
- port: number;
782
- db: number;
783
- tls: boolean;
784
- keyPrefix: string;
785
- defaultTtlMs: number;
786
- password?: string | undefined;
787
- };
788
- scope?: "user" | "session" | "global" | undefined;
789
- ttlMs?: number | undefined;
790
- encryption?: {
791
- pepper?: string | undefined;
792
- } | undefined;
793
- } | {
794
- backend: import("libs/auth/dist/options/interfaces").SecureStoreCustomBackend;
795
- scope?: "user" | "session" | "global" | undefined;
796
- ttlMs?: number | undefined;
797
- encryption?: {
798
- pepper?: string | undefined;
799
- } | undefined;
800
- } | {
801
- scope?: "user" | "session" | "global" | undefined;
802
- ttlMs?: number | undefined;
803
- encryption?: {
804
- pepper?: string | undefined;
805
- } | undefined;
806
- } | undefined;
807
- publicAccess?: {
808
- tools: string[] | "all";
809
- prompts: string[] | "all";
810
- rateLimit: number;
811
- } | undefined;
812
- consent?: {
813
- enabled: boolean;
814
- groupByApp: boolean;
815
- showDescriptions: boolean;
816
- allowSelectAll: boolean;
817
- requireSelection: boolean;
818
- rememberConsent: boolean;
819
- customMessage?: string | undefined;
820
- excludedTools?: string[] | undefined;
821
- defaultSelectedTools?: string[] | undefined;
822
- } | undefined;
823
- federatedAuth?: {
824
- stateValidation: "format" | "strict";
825
- minProviders?: number | undefined;
826
- requiredProviders?: string[] | undefined;
827
- } | undefined;
828
- refresh?: {
829
- enabled: boolean;
830
- skewSeconds: number;
831
- } | undefined;
832
- expectedAudience?: string | string[] | undefined;
833
- incrementalAuth?: {
834
- enabled: boolean;
835
- skippedAppBehavior: "anonymous" | "require-auth";
836
- allowSkip: boolean;
837
- showAllAppsAtOnce: boolean;
838
- } | undefined;
839
- cimd?: {
840
- enabled: boolean;
841
- cache?: {
842
- type: "redis" | "memory";
843
- defaultTtlMs: number;
844
- maxTtlMs: number;
845
- minTtlMs: number;
846
- redis?: {
847
- keyPrefix: string;
848
- url?: string | undefined;
849
- host?: string | undefined;
850
- port?: number | undefined;
851
- password?: string | undefined;
852
- db?: number | undefined;
853
- tls?: boolean | undefined;
854
- } | undefined;
855
- } | undefined;
856
- security?: {
857
- blockPrivateIPs: boolean;
858
- warnOnLocalhostRedirects: boolean;
859
- allowInsecureForTesting: boolean;
860
- allowedDomains?: string[] | undefined;
861
- blockedDomains?: string[] | undefined;
862
- } | undefined;
863
- network?: {
864
- timeoutMs: number;
865
- maxResponseSizeBytes: number;
866
- redirectPolicy: "allow" | "deny" | "same-origin";
867
- maxRedirects: number;
868
- } | undefined;
869
- } | undefined;
870
- ui?: Partial<Record<"error" | "login" | "consent" | "incremental" | "federated", string>> | undefined;
871
- extras?: Record<string, import("libs/auth/dist/options/interfaces").AuthExtraHandler> | undefined;
872
- clientId?: string | undefined;
873
- clientSecret?: string | undefined;
874
- scopes?: string[] | undefined;
875
- providerConfig?: {
876
- dcrEnabled: boolean;
877
- name?: string | undefined;
878
- id?: string | undefined;
879
- jwks?: {
880
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
881
- } | undefined;
882
- jwksUri?: string | undefined;
883
- additionalIssuers?: string[] | undefined;
884
- verifyIssuer?: boolean | undefined;
885
- authEndpoint?: string | undefined;
886
- tokenEndpoint?: string | undefined;
887
- registrationEndpoint?: string | undefined;
888
- userInfoEndpoint?: string | undefined;
889
- } | undefined;
890
- } | undefined;
891
- } | {
892
- info: {
893
- name: string;
894
- version: string;
895
- title?: string | undefined;
896
- websiteUrl?: string | undefined;
897
- icons?: {
898
- src: string;
899
- mimeType?: string | undefined;
900
- sizes?: string[] | undefined;
901
- theme?: "light" | "dark" | undefined;
902
- }[] | undefined;
903
- };
904
- providers: import("@frontmcp/di").Type<unknown>[];
905
- tools: (string | import("@frontmcp/di").Type<unknown>)[];
906
- resources: import("@frontmcp/di").Type<unknown>[];
907
- skills: import("@frontmcp/di").Type<unknown>[];
908
- plugins: import("@frontmcp/di").Type<unknown>[];
909
- apps: import("@frontmcp/di").Type<unknown>[];
910
- serve: boolean;
911
- transport: {
912
- sessionMode: "stateful" | "stateless" | import("zod/v4/core").$InferOuterFunctionType<import("zod/v4/core").$ZodFunctionArgs, import("zod/v4/core").$ZodFunctionOut>;
913
- protocol: "modern" | "legacy" | "stateless-api" | "full" | {
914
- sse?: boolean | undefined;
915
- streamable?: boolean | undefined;
916
- json?: boolean | undefined;
917
- stateless?: boolean | undefined;
918
- legacy?: boolean | undefined;
919
- strictSession?: boolean | undefined;
920
- };
921
- distributedMode: boolean | "auto";
922
- platformDetection?: {
923
- customOnly: boolean;
924
- mappings?: {
925
- pattern: string | RegExp;
926
- platform: "unknown" | "continue" | "openai" | "claude" | "gemini" | "cursor" | "cody" | "generic-mcp" | "ext-apps";
927
- }[] | undefined;
928
- } | undefined;
929
- defaultProtocolVersion?: "legacy" | "2026-07-28" | undefined;
930
- persistence?: false | {
931
- defaultTtlMs: number;
932
- redis?: {
933
- provider: "redis";
934
- host: string;
935
- port: number;
936
- db: number;
937
- tls: boolean;
938
- keyPrefix: string;
939
- defaultTtlMs: number;
940
- password?: string | undefined;
941
- } | {
942
- provider: "redis";
943
- host: string;
944
- port: number;
945
- db: number;
946
- tls: boolean;
947
- keyPrefix: string;
948
- defaultTtlMs: number;
949
- password?: string | undefined;
950
- } | {
951
- provider: "vercel-kv";
952
- keyPrefix: string;
953
- defaultTtlMs: number;
954
- url?: string | undefined;
955
- token?: string | undefined;
956
- } | undefined;
957
- sqlite?: {
958
- ttlCleanupIntervalMs: number;
959
- walMode: boolean;
960
- path?: string | undefined;
961
- encryption?: {
962
- secret: string;
963
- } | undefined;
964
- } | undefined;
965
- } | undefined;
966
- providerCaching?: boolean | undefined;
967
- eventStore?: {
968
- enabled: boolean;
969
- provider: "redis" | "sqlite" | "memory";
970
- maxEvents: number;
971
- ttlMs: number;
972
- redis?: {
973
- provider: "redis";
974
- host: string;
975
- port: number;
976
- db: number;
977
- tls: boolean;
978
- keyPrefix: string;
979
- defaultTtlMs: number;
980
- password?: string | undefined;
981
- } | {
982
- provider: "redis";
983
- host: string;
984
- port: number;
985
- db: number;
986
- tls: boolean;
987
- keyPrefix: string;
988
- defaultTtlMs: number;
989
- password?: string | undefined;
990
- } | {
991
- provider: "vercel-kv";
992
- keyPrefix: string;
993
- defaultTtlMs: number;
994
- url?: string | undefined;
995
- token?: string | undefined;
996
- } | undefined;
997
- } | undefined;
998
- };
999
- splitByApp: true;
1000
- __sourceDir?: string | undefined;
1001
- instructions?: string | undefined;
1002
- http?: {
1003
- port: number;
1004
- entryPath: string;
1005
- bodyLimit: string | number;
1006
- hostFactory?: any;
1007
- socketPath?: string | undefined;
1008
- cors?: false | {
1009
- origin?: string | boolean | string[] | ((origin: string | undefined, callback: (err: Error | null, allow?: boolean) => void) => void) | undefined;
1010
- credentials?: boolean | undefined;
1011
- maxAge?: number | undefined;
1012
- } | undefined;
1013
- security?: {
1014
- strict?: boolean | undefined;
1015
- bindAddress?: string | undefined;
1016
- dnsRebindingProtection?: {
1017
- enabled?: boolean | undefined;
1018
- allowedHosts?: string[] | undefined;
1019
- allowedOrigins?: string[] | undefined;
1020
- } | undefined;
1021
- } | undefined;
1022
- urlencodedLimit?: string | number | undefined;
1023
- routes?: {
1024
- method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS" | "HEAD";
1025
- path: string;
1026
- handler: import("../common").ServerRequestHandler;
1027
- auth?: boolean | undefined;
1028
- }[] | undefined;
1029
- } | undefined;
1030
- redis?: {
1031
- provider: "redis";
1032
- host: string;
1033
- port: number;
1034
- db: number;
1035
- tls: boolean;
1036
- keyPrefix: string;
1037
- defaultTtlMs: number;
1038
- password?: string | undefined;
1039
- } | {
1040
- provider: "redis";
1041
- host: string;
1042
- port: number;
1043
- db: number;
1044
- tls: boolean;
1045
- keyPrefix: string;
1046
- defaultTtlMs: number;
1047
- password?: string | undefined;
1048
- } | {
1049
- provider: "vercel-kv";
1050
- keyPrefix: string;
1051
- defaultTtlMs: number;
1052
- url?: string | undefined;
1053
- token?: string | undefined;
1054
- } | undefined;
1055
- pubsub?: {
1056
- provider: "redis";
1057
- host: string;
1058
- port: number;
1059
- db: number;
1060
- tls: boolean;
1061
- keyPrefix: string;
1062
- defaultTtlMs: number;
1063
- password?: string | undefined;
1064
- } | {
1065
- provider: "redis";
1066
- host: string;
1067
- port: number;
1068
- db: number;
1069
- tls: boolean;
1070
- keyPrefix: string;
1071
- defaultTtlMs: number;
1072
- password?: string | undefined;
1073
- } | undefined;
1074
- logging?: {
1075
- level: import("../common").LogLevel;
1076
- enableConsole: boolean;
1077
- transports: import("@frontmcp/di").Type<unknown>[];
1078
- prefix?: string | undefined;
1079
- } | undefined;
1080
- pagination?: {
1081
- tools?: {
1082
- mode: boolean | "auto";
1083
- pageSize: number;
1084
- autoThreshold: number;
1085
- } | undefined;
1086
- } | undefined;
1087
- elicitation?: {
1088
- enabled: boolean;
1089
- redis?: {
1090
- provider: "redis";
1091
- host: string;
1092
- port: number;
1093
- db: number;
1094
- tls: boolean;
1095
- keyPrefix: string;
1096
- defaultTtlMs: number;
1097
- password?: string | undefined;
1098
- } | {
1099
- provider: "redis";
1100
- host: string;
1101
- port: number;
1102
- db: number;
1103
- tls: boolean;
1104
- keyPrefix: string;
1105
- defaultTtlMs: number;
1106
- password?: string | undefined;
1107
- } | {
1108
- provider: "vercel-kv";
1109
- keyPrefix: string;
1110
- defaultTtlMs: number;
1111
- url?: string | undefined;
1112
- token?: string | undefined;
1113
- } | undefined;
1114
- } | undefined;
1115
- skillsConfig?: {
1116
- enabled: boolean;
1117
- auth: "inherit" | "public" | "api-key" | "bearer";
1118
- llmTxt: boolean | {
1119
- enabled: boolean;
1120
- path?: string | undefined;
1121
- };
1122
- llmFullTxt: boolean | {
1123
- enabled: boolean;
1124
- path?: string | undefined;
1125
- };
1126
- api: boolean | {
1127
- enabled: boolean;
1128
- path?: string | undefined;
1129
- };
1130
- mcpResources: boolean;
1131
- sep2640InInstructions: boolean;
1132
- injectInstructions: "replace" | "off" | "append" | "prepend";
1133
- prefix?: string | undefined;
1134
- apiKeys?: string[] | undefined;
1135
- jwt?: {
1136
- issuer: string;
1137
- audience?: string | undefined;
1138
- jwksUrl?: string | undefined;
1139
- } | undefined;
1140
- cache?: {
1141
- enabled: boolean;
1142
- ttlMs: number;
1143
- redis?: {
1144
- provider: "redis" | "vercel-kv" | "@vercel/kv";
1145
- host?: string | undefined;
1146
- port?: number | undefined;
1147
- password?: string | undefined;
1148
- db?: number | undefined;
1149
- } | undefined;
1150
- keyPrefix?: string | undefined;
1151
- } | undefined;
1152
- audit?: {
1153
- enabled: boolean;
1154
- signer?: unknown;
1155
- store?: unknown;
1156
- subjectMode?: "plain" | "hash" | "omit" | undefined;
1157
- headAnchorIntervalMs?: number | undefined;
1158
- } | undefined;
1159
- scoring?: "cosine" | "bm25" | undefined;
1160
- } | undefined;
1161
- extApps?: {
1162
- enabled: boolean;
1163
- hostCapabilities?: {
1164
- serverToolProxy?: boolean | undefined;
1165
- openLink?: boolean | undefined;
1166
- modelContextUpdate?: boolean | undefined;
1167
- widgetTools?: boolean | undefined;
1168
- displayModes?: ("inline" | "fullscreen" | "pip")[] | undefined;
1169
- logging?: boolean | undefined;
1170
- } | undefined;
1171
- } | undefined;
1172
- sqlite?: {
1173
- ttlCleanupIntervalMs: number;
1174
- walMode: boolean;
1175
- path?: string | undefined;
1176
- encryption?: {
1177
- secret: string;
1178
- } | undefined;
1179
- } | undefined;
1180
- ui?: {
1181
- cdnOverrides?: Record<string, string> | undefined;
1182
- } | undefined;
1183
- output?: {
1184
- allowNonFinite?: boolean | undefined;
1185
- schemaMode?: "description" | "definition" | "both" | "none" | undefined;
1186
- schemaDescriptionFormat?: "summary" | "jsonSchema" | undefined;
1187
- } | undefined;
1188
- jobs?: {
1189
- enabled: boolean;
1190
- store?: {
1191
- redis?: {
1192
- provider: "redis";
1193
- host: string;
1194
- port: number;
1195
- db: number;
1196
- tls: boolean;
1197
- keyPrefix: string;
1198
- defaultTtlMs: number;
1199
- password?: string | undefined;
1200
- } | {
1201
- provider: "redis";
1202
- host: string;
1203
- port: number;
1204
- db: number;
1205
- tls: boolean;
1206
- keyPrefix: string;
1207
- defaultTtlMs: number;
1208
- password?: string | undefined;
1209
- } | {
1210
- provider: "vercel-kv";
1211
- keyPrefix: string;
1212
- defaultTtlMs: number;
1213
- url?: string | undefined;
1214
- token?: string | undefined;
1215
- } | undefined;
1216
- keyPrefix?: string | undefined;
1217
- } | undefined;
1218
- } | undefined;
1219
- loader?: {
1220
- url?: string | undefined;
1221
- registryUrl?: string | undefined;
1222
- token?: string | undefined;
1223
- tokenEnvVar?: string | undefined;
1224
- } | undefined;
1225
- throttle?: {
1226
- enabled: boolean;
1227
- keyPrefix: string;
1228
- storage?: {
1229
- [x: string]: unknown;
1230
- } | undefined;
1231
- global?: {
1232
- maxRequests: number;
1233
- windowMs: number;
1234
- partitionBy: "session" | "global" | ((ctx: {
1235
- sessionId: string;
1236
- clientIp?: string;
1237
- userId?: string;
1238
- }) => string) | "ip" | "userId";
1239
- } | undefined;
1240
- globalConcurrency?: {
1241
- maxConcurrent: number;
1242
- queueTimeoutMs: number;
1243
- partitionBy: "session" | "global" | "ip" | "userId" | ((ctx: {
1244
- sessionId: string;
1245
- clientIp?: string;
1246
- userId?: string;
1247
- }) => string);
1248
- } | undefined;
1249
- defaultRateLimit?: {
1250
- maxRequests: number;
1251
- windowMs: number;
1252
- partitionBy: "session" | "global" | "ip" | "userId" | ((ctx: {
1253
- sessionId: string;
1254
- clientIp?: string;
1255
- userId?: string;
1256
- }) => string);
1257
- } | undefined;
1258
- defaultConcurrency?: {
1259
- maxConcurrent: number;
1260
- queueTimeoutMs: number;
1261
- partitionBy: "session" | "global" | "ip" | "userId" | ((ctx: {
1262
- sessionId: string;
1263
- clientIp?: string;
1264
- userId?: string;
1265
- }) => string);
1266
- } | undefined;
1267
- defaultTimeout?: {
1268
- executeMs: number;
1269
- } | undefined;
1270
- ipFilter?: {
1271
- defaultAction: "allow" | "deny";
1272
- trustProxy: boolean;
1273
- trustedProxyDepth: number;
1274
- allowList?: string[] | undefined;
1275
- denyList?: string[] | undefined;
1276
- } | undefined;
1277
- } | undefined;
1278
- observability?: boolean | {
1279
- tracing?: boolean | {
1280
- [x: string]: unknown;
1281
- } | undefined;
1282
- logging?: boolean | {
1283
- [x: string]: unknown;
1284
- } | undefined;
1285
- requestLogs?: boolean | {
1286
- [x: string]: unknown;
1287
- } | undefined;
1288
- } | undefined;
1289
- health?: {
1290
- enabled: boolean;
1291
- healthzPath: string;
1292
- readyzPath: string;
1293
- probes: any[];
1294
- includeDetails?: boolean | undefined;
1295
- readyz?: {
1296
- timeoutMs: number;
1297
- enabled?: boolean | undefined;
1298
- } | undefined;
1299
- } | undefined;
1300
- metrics?: {
1301
- enabled: boolean;
1302
- path: string;
1303
- format: "json" | "prometheus";
1304
- auth: "token" | "public" | {
1305
- token: string;
1306
- };
1307
- tokenEnv: string;
1308
- include?: ("auth" | "http" | "tools" | "resources" | "skills" | "process" | "storage" | "sessions")[] | undefined;
1309
- process?: {
1310
- eventLoopLag?: boolean | undefined;
1311
- fdCount?: boolean | undefined;
1312
- activeHandles?: boolean | undefined;
1313
- } | undefined;
1314
- } | undefined;
1315
- channels?: {
1316
- enabled: boolean;
1317
- defaultMeta?: Record<string, string> | undefined;
1318
- } | undefined;
1319
- authorities?: {
1320
- claimsMapping?: Record<string, string | undefined> | undefined;
1321
- profiles?: Record<string, {
1322
- [x: string]: unknown;
1323
- }> | undefined;
1324
- relationshipResolver?: any;
1325
- evaluators?: Record<string, any> | undefined;
1326
- claimsResolver?: any;
1327
- scopeMapping?: {
1328
- roles?: Record<string, string[]> | undefined;
1329
- permissions?: Record<string, string[]> | undefined;
1330
- profiles?: Record<string, string[]> | undefined;
1331
- } | undefined;
1332
- pipes?: any[] | undefined;
1333
- } | undefined;
1334
- tasks?: {
1335
- enabled?: boolean | undefined;
1336
- redis?: {
1337
- provider: "redis";
1338
- host: string;
1339
- port: number;
1340
- db: number;
1341
- tls: boolean;
1342
- keyPrefix: string;
1343
- defaultTtlMs: number;
1344
- password?: string | undefined;
1345
- } | {
1346
- provider: "redis";
1347
- host: string;
1348
- port: number;
1349
- db: number;
1350
- tls: boolean;
1351
- keyPrefix: string;
1352
- defaultTtlMs: number;
1353
- password?: string | undefined;
1354
- } | {
1355
- provider: "vercel-kv";
1356
- keyPrefix: string;
1357
- defaultTtlMs: number;
1358
- url?: string | undefined;
1359
- token?: string | undefined;
1360
- } | undefined;
1361
- keyPrefix?: string | undefined;
1362
- defaultTtlMs?: number | undefined;
1363
- maxTtlMs?: number | undefined;
1364
- defaultPollIntervalMs?: number | undefined;
1365
- maxConcurrentPerSession?: number | undefined;
1366
- strict?: boolean | undefined;
1367
- runner?: "in-process" | "cli" | undefined;
1368
- sqlite?: {
1369
- path: string;
1370
- encryption?: {
1371
- secret: string;
1372
- } | undefined;
1373
- walMode?: boolean | undefined;
1374
- ttlCleanupIntervalMs?: number | undefined;
1375
- } | undefined;
1376
- cliRunnerCommand?: {
1377
- exe: string;
1378
- args?: string[] | undefined;
1379
- } | undefined;
1380
- } | undefined;
1381
- auth?: {
1382
- mode: "public";
1383
- sessionTtl: number;
1384
- anonymousScopes: string[];
1385
- issuer?: string | undefined;
1386
- publicAccess?: {
1387
- tools: string[] | "all";
1388
- prompts: string[] | "all";
1389
- rateLimit: number;
1390
- } | undefined;
1391
- jwks?: {
1392
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
1393
- } | undefined;
1394
- signKey?: Uint8Array<ArrayBuffer> | import("libs/auth/dist/common/jwt.types").JWK | undefined;
1395
- } | {
1396
- requiredScopes: string[];
1397
- allowAnonymous: boolean;
1398
- anonymousScopes: string[];
1399
- provider: string;
1400
- mode: "transparent";
1401
- expectedAudience?: string | string[] | undefined;
1402
- requireAudience?: boolean | undefined;
1403
- publicAccess?: {
1404
- tools: string[] | "all";
1405
- prompts: string[] | "all";
1406
- rateLimit: number;
1407
- } | undefined;
1408
- clientId?: string | undefined;
1409
- clientSecret?: string | undefined;
1410
- scopes?: string[] | undefined;
1411
- providerConfig?: {
1412
- dcrEnabled: boolean;
1413
- name?: string | undefined;
1414
- id?: string | undefined;
1415
- jwks?: {
1416
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
1417
- } | undefined;
1418
- jwksUri?: string | undefined;
1419
- additionalIssuers?: string[] | undefined;
1420
- verifyIssuer?: boolean | undefined;
1421
- authEndpoint?: string | undefined;
1422
- tokenEndpoint?: string | undefined;
1423
- registrationEndpoint?: string | undefined;
1424
- userInfoEndpoint?: string | undefined;
1425
- } | undefined;
1426
- } | {
1427
- requireEmail: boolean;
1428
- anonymousSubject: string;
1429
- tokenStorage: "memory" | {
1430
- redis: {
1431
- host: string;
1432
- port: number;
1433
- db: number;
1434
- tls: boolean;
1435
- keyPrefix: string;
1436
- defaultTtlMs: number;
1437
- password?: string | undefined;
1438
- };
1439
- } | {
1440
- sqlite: {
1441
- path: string;
1442
- encryption?: {
1443
- secret: string;
1444
- } | undefined;
1445
- ttlCleanupIntervalMs?: number | undefined;
1446
- walMode?: boolean | undefined;
1447
- };
1448
- };
1449
- allowDefaultPublic: boolean;
1450
- anonymousScopes: string[];
1451
- requireRegisteredClients: boolean;
1452
- mode: "local";
1453
- login?: {
1454
- title?: string | undefined;
1455
- subtitle?: string | undefined;
1456
- logoUri?: string | undefined;
1457
- fields?: Record<string, {
1458
- type: "text" | "email" | "password" | "select" | "hidden";
1459
- label?: string | undefined;
1460
- required?: boolean | undefined;
1461
- placeholder?: string | undefined;
1462
- options?: {
1463
- value: string;
1464
- label: string;
1465
- }[] | undefined;
1466
- }> | undefined;
1467
- render?: ((ctx: import("libs/auth/dist/options/interfaces").LoginRenderContext) => string) | undefined;
1468
- subject?: {
1469
- fromField?: string | undefined;
1470
- strategy?: "per-session" | "per-account" | undefined;
1471
- } | undefined;
1472
- } | undefined;
1473
- authenticate?: import("libs/auth/dist/options/interfaces").AuthenticateFn | undefined;
1474
- providers?: {
1475
- id: string;
1476
- clientId: string;
1477
- name?: string | undefined;
1478
- authorizationEndpoint?: string | undefined;
1479
- authorizeUrl?: string | undefined;
1480
- tokenEndpoint?: string | undefined;
1481
- tokenUrl?: string | undefined;
1482
- clientSecret?: string | undefined;
1483
- scopes?: string[] | undefined;
1484
- userInfoEndpoint?: string | undefined;
1485
- jwksUri?: string | undefined;
1486
- }[] | undefined;
1487
- dcr?: {
1488
- enabled?: boolean | undefined;
1489
- allowedRedirectUris?: string[] | undefined;
1490
- allowedClientIds?: string[] | undefined;
1491
- initialAccessToken?: string | undefined;
1492
- clients?: {
1493
- clientId: string;
1494
- redirectUris: string[];
1495
- tokenEndpointAuthMethod: "none" | "client_secret_basic" | "client_secret_post";
1496
- grantTypes: ("authorization_code" | "refresh_token")[];
1497
- responseTypes: "code"[];
1498
- clientSecret?: string | undefined;
1499
- clientName?: string | undefined;
1500
- scope?: string | undefined;
1501
- }[] | undefined;
1502
- maxDynamicClients?: number | undefined;
1503
- } | undefined;
1504
- local?: {
1505
- signKey?: Uint8Array<ArrayBuffer> | import("libs/auth/dist/common/jwt.types").JWK | undefined;
1506
- jwks?: {
1507
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
1508
- } | undefined;
1509
- issuer?: string | undefined;
1510
- } | undefined;
1511
- secureStore?: "memory" | {
1512
- sqlite: {
1513
- path: string;
1514
- encryption?: {
1515
- secret: string;
1516
- } | undefined;
1517
- ttlCleanupIntervalMs?: number | undefined;
1518
- walMode?: boolean | undefined;
1519
- };
1520
- scope?: "user" | "session" | "global" | undefined;
1521
- ttlMs?: number | undefined;
1522
- encryption?: {
1523
- pepper?: string | undefined;
1524
- } | undefined;
1525
- } | {
1526
- redis: {
1527
- host: string;
1528
- port: number;
1529
- db: number;
1530
- tls: boolean;
1531
- keyPrefix: string;
1532
- defaultTtlMs: number;
1533
- password?: string | undefined;
1534
- };
1535
- scope?: "user" | "session" | "global" | undefined;
1536
- ttlMs?: number | undefined;
1537
- encryption?: {
1538
- pepper?: string | undefined;
1539
- } | undefined;
1540
- } | {
1541
- backend: import("libs/auth/dist/options/interfaces").SecureStoreCustomBackend;
1542
- scope?: "user" | "session" | "global" | undefined;
1543
- ttlMs?: number | undefined;
1544
- encryption?: {
1545
- pepper?: string | undefined;
1546
- } | undefined;
1547
- } | {
1548
- scope?: "user" | "session" | "global" | undefined;
1549
- ttlMs?: number | undefined;
1550
- encryption?: {
1551
- pepper?: string | undefined;
1552
- } | undefined;
1553
- } | undefined;
1554
- publicAccess?: {
1555
- tools: string[] | "all";
1556
- prompts: string[] | "all";
1557
- rateLimit: number;
1558
- } | undefined;
1559
- consent?: {
1560
- enabled: boolean;
1561
- groupByApp: boolean;
1562
- showDescriptions: boolean;
1563
- allowSelectAll: boolean;
1564
- requireSelection: boolean;
1565
- rememberConsent: boolean;
1566
- customMessage?: string | undefined;
1567
- excludedTools?: string[] | undefined;
1568
- defaultSelectedTools?: string[] | undefined;
1569
- } | undefined;
1570
- federatedAuth?: {
1571
- stateValidation: "format" | "strict";
1572
- minProviders?: number | undefined;
1573
- requiredProviders?: string[] | undefined;
1574
- } | undefined;
1575
- refresh?: {
1576
- enabled: boolean;
1577
- skewSeconds: number;
1578
- } | undefined;
1579
- expectedAudience?: string | string[] | undefined;
1580
- incrementalAuth?: {
1581
- enabled: boolean;
1582
- skippedAppBehavior: "anonymous" | "require-auth";
1583
- allowSkip: boolean;
1584
- showAllAppsAtOnce: boolean;
1585
- } | undefined;
1586
- cimd?: {
1587
- enabled: boolean;
1588
- cache?: {
1589
- type: "redis" | "memory";
1590
- defaultTtlMs: number;
1591
- maxTtlMs: number;
1592
- minTtlMs: number;
1593
- redis?: {
1594
- keyPrefix: string;
1595
- url?: string | undefined;
1596
- host?: string | undefined;
1597
- port?: number | undefined;
1598
- password?: string | undefined;
1599
- db?: number | undefined;
1600
- tls?: boolean | undefined;
1601
- } | undefined;
1602
- } | undefined;
1603
- security?: {
1604
- blockPrivateIPs: boolean;
1605
- warnOnLocalhostRedirects: boolean;
1606
- allowInsecureForTesting: boolean;
1607
- allowedDomains?: string[] | undefined;
1608
- blockedDomains?: string[] | undefined;
1609
- } | undefined;
1610
- network?: {
1611
- timeoutMs: number;
1612
- maxResponseSizeBytes: number;
1613
- redirectPolicy: "allow" | "deny" | "same-origin";
1614
- maxRedirects: number;
1615
- } | undefined;
1616
- } | undefined;
1617
- ui?: Partial<Record<"error" | "login" | "consent" | "incremental" | "federated", string>> | undefined;
1618
- extras?: Record<string, import("libs/auth/dist/options/interfaces").AuthExtraHandler> | undefined;
1619
- } | {
1620
- tokenStorage: "memory" | {
1621
- redis: {
1622
- host: string;
1623
- port: number;
1624
- db: number;
1625
- tls: boolean;
1626
- keyPrefix: string;
1627
- defaultTtlMs: number;
1628
- password?: string | undefined;
1629
- };
1630
- } | {
1631
- sqlite: {
1632
- path: string;
1633
- encryption?: {
1634
- secret: string;
1635
- } | undefined;
1636
- ttlCleanupIntervalMs?: number | undefined;
1637
- walMode?: boolean | undefined;
1638
- };
1639
- };
1640
- allowDefaultPublic: boolean;
1641
- anonymousScopes: string[];
1642
- requireRegisteredClients: boolean;
1643
- provider: string;
1644
- mode: "remote";
1645
- local?: {
1646
- signKey?: Uint8Array<ArrayBuffer> | import("libs/auth/dist/common/jwt.types").JWK | undefined;
1647
- jwks?: {
1648
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
1649
- } | undefined;
1650
- issuer?: string | undefined;
1651
- } | undefined;
1652
- secureStore?: "memory" | {
1653
- sqlite: {
1654
- path: string;
1655
- encryption?: {
1656
- secret: string;
1657
- } | undefined;
1658
- ttlCleanupIntervalMs?: number | undefined;
1659
- walMode?: boolean | undefined;
1660
- };
1661
- scope?: "user" | "session" | "global" | undefined;
1662
- ttlMs?: number | undefined;
1663
- encryption?: {
1664
- pepper?: string | undefined;
1665
- } | undefined;
1666
- } | {
1667
- redis: {
1668
- host: string;
1669
- port: number;
1670
- db: number;
1671
- tls: boolean;
1672
- keyPrefix: string;
1673
- defaultTtlMs: number;
1674
- password?: string | undefined;
1675
- };
1676
- scope?: "user" | "session" | "global" | undefined;
1677
- ttlMs?: number | undefined;
1678
- encryption?: {
1679
- pepper?: string | undefined;
1680
- } | undefined;
1681
- } | {
1682
- backend: import("libs/auth/dist/options/interfaces").SecureStoreCustomBackend;
1683
- scope?: "user" | "session" | "global" | undefined;
1684
- ttlMs?: number | undefined;
1685
- encryption?: {
1686
- pepper?: string | undefined;
1687
- } | undefined;
1688
- } | {
1689
- scope?: "user" | "session" | "global" | undefined;
1690
- ttlMs?: number | undefined;
1691
- encryption?: {
1692
- pepper?: string | undefined;
1693
- } | undefined;
1694
- } | undefined;
1695
- publicAccess?: {
1696
- tools: string[] | "all";
1697
- prompts: string[] | "all";
1698
- rateLimit: number;
1699
- } | undefined;
1700
- consent?: {
1701
- enabled: boolean;
1702
- groupByApp: boolean;
1703
- showDescriptions: boolean;
1704
- allowSelectAll: boolean;
1705
- requireSelection: boolean;
1706
- rememberConsent: boolean;
1707
- customMessage?: string | undefined;
1708
- excludedTools?: string[] | undefined;
1709
- defaultSelectedTools?: string[] | undefined;
1710
- } | undefined;
1711
- federatedAuth?: {
1712
- stateValidation: "format" | "strict";
1713
- minProviders?: number | undefined;
1714
- requiredProviders?: string[] | undefined;
1715
- } | undefined;
1716
- refresh?: {
1717
- enabled: boolean;
1718
- skewSeconds: number;
1719
- } | undefined;
1720
- expectedAudience?: string | string[] | undefined;
1721
- incrementalAuth?: {
1722
- enabled: boolean;
1723
- skippedAppBehavior: "anonymous" | "require-auth";
1724
- allowSkip: boolean;
1725
- showAllAppsAtOnce: boolean;
1726
- } | undefined;
1727
- cimd?: {
1728
- enabled: boolean;
1729
- cache?: {
1730
- type: "redis" | "memory";
1731
- defaultTtlMs: number;
1732
- maxTtlMs: number;
1733
- minTtlMs: number;
1734
- redis?: {
1735
- keyPrefix: string;
1736
- url?: string | undefined;
1737
- host?: string | undefined;
1738
- port?: number | undefined;
1739
- password?: string | undefined;
1740
- db?: number | undefined;
1741
- tls?: boolean | undefined;
1742
- } | undefined;
1743
- } | undefined;
1744
- security?: {
1745
- blockPrivateIPs: boolean;
1746
- warnOnLocalhostRedirects: boolean;
1747
- allowInsecureForTesting: boolean;
1748
- allowedDomains?: string[] | undefined;
1749
- blockedDomains?: string[] | undefined;
1750
- } | undefined;
1751
- network?: {
1752
- timeoutMs: number;
1753
- maxResponseSizeBytes: number;
1754
- redirectPolicy: "allow" | "deny" | "same-origin";
1755
- maxRedirects: number;
1756
- } | undefined;
1757
- } | undefined;
1758
- ui?: Partial<Record<"error" | "login" | "consent" | "incremental" | "federated", string>> | undefined;
1759
- extras?: Record<string, import("libs/auth/dist/options/interfaces").AuthExtraHandler> | undefined;
1760
- clientId?: string | undefined;
1761
- clientSecret?: string | undefined;
1762
- scopes?: string[] | undefined;
1763
- providerConfig?: {
1764
- dcrEnabled: boolean;
1765
- name?: string | undefined;
1766
- id?: string | undefined;
1767
- jwks?: {
1768
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
1769
- } | undefined;
1770
- jwksUri?: string | undefined;
1771
- additionalIssuers?: string[] | undefined;
1772
- verifyIssuer?: boolean | undefined;
1773
- authEndpoint?: string | undefined;
1774
- tokenEndpoint?: string | undefined;
1775
- registrationEndpoint?: string | undefined;
1776
- userInfoEndpoint?: string | undefined;
1777
- } | undefined;
1778
- } | undefined;
1779
- }> | import("../common").ProviderFactoryType<FrontMcpServer, readonly [import("@frontmcp/di").Reference<{
1780
- info: {
1781
- name: string;
1782
- version: string;
1783
- title?: string | undefined;
1784
- websiteUrl?: string | undefined;
1785
- icons?: {
1786
- src: string;
1787
- mimeType?: string | undefined;
1788
- sizes?: string[] | undefined;
1789
- theme?: "light" | "dark" | undefined;
1790
- }[] | undefined;
1791
- };
1792
- providers: import("@frontmcp/di").Type<unknown>[];
1793
- tools: (string | import("@frontmcp/di").Type<unknown>)[];
1794
- resources: import("@frontmcp/di").Type<unknown>[];
1795
- skills: import("@frontmcp/di").Type<unknown>[];
1796
- plugins: import("@frontmcp/di").Type<unknown>[];
1797
- apps: import("@frontmcp/di").Type<unknown>[];
1798
- serve: boolean;
1799
- transport: {
1800
- sessionMode: "stateful" | "stateless" | import("zod/v4/core").$InferOuterFunctionType<import("zod/v4/core").$ZodFunctionArgs, import("zod/v4/core").$ZodFunctionOut>;
1801
- protocol: "modern" | "legacy" | "stateless-api" | "full" | {
1802
- sse?: boolean | undefined;
1803
- streamable?: boolean | undefined;
1804
- json?: boolean | undefined;
1805
- stateless?: boolean | undefined;
1806
- legacy?: boolean | undefined;
1807
- strictSession?: boolean | undefined;
1808
- };
1809
- distributedMode: boolean | "auto";
1810
- platformDetection?: {
1811
- customOnly: boolean;
1812
- mappings?: {
1813
- pattern: string | RegExp;
1814
- platform: "unknown" | "continue" | "openai" | "claude" | "gemini" | "cursor" | "cody" | "generic-mcp" | "ext-apps";
1815
- }[] | undefined;
1816
- } | undefined;
1817
- defaultProtocolVersion?: "legacy" | "2026-07-28" | undefined;
1818
- persistence?: false | {
1819
- defaultTtlMs: number;
1820
- redis?: {
1821
- provider: "redis";
1822
- host: string;
1823
- port: number;
1824
- db: number;
1825
- tls: boolean;
1826
- keyPrefix: string;
1827
- defaultTtlMs: number;
1828
- password?: string | undefined;
1829
- } | {
1830
- provider: "redis";
1831
- host: string;
1832
- port: number;
1833
- db: number;
1834
- tls: boolean;
1835
- keyPrefix: string;
1836
- defaultTtlMs: number;
1837
- password?: string | undefined;
1838
- } | {
1839
- provider: "vercel-kv";
1840
- keyPrefix: string;
1841
- defaultTtlMs: number;
1842
- url?: string | undefined;
1843
- token?: string | undefined;
1844
- } | undefined;
1845
- sqlite?: {
1846
- ttlCleanupIntervalMs: number;
1847
- walMode: boolean;
1848
- path?: string | undefined;
1849
- encryption?: {
1850
- secret: string;
1851
- } | undefined;
1852
- } | undefined;
1853
- } | undefined;
1854
- providerCaching?: boolean | undefined;
1855
- eventStore?: {
1856
- enabled: boolean;
1857
- provider: "redis" | "sqlite" | "memory";
1858
- maxEvents: number;
1859
- ttlMs: number;
1860
- redis?: {
1861
- provider: "redis";
1862
- host: string;
1863
- port: number;
1864
- db: number;
1865
- tls: boolean;
1866
- keyPrefix: string;
1867
- defaultTtlMs: number;
1868
- password?: string | undefined;
1869
- } | {
1870
- provider: "redis";
1871
- host: string;
1872
- port: number;
1873
- db: number;
1874
- tls: boolean;
1875
- keyPrefix: string;
1876
- defaultTtlMs: number;
1877
- password?: string | undefined;
1878
- } | {
1879
- provider: "vercel-kv";
1880
- keyPrefix: string;
1881
- defaultTtlMs: number;
1882
- url?: string | undefined;
1883
- token?: string | undefined;
1884
- } | undefined;
1885
- } | undefined;
1886
- };
1887
- splitByApp: false;
1888
- __sourceDir?: string | undefined;
1889
- instructions?: string | undefined;
1890
- http?: {
1891
- port: number;
1892
- entryPath: string;
1893
- bodyLimit: string | number;
1894
- hostFactory?: any;
1895
- socketPath?: string | undefined;
1896
- cors?: false | {
1897
- origin?: string | boolean | string[] | ((origin: string | undefined, callback: (err: Error | null, allow?: boolean) => void) => void) | undefined;
1898
- credentials?: boolean | undefined;
1899
- maxAge?: number | undefined;
1900
- } | undefined;
1901
- security?: {
1902
- strict?: boolean | undefined;
1903
- bindAddress?: string | undefined;
1904
- dnsRebindingProtection?: {
1905
- enabled?: boolean | undefined;
1906
- allowedHosts?: string[] | undefined;
1907
- allowedOrigins?: string[] | undefined;
1908
- } | undefined;
1909
- } | undefined;
1910
- urlencodedLimit?: string | number | undefined;
1911
- routes?: {
1912
- method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS" | "HEAD";
1913
- path: string;
1914
- handler: import("../common").ServerRequestHandler;
1915
- auth?: boolean | undefined;
1916
- }[] | undefined;
1917
- } | undefined;
1918
- redis?: {
1919
- provider: "redis";
1920
- host: string;
1921
- port: number;
1922
- db: number;
1923
- tls: boolean;
1924
- keyPrefix: string;
1925
- defaultTtlMs: number;
1926
- password?: string | undefined;
1927
- } | {
1928
- provider: "redis";
1929
- host: string;
1930
- port: number;
1931
- db: number;
1932
- tls: boolean;
1933
- keyPrefix: string;
1934
- defaultTtlMs: number;
1935
- password?: string | undefined;
1936
- } | {
1937
- provider: "vercel-kv";
1938
- keyPrefix: string;
1939
- defaultTtlMs: number;
1940
- url?: string | undefined;
1941
- token?: string | undefined;
1942
- } | undefined;
1943
- pubsub?: {
1944
- provider: "redis";
1945
- host: string;
1946
- port: number;
1947
- db: number;
1948
- tls: boolean;
1949
- keyPrefix: string;
1950
- defaultTtlMs: number;
1951
- password?: string | undefined;
1952
- } | {
1953
- provider: "redis";
1954
- host: string;
1955
- port: number;
1956
- db: number;
1957
- tls: boolean;
1958
- keyPrefix: string;
1959
- defaultTtlMs: number;
1960
- password?: string | undefined;
1961
- } | undefined;
1962
- logging?: {
1963
- level: import("../common").LogLevel;
1964
- enableConsole: boolean;
1965
- transports: import("@frontmcp/di").Type<unknown>[];
1966
- prefix?: string | undefined;
1967
- } | undefined;
1968
- pagination?: {
1969
- tools?: {
1970
- mode: boolean | "auto";
1971
- pageSize: number;
1972
- autoThreshold: number;
1973
- } | undefined;
1974
- } | undefined;
1975
- elicitation?: {
1976
- enabled: boolean;
1977
- redis?: {
1978
- provider: "redis";
1979
- host: string;
1980
- port: number;
1981
- db: number;
1982
- tls: boolean;
1983
- keyPrefix: string;
1984
- defaultTtlMs: number;
1985
- password?: string | undefined;
1986
- } | {
1987
- provider: "redis";
1988
- host: string;
1989
- port: number;
1990
- db: number;
1991
- tls: boolean;
1992
- keyPrefix: string;
1993
- defaultTtlMs: number;
1994
- password?: string | undefined;
1995
- } | {
1996
- provider: "vercel-kv";
1997
- keyPrefix: string;
1998
- defaultTtlMs: number;
1999
- url?: string | undefined;
2000
- token?: string | undefined;
2001
- } | undefined;
2002
- } | undefined;
2003
- skillsConfig?: {
2004
- enabled: boolean;
2005
- auth: "inherit" | "public" | "api-key" | "bearer";
2006
- llmTxt: boolean | {
2007
- enabled: boolean;
2008
- path?: string | undefined;
2009
- };
2010
- llmFullTxt: boolean | {
2011
- enabled: boolean;
2012
- path?: string | undefined;
2013
- };
2014
- api: boolean | {
2015
- enabled: boolean;
2016
- path?: string | undefined;
2017
- };
2018
- mcpResources: boolean;
2019
- sep2640InInstructions: boolean;
2020
- injectInstructions: "replace" | "off" | "append" | "prepend";
2021
- prefix?: string | undefined;
2022
- apiKeys?: string[] | undefined;
2023
- jwt?: {
2024
- issuer: string;
2025
- audience?: string | undefined;
2026
- jwksUrl?: string | undefined;
2027
- } | undefined;
2028
- cache?: {
2029
- enabled: boolean;
2030
- ttlMs: number;
2031
- redis?: {
2032
- provider: "redis" | "vercel-kv" | "@vercel/kv";
2033
- host?: string | undefined;
2034
- port?: number | undefined;
2035
- password?: string | undefined;
2036
- db?: number | undefined;
2037
- } | undefined;
2038
- keyPrefix?: string | undefined;
2039
- } | undefined;
2040
- audit?: {
2041
- enabled: boolean;
2042
- signer?: unknown;
2043
- store?: unknown;
2044
- subjectMode?: "plain" | "hash" | "omit" | undefined;
2045
- headAnchorIntervalMs?: number | undefined;
2046
- } | undefined;
2047
- scoring?: "cosine" | "bm25" | undefined;
2048
- } | undefined;
2049
- extApps?: {
2050
- enabled: boolean;
2051
- hostCapabilities?: {
2052
- serverToolProxy?: boolean | undefined;
2053
- openLink?: boolean | undefined;
2054
- modelContextUpdate?: boolean | undefined;
2055
- widgetTools?: boolean | undefined;
2056
- displayModes?: ("inline" | "fullscreen" | "pip")[] | undefined;
2057
- logging?: boolean | undefined;
2058
- } | undefined;
2059
- } | undefined;
2060
- sqlite?: {
2061
- ttlCleanupIntervalMs: number;
2062
- walMode: boolean;
2063
- path?: string | undefined;
2064
- encryption?: {
2065
- secret: string;
2066
- } | undefined;
2067
- } | undefined;
2068
- ui?: {
2069
- cdnOverrides?: Record<string, string> | undefined;
2070
- } | undefined;
2071
- output?: {
2072
- allowNonFinite?: boolean | undefined;
2073
- schemaMode?: "description" | "definition" | "both" | "none" | undefined;
2074
- schemaDescriptionFormat?: "summary" | "jsonSchema" | undefined;
2075
- } | undefined;
2076
- jobs?: {
2077
- enabled: boolean;
2078
- store?: {
2079
- redis?: {
2080
- provider: "redis";
2081
- host: string;
2082
- port: number;
2083
- db: number;
2084
- tls: boolean;
2085
- keyPrefix: string;
2086
- defaultTtlMs: number;
2087
- password?: string | undefined;
2088
- } | {
2089
- provider: "redis";
2090
- host: string;
2091
- port: number;
2092
- db: number;
2093
- tls: boolean;
2094
- keyPrefix: string;
2095
- defaultTtlMs: number;
2096
- password?: string | undefined;
2097
- } | {
2098
- provider: "vercel-kv";
2099
- keyPrefix: string;
2100
- defaultTtlMs: number;
2101
- url?: string | undefined;
2102
- token?: string | undefined;
2103
- } | undefined;
2104
- keyPrefix?: string | undefined;
2105
- } | undefined;
2106
- } | undefined;
2107
- loader?: {
2108
- url?: string | undefined;
2109
- registryUrl?: string | undefined;
2110
- token?: string | undefined;
2111
- tokenEnvVar?: string | undefined;
2112
- } | undefined;
2113
- throttle?: {
2114
- enabled: boolean;
2115
- keyPrefix: string;
2116
- storage?: {
2117
- [x: string]: unknown;
2118
- } | undefined;
2119
- global?: {
2120
- maxRequests: number;
2121
- windowMs: number;
2122
- partitionBy: "session" | "global" | ((ctx: {
2123
- sessionId: string;
2124
- clientIp?: string;
2125
- userId?: string;
2126
- }) => string) | "ip" | "userId";
2127
- } | undefined;
2128
- globalConcurrency?: {
2129
- maxConcurrent: number;
2130
- queueTimeoutMs: number;
2131
- partitionBy: "session" | "global" | "ip" | "userId" | ((ctx: {
2132
- sessionId: string;
2133
- clientIp?: string;
2134
- userId?: string;
2135
- }) => string);
2136
- } | undefined;
2137
- defaultRateLimit?: {
2138
- maxRequests: number;
2139
- windowMs: number;
2140
- partitionBy: "session" | "global" | "ip" | "userId" | ((ctx: {
2141
- sessionId: string;
2142
- clientIp?: string;
2143
- userId?: string;
2144
- }) => string);
2145
- } | undefined;
2146
- defaultConcurrency?: {
2147
- maxConcurrent: number;
2148
- queueTimeoutMs: number;
2149
- partitionBy: "session" | "global" | "ip" | "userId" | ((ctx: {
2150
- sessionId: string;
2151
- clientIp?: string;
2152
- userId?: string;
2153
- }) => string);
2154
- } | undefined;
2155
- defaultTimeout?: {
2156
- executeMs: number;
2157
- } | undefined;
2158
- ipFilter?: {
2159
- defaultAction: "allow" | "deny";
2160
- trustProxy: boolean;
2161
- trustedProxyDepth: number;
2162
- allowList?: string[] | undefined;
2163
- denyList?: string[] | undefined;
2164
- } | undefined;
2165
- } | undefined;
2166
- observability?: boolean | {
2167
- tracing?: boolean | {
2168
- [x: string]: unknown;
2169
- } | undefined;
2170
- logging?: boolean | {
2171
- [x: string]: unknown;
2172
- } | undefined;
2173
- requestLogs?: boolean | {
2174
- [x: string]: unknown;
2175
- } | undefined;
2176
- } | undefined;
2177
- health?: {
2178
- enabled: boolean;
2179
- healthzPath: string;
2180
- readyzPath: string;
2181
- probes: any[];
2182
- includeDetails?: boolean | undefined;
2183
- readyz?: {
2184
- timeoutMs: number;
2185
- enabled?: boolean | undefined;
2186
- } | undefined;
2187
- } | undefined;
2188
- metrics?: {
2189
- enabled: boolean;
2190
- path: string;
2191
- format: "json" | "prometheus";
2192
- auth: "token" | "public" | {
2193
- token: string;
2194
- };
2195
- tokenEnv: string;
2196
- include?: ("auth" | "http" | "tools" | "resources" | "skills" | "process" | "storage" | "sessions")[] | undefined;
2197
- process?: {
2198
- eventLoopLag?: boolean | undefined;
2199
- fdCount?: boolean | undefined;
2200
- activeHandles?: boolean | undefined;
2201
- } | undefined;
2202
- } | undefined;
2203
- channels?: {
2204
- enabled: boolean;
2205
- defaultMeta?: Record<string, string> | undefined;
2206
- } | undefined;
2207
- authorities?: {
2208
- claimsMapping?: Record<string, string | undefined> | undefined;
2209
- profiles?: Record<string, {
2210
- [x: string]: unknown;
2211
- }> | undefined;
2212
- relationshipResolver?: any;
2213
- evaluators?: Record<string, any> | undefined;
2214
- claimsResolver?: any;
2215
- scopeMapping?: {
2216
- roles?: Record<string, string[]> | undefined;
2217
- permissions?: Record<string, string[]> | undefined;
2218
- profiles?: Record<string, string[]> | undefined;
2219
- } | undefined;
2220
- pipes?: any[] | undefined;
2221
- } | undefined;
2222
- tasks?: {
2223
- enabled?: boolean | undefined;
2224
- redis?: {
2225
- provider: "redis";
2226
- host: string;
2227
- port: number;
2228
- db: number;
2229
- tls: boolean;
2230
- keyPrefix: string;
2231
- defaultTtlMs: number;
2232
- password?: string | undefined;
2233
- } | {
2234
- provider: "redis";
2235
- host: string;
2236
- port: number;
2237
- db: number;
2238
- tls: boolean;
2239
- keyPrefix: string;
2240
- defaultTtlMs: number;
2241
- password?: string | undefined;
2242
- } | {
2243
- provider: "vercel-kv";
2244
- keyPrefix: string;
2245
- defaultTtlMs: number;
2246
- url?: string | undefined;
2247
- token?: string | undefined;
2248
- } | undefined;
2249
- keyPrefix?: string | undefined;
2250
- defaultTtlMs?: number | undefined;
2251
- maxTtlMs?: number | undefined;
2252
- defaultPollIntervalMs?: number | undefined;
2253
- maxConcurrentPerSession?: number | undefined;
2254
- strict?: boolean | undefined;
2255
- runner?: "in-process" | "cli" | undefined;
2256
- sqlite?: {
2257
- path: string;
2258
- encryption?: {
2259
- secret: string;
2260
- } | undefined;
2261
- walMode?: boolean | undefined;
2262
- ttlCleanupIntervalMs?: number | undefined;
2263
- } | undefined;
2264
- cliRunnerCommand?: {
2265
- exe: string;
2266
- args?: string[] | undefined;
2267
- } | undefined;
2268
- } | undefined;
2269
- auth?: {
2270
- mode: "public";
2271
- sessionTtl: number;
2272
- anonymousScopes: string[];
2273
- issuer?: string | undefined;
2274
- publicAccess?: {
2275
- tools: string[] | "all";
2276
- prompts: string[] | "all";
2277
- rateLimit: number;
2278
- } | undefined;
2279
- jwks?: {
2280
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
2281
- } | undefined;
2282
- signKey?: Uint8Array<ArrayBuffer> | import("libs/auth/dist/common/jwt.types").JWK | undefined;
2283
- } | {
2284
- requiredScopes: string[];
2285
- allowAnonymous: boolean;
2286
- anonymousScopes: string[];
2287
- provider: string;
2288
- mode: "transparent";
2289
- expectedAudience?: string | string[] | undefined;
2290
- requireAudience?: boolean | undefined;
2291
- publicAccess?: {
2292
- tools: string[] | "all";
2293
- prompts: string[] | "all";
2294
- rateLimit: number;
2295
- } | undefined;
2296
- clientId?: string | undefined;
2297
- clientSecret?: string | undefined;
2298
- scopes?: string[] | undefined;
2299
- providerConfig?: {
2300
- dcrEnabled: boolean;
2301
- name?: string | undefined;
2302
- id?: string | undefined;
2303
- jwks?: {
2304
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
2305
- } | undefined;
2306
- jwksUri?: string | undefined;
2307
- additionalIssuers?: string[] | undefined;
2308
- verifyIssuer?: boolean | undefined;
2309
- authEndpoint?: string | undefined;
2310
- tokenEndpoint?: string | undefined;
2311
- registrationEndpoint?: string | undefined;
2312
- userInfoEndpoint?: string | undefined;
2313
- } | undefined;
2314
- } | {
2315
- requireEmail: boolean;
2316
- anonymousSubject: string;
2317
- tokenStorage: "memory" | {
2318
- redis: {
2319
- host: string;
2320
- port: number;
2321
- db: number;
2322
- tls: boolean;
2323
- keyPrefix: string;
2324
- defaultTtlMs: number;
2325
- password?: string | undefined;
2326
- };
2327
- } | {
2328
- sqlite: {
2329
- path: string;
2330
- encryption?: {
2331
- secret: string;
2332
- } | undefined;
2333
- ttlCleanupIntervalMs?: number | undefined;
2334
- walMode?: boolean | undefined;
2335
- };
2336
- };
2337
- allowDefaultPublic: boolean;
2338
- anonymousScopes: string[];
2339
- requireRegisteredClients: boolean;
2340
- mode: "local";
2341
- login?: {
2342
- title?: string | undefined;
2343
- subtitle?: string | undefined;
2344
- logoUri?: string | undefined;
2345
- fields?: Record<string, {
2346
- type: "text" | "email" | "password" | "select" | "hidden";
2347
- label?: string | undefined;
2348
- required?: boolean | undefined;
2349
- placeholder?: string | undefined;
2350
- options?: {
2351
- value: string;
2352
- label: string;
2353
- }[] | undefined;
2354
- }> | undefined;
2355
- render?: ((ctx: import("libs/auth/dist/options/interfaces").LoginRenderContext) => string) | undefined;
2356
- subject?: {
2357
- fromField?: string | undefined;
2358
- strategy?: "per-session" | "per-account" | undefined;
2359
- } | undefined;
2360
- } | undefined;
2361
- authenticate?: import("libs/auth/dist/options/interfaces").AuthenticateFn | undefined;
2362
- providers?: {
2363
- id: string;
2364
- clientId: string;
2365
- name?: string | undefined;
2366
- authorizationEndpoint?: string | undefined;
2367
- authorizeUrl?: string | undefined;
2368
- tokenEndpoint?: string | undefined;
2369
- tokenUrl?: string | undefined;
2370
- clientSecret?: string | undefined;
2371
- scopes?: string[] | undefined;
2372
- userInfoEndpoint?: string | undefined;
2373
- jwksUri?: string | undefined;
2374
- }[] | undefined;
2375
- dcr?: {
2376
- enabled?: boolean | undefined;
2377
- allowedRedirectUris?: string[] | undefined;
2378
- allowedClientIds?: string[] | undefined;
2379
- initialAccessToken?: string | undefined;
2380
- clients?: {
2381
- clientId: string;
2382
- redirectUris: string[];
2383
- tokenEndpointAuthMethod: "none" | "client_secret_basic" | "client_secret_post";
2384
- grantTypes: ("authorization_code" | "refresh_token")[];
2385
- responseTypes: "code"[];
2386
- clientSecret?: string | undefined;
2387
- clientName?: string | undefined;
2388
- scope?: string | undefined;
2389
- }[] | undefined;
2390
- maxDynamicClients?: number | undefined;
2391
- } | undefined;
2392
- local?: {
2393
- signKey?: Uint8Array<ArrayBuffer> | import("libs/auth/dist/common/jwt.types").JWK | undefined;
2394
- jwks?: {
2395
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
2396
- } | undefined;
2397
- issuer?: string | undefined;
2398
- } | undefined;
2399
- secureStore?: "memory" | {
2400
- sqlite: {
2401
- path: string;
2402
- encryption?: {
2403
- secret: string;
2404
- } | undefined;
2405
- ttlCleanupIntervalMs?: number | undefined;
2406
- walMode?: boolean | undefined;
2407
- };
2408
- scope?: "user" | "session" | "global" | undefined;
2409
- ttlMs?: number | undefined;
2410
- encryption?: {
2411
- pepper?: string | undefined;
2412
- } | undefined;
2413
- } | {
2414
- redis: {
2415
- host: string;
2416
- port: number;
2417
- db: number;
2418
- tls: boolean;
2419
- keyPrefix: string;
2420
- defaultTtlMs: number;
2421
- password?: string | undefined;
2422
- };
2423
- scope?: "user" | "session" | "global" | undefined;
2424
- ttlMs?: number | undefined;
2425
- encryption?: {
2426
- pepper?: string | undefined;
2427
- } | undefined;
2428
- } | {
2429
- backend: import("libs/auth/dist/options/interfaces").SecureStoreCustomBackend;
2430
- scope?: "user" | "session" | "global" | undefined;
2431
- ttlMs?: number | undefined;
2432
- encryption?: {
2433
- pepper?: string | undefined;
2434
- } | undefined;
2435
- } | {
2436
- scope?: "user" | "session" | "global" | undefined;
2437
- ttlMs?: number | undefined;
2438
- encryption?: {
2439
- pepper?: string | undefined;
2440
- } | undefined;
2441
- } | undefined;
2442
- publicAccess?: {
2443
- tools: string[] | "all";
2444
- prompts: string[] | "all";
2445
- rateLimit: number;
2446
- } | undefined;
2447
- consent?: {
2448
- enabled: boolean;
2449
- groupByApp: boolean;
2450
- showDescriptions: boolean;
2451
- allowSelectAll: boolean;
2452
- requireSelection: boolean;
2453
- rememberConsent: boolean;
2454
- customMessage?: string | undefined;
2455
- excludedTools?: string[] | undefined;
2456
- defaultSelectedTools?: string[] | undefined;
2457
- } | undefined;
2458
- federatedAuth?: {
2459
- stateValidation: "format" | "strict";
2460
- minProviders?: number | undefined;
2461
- requiredProviders?: string[] | undefined;
2462
- } | undefined;
2463
- refresh?: {
2464
- enabled: boolean;
2465
- skewSeconds: number;
2466
- } | undefined;
2467
- expectedAudience?: string | string[] | undefined;
2468
- incrementalAuth?: {
2469
- enabled: boolean;
2470
- skippedAppBehavior: "anonymous" | "require-auth";
2471
- allowSkip: boolean;
2472
- showAllAppsAtOnce: boolean;
2473
- } | undefined;
2474
- cimd?: {
2475
- enabled: boolean;
2476
- cache?: {
2477
- type: "redis" | "memory";
2478
- defaultTtlMs: number;
2479
- maxTtlMs: number;
2480
- minTtlMs: number;
2481
- redis?: {
2482
- keyPrefix: string;
2483
- url?: string | undefined;
2484
- host?: string | undefined;
2485
- port?: number | undefined;
2486
- password?: string | undefined;
2487
- db?: number | undefined;
2488
- tls?: boolean | undefined;
2489
- } | undefined;
2490
- } | undefined;
2491
- security?: {
2492
- blockPrivateIPs: boolean;
2493
- warnOnLocalhostRedirects: boolean;
2494
- allowInsecureForTesting: boolean;
2495
- allowedDomains?: string[] | undefined;
2496
- blockedDomains?: string[] | undefined;
2497
- } | undefined;
2498
- network?: {
2499
- timeoutMs: number;
2500
- maxResponseSizeBytes: number;
2501
- redirectPolicy: "allow" | "deny" | "same-origin";
2502
- maxRedirects: number;
2503
- } | undefined;
2504
- } | undefined;
2505
- ui?: Partial<Record<"error" | "login" | "consent" | "incremental" | "federated", string>> | undefined;
2506
- extras?: Record<string, import("libs/auth/dist/options/interfaces").AuthExtraHandler> | undefined;
2507
- } | {
2508
- tokenStorage: "memory" | {
2509
- redis: {
2510
- host: string;
2511
- port: number;
2512
- db: number;
2513
- tls: boolean;
2514
- keyPrefix: string;
2515
- defaultTtlMs: number;
2516
- password?: string | undefined;
2517
- };
2518
- } | {
2519
- sqlite: {
2520
- path: string;
2521
- encryption?: {
2522
- secret: string;
2523
- } | undefined;
2524
- ttlCleanupIntervalMs?: number | undefined;
2525
- walMode?: boolean | undefined;
2526
- };
2527
- };
2528
- allowDefaultPublic: boolean;
2529
- anonymousScopes: string[];
2530
- requireRegisteredClients: boolean;
2531
- provider: string;
2532
- mode: "remote";
2533
- local?: {
2534
- signKey?: Uint8Array<ArrayBuffer> | import("libs/auth/dist/common/jwt.types").JWK | undefined;
2535
- jwks?: {
2536
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
2537
- } | undefined;
2538
- issuer?: string | undefined;
2539
- } | undefined;
2540
- secureStore?: "memory" | {
2541
- sqlite: {
2542
- path: string;
2543
- encryption?: {
2544
- secret: string;
2545
- } | undefined;
2546
- ttlCleanupIntervalMs?: number | undefined;
2547
- walMode?: boolean | undefined;
2548
- };
2549
- scope?: "user" | "session" | "global" | undefined;
2550
- ttlMs?: number | undefined;
2551
- encryption?: {
2552
- pepper?: string | undefined;
2553
- } | undefined;
2554
- } | {
2555
- redis: {
2556
- host: string;
2557
- port: number;
2558
- db: number;
2559
- tls: boolean;
2560
- keyPrefix: string;
2561
- defaultTtlMs: number;
2562
- password?: string | undefined;
2563
- };
2564
- scope?: "user" | "session" | "global" | undefined;
2565
- ttlMs?: number | undefined;
2566
- encryption?: {
2567
- pepper?: string | undefined;
2568
- } | undefined;
2569
- } | {
2570
- backend: import("libs/auth/dist/options/interfaces").SecureStoreCustomBackend;
2571
- scope?: "user" | "session" | "global" | undefined;
2572
- ttlMs?: number | undefined;
2573
- encryption?: {
2574
- pepper?: string | undefined;
2575
- } | undefined;
2576
- } | {
2577
- scope?: "user" | "session" | "global" | undefined;
2578
- ttlMs?: number | undefined;
2579
- encryption?: {
2580
- pepper?: string | undefined;
2581
- } | undefined;
2582
- } | undefined;
2583
- publicAccess?: {
2584
- tools: string[] | "all";
2585
- prompts: string[] | "all";
2586
- rateLimit: number;
2587
- } | undefined;
2588
- consent?: {
2589
- enabled: boolean;
2590
- groupByApp: boolean;
2591
- showDescriptions: boolean;
2592
- allowSelectAll: boolean;
2593
- requireSelection: boolean;
2594
- rememberConsent: boolean;
2595
- customMessage?: string | undefined;
2596
- excludedTools?: string[] | undefined;
2597
- defaultSelectedTools?: string[] | undefined;
2598
- } | undefined;
2599
- federatedAuth?: {
2600
- stateValidation: "format" | "strict";
2601
- minProviders?: number | undefined;
2602
- requiredProviders?: string[] | undefined;
2603
- } | undefined;
2604
- refresh?: {
2605
- enabled: boolean;
2606
- skewSeconds: number;
2607
- } | undefined;
2608
- expectedAudience?: string | string[] | undefined;
2609
- incrementalAuth?: {
2610
- enabled: boolean;
2611
- skippedAppBehavior: "anonymous" | "require-auth";
2612
- allowSkip: boolean;
2613
- showAllAppsAtOnce: boolean;
2614
- } | undefined;
2615
- cimd?: {
2616
- enabled: boolean;
2617
- cache?: {
2618
- type: "redis" | "memory";
2619
- defaultTtlMs: number;
2620
- maxTtlMs: number;
2621
- minTtlMs: number;
2622
- redis?: {
2623
- keyPrefix: string;
2624
- url?: string | undefined;
2625
- host?: string | undefined;
2626
- port?: number | undefined;
2627
- password?: string | undefined;
2628
- db?: number | undefined;
2629
- tls?: boolean | undefined;
2630
- } | undefined;
2631
- } | undefined;
2632
- security?: {
2633
- blockPrivateIPs: boolean;
2634
- warnOnLocalhostRedirects: boolean;
2635
- allowInsecureForTesting: boolean;
2636
- allowedDomains?: string[] | undefined;
2637
- blockedDomains?: string[] | undefined;
2638
- } | undefined;
2639
- network?: {
2640
- timeoutMs: number;
2641
- maxResponseSizeBytes: number;
2642
- redirectPolicy: "allow" | "deny" | "same-origin";
2643
- maxRedirects: number;
2644
- } | undefined;
2645
- } | undefined;
2646
- ui?: Partial<Record<"error" | "login" | "consent" | "incremental" | "federated", string>> | undefined;
2647
- extras?: Record<string, import("libs/auth/dist/options/interfaces").AuthExtraHandler> | undefined;
2648
- clientId?: string | undefined;
2649
- clientSecret?: string | undefined;
2650
- scopes?: string[] | undefined;
2651
- providerConfig?: {
2652
- dcrEnabled: boolean;
2653
- name?: string | undefined;
2654
- id?: string | undefined;
2655
- jwks?: {
2656
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
2657
- } | undefined;
2658
- jwksUri?: string | undefined;
2659
- additionalIssuers?: string[] | undefined;
2660
- verifyIssuer?: boolean | undefined;
2661
- authEndpoint?: string | undefined;
2662
- tokenEndpoint?: string | undefined;
2663
- registrationEndpoint?: string | undefined;
2664
- userInfoEndpoint?: string | undefined;
2665
- } | undefined;
2666
- } | undefined;
2667
- } | {
2668
- info: {
2669
- name: string;
2670
- version: string;
2671
- title?: string | undefined;
2672
- websiteUrl?: string | undefined;
2673
- icons?: {
2674
- src: string;
2675
- mimeType?: string | undefined;
2676
- sizes?: string[] | undefined;
2677
- theme?: "light" | "dark" | undefined;
2678
- }[] | undefined;
2679
- };
2680
- providers: import("@frontmcp/di").Type<unknown>[];
2681
- tools: (string | import("@frontmcp/di").Type<unknown>)[];
2682
- resources: import("@frontmcp/di").Type<unknown>[];
2683
- skills: import("@frontmcp/di").Type<unknown>[];
2684
- plugins: import("@frontmcp/di").Type<unknown>[];
2685
- apps: import("@frontmcp/di").Type<unknown>[];
2686
- serve: boolean;
2687
- transport: {
2688
- sessionMode: "stateful" | "stateless" | import("zod/v4/core").$InferOuterFunctionType<import("zod/v4/core").$ZodFunctionArgs, import("zod/v4/core").$ZodFunctionOut>;
2689
- protocol: "modern" | "legacy" | "stateless-api" | "full" | {
2690
- sse?: boolean | undefined;
2691
- streamable?: boolean | undefined;
2692
- json?: boolean | undefined;
2693
- stateless?: boolean | undefined;
2694
- legacy?: boolean | undefined;
2695
- strictSession?: boolean | undefined;
2696
- };
2697
- distributedMode: boolean | "auto";
2698
- platformDetection?: {
2699
- customOnly: boolean;
2700
- mappings?: {
2701
- pattern: string | RegExp;
2702
- platform: "unknown" | "continue" | "openai" | "claude" | "gemini" | "cursor" | "cody" | "generic-mcp" | "ext-apps";
2703
- }[] | undefined;
2704
- } | undefined;
2705
- defaultProtocolVersion?: "legacy" | "2026-07-28" | undefined;
2706
- persistence?: false | {
2707
- defaultTtlMs: number;
2708
- redis?: {
2709
- provider: "redis";
2710
- host: string;
2711
- port: number;
2712
- db: number;
2713
- tls: boolean;
2714
- keyPrefix: string;
2715
- defaultTtlMs: number;
2716
- password?: string | undefined;
2717
- } | {
2718
- provider: "redis";
2719
- host: string;
2720
- port: number;
2721
- db: number;
2722
- tls: boolean;
2723
- keyPrefix: string;
2724
- defaultTtlMs: number;
2725
- password?: string | undefined;
2726
- } | {
2727
- provider: "vercel-kv";
2728
- keyPrefix: string;
2729
- defaultTtlMs: number;
2730
- url?: string | undefined;
2731
- token?: string | undefined;
2732
- } | undefined;
2733
- sqlite?: {
2734
- ttlCleanupIntervalMs: number;
2735
- walMode: boolean;
2736
- path?: string | undefined;
2737
- encryption?: {
2738
- secret: string;
2739
- } | undefined;
2740
- } | undefined;
2741
- } | undefined;
2742
- providerCaching?: boolean | undefined;
2743
- eventStore?: {
2744
- enabled: boolean;
2745
- provider: "redis" | "sqlite" | "memory";
2746
- maxEvents: number;
2747
- ttlMs: number;
2748
- redis?: {
2749
- provider: "redis";
2750
- host: string;
2751
- port: number;
2752
- db: number;
2753
- tls: boolean;
2754
- keyPrefix: string;
2755
- defaultTtlMs: number;
2756
- password?: string | undefined;
2757
- } | {
2758
- provider: "redis";
2759
- host: string;
2760
- port: number;
2761
- db: number;
2762
- tls: boolean;
2763
- keyPrefix: string;
2764
- defaultTtlMs: number;
2765
- password?: string | undefined;
2766
- } | {
2767
- provider: "vercel-kv";
2768
- keyPrefix: string;
2769
- defaultTtlMs: number;
2770
- url?: string | undefined;
2771
- token?: string | undefined;
2772
- } | undefined;
2773
- } | undefined;
2774
- };
2775
- splitByApp: true;
2776
- __sourceDir?: string | undefined;
2777
- instructions?: string | undefined;
2778
- http?: {
2779
- port: number;
2780
- entryPath: string;
2781
- bodyLimit: string | number;
2782
- hostFactory?: any;
2783
- socketPath?: string | undefined;
2784
- cors?: false | {
2785
- origin?: string | boolean | string[] | ((origin: string | undefined, callback: (err: Error | null, allow?: boolean) => void) => void) | undefined;
2786
- credentials?: boolean | undefined;
2787
- maxAge?: number | undefined;
2788
- } | undefined;
2789
- security?: {
2790
- strict?: boolean | undefined;
2791
- bindAddress?: string | undefined;
2792
- dnsRebindingProtection?: {
2793
- enabled?: boolean | undefined;
2794
- allowedHosts?: string[] | undefined;
2795
- allowedOrigins?: string[] | undefined;
2796
- } | undefined;
2797
- } | undefined;
2798
- urlencodedLimit?: string | number | undefined;
2799
- routes?: {
2800
- method: "GET" | "POST" | "PUT" | "PATCH" | "DELETE" | "OPTIONS" | "HEAD";
2801
- path: string;
2802
- handler: import("../common").ServerRequestHandler;
2803
- auth?: boolean | undefined;
2804
- }[] | undefined;
2805
- } | undefined;
2806
- redis?: {
2807
- provider: "redis";
2808
- host: string;
2809
- port: number;
2810
- db: number;
2811
- tls: boolean;
2812
- keyPrefix: string;
2813
- defaultTtlMs: number;
2814
- password?: string | undefined;
2815
- } | {
2816
- provider: "redis";
2817
- host: string;
2818
- port: number;
2819
- db: number;
2820
- tls: boolean;
2821
- keyPrefix: string;
2822
- defaultTtlMs: number;
2823
- password?: string | undefined;
2824
- } | {
2825
- provider: "vercel-kv";
2826
- keyPrefix: string;
2827
- defaultTtlMs: number;
2828
- url?: string | undefined;
2829
- token?: string | undefined;
2830
- } | undefined;
2831
- pubsub?: {
2832
- provider: "redis";
2833
- host: string;
2834
- port: number;
2835
- db: number;
2836
- tls: boolean;
2837
- keyPrefix: string;
2838
- defaultTtlMs: number;
2839
- password?: string | undefined;
2840
- } | {
2841
- provider: "redis";
2842
- host: string;
2843
- port: number;
2844
- db: number;
2845
- tls: boolean;
2846
- keyPrefix: string;
2847
- defaultTtlMs: number;
2848
- password?: string | undefined;
2849
- } | undefined;
2850
- logging?: {
2851
- level: import("../common").LogLevel;
2852
- enableConsole: boolean;
2853
- transports: import("@frontmcp/di").Type<unknown>[];
2854
- prefix?: string | undefined;
2855
- } | undefined;
2856
- pagination?: {
2857
- tools?: {
2858
- mode: boolean | "auto";
2859
- pageSize: number;
2860
- autoThreshold: number;
2861
- } | undefined;
2862
- } | undefined;
2863
- elicitation?: {
2864
- enabled: boolean;
2865
- redis?: {
2866
- provider: "redis";
2867
- host: string;
2868
- port: number;
2869
- db: number;
2870
- tls: boolean;
2871
- keyPrefix: string;
2872
- defaultTtlMs: number;
2873
- password?: string | undefined;
2874
- } | {
2875
- provider: "redis";
2876
- host: string;
2877
- port: number;
2878
- db: number;
2879
- tls: boolean;
2880
- keyPrefix: string;
2881
- defaultTtlMs: number;
2882
- password?: string | undefined;
2883
- } | {
2884
- provider: "vercel-kv";
2885
- keyPrefix: string;
2886
- defaultTtlMs: number;
2887
- url?: string | undefined;
2888
- token?: string | undefined;
2889
- } | undefined;
2890
- } | undefined;
2891
- skillsConfig?: {
2892
- enabled: boolean;
2893
- auth: "inherit" | "public" | "api-key" | "bearer";
2894
- llmTxt: boolean | {
2895
- enabled: boolean;
2896
- path?: string | undefined;
2897
- };
2898
- llmFullTxt: boolean | {
2899
- enabled: boolean;
2900
- path?: string | undefined;
2901
- };
2902
- api: boolean | {
2903
- enabled: boolean;
2904
- path?: string | undefined;
2905
- };
2906
- mcpResources: boolean;
2907
- sep2640InInstructions: boolean;
2908
- injectInstructions: "replace" | "off" | "append" | "prepend";
2909
- prefix?: string | undefined;
2910
- apiKeys?: string[] | undefined;
2911
- jwt?: {
2912
- issuer: string;
2913
- audience?: string | undefined;
2914
- jwksUrl?: string | undefined;
2915
- } | undefined;
2916
- cache?: {
2917
- enabled: boolean;
2918
- ttlMs: number;
2919
- redis?: {
2920
- provider: "redis" | "vercel-kv" | "@vercel/kv";
2921
- host?: string | undefined;
2922
- port?: number | undefined;
2923
- password?: string | undefined;
2924
- db?: number | undefined;
2925
- } | undefined;
2926
- keyPrefix?: string | undefined;
2927
- } | undefined;
2928
- audit?: {
2929
- enabled: boolean;
2930
- signer?: unknown;
2931
- store?: unknown;
2932
- subjectMode?: "plain" | "hash" | "omit" | undefined;
2933
- headAnchorIntervalMs?: number | undefined;
2934
- } | undefined;
2935
- scoring?: "cosine" | "bm25" | undefined;
2936
- } | undefined;
2937
- extApps?: {
2938
- enabled: boolean;
2939
- hostCapabilities?: {
2940
- serverToolProxy?: boolean | undefined;
2941
- openLink?: boolean | undefined;
2942
- modelContextUpdate?: boolean | undefined;
2943
- widgetTools?: boolean | undefined;
2944
- displayModes?: ("inline" | "fullscreen" | "pip")[] | undefined;
2945
- logging?: boolean | undefined;
2946
- } | undefined;
2947
- } | undefined;
2948
- sqlite?: {
2949
- ttlCleanupIntervalMs: number;
2950
- walMode: boolean;
2951
- path?: string | undefined;
2952
- encryption?: {
2953
- secret: string;
2954
- } | undefined;
2955
- } | undefined;
2956
- ui?: {
2957
- cdnOverrides?: Record<string, string> | undefined;
2958
- } | undefined;
2959
- output?: {
2960
- allowNonFinite?: boolean | undefined;
2961
- schemaMode?: "description" | "definition" | "both" | "none" | undefined;
2962
- schemaDescriptionFormat?: "summary" | "jsonSchema" | undefined;
2963
- } | undefined;
2964
- jobs?: {
2965
- enabled: boolean;
2966
- store?: {
2967
- redis?: {
2968
- provider: "redis";
2969
- host: string;
2970
- port: number;
2971
- db: number;
2972
- tls: boolean;
2973
- keyPrefix: string;
2974
- defaultTtlMs: number;
2975
- password?: string | undefined;
2976
- } | {
2977
- provider: "redis";
2978
- host: string;
2979
- port: number;
2980
- db: number;
2981
- tls: boolean;
2982
- keyPrefix: string;
2983
- defaultTtlMs: number;
2984
- password?: string | undefined;
2985
- } | {
2986
- provider: "vercel-kv";
2987
- keyPrefix: string;
2988
- defaultTtlMs: number;
2989
- url?: string | undefined;
2990
- token?: string | undefined;
2991
- } | undefined;
2992
- keyPrefix?: string | undefined;
2993
- } | undefined;
2994
- } | undefined;
2995
- loader?: {
2996
- url?: string | undefined;
2997
- registryUrl?: string | undefined;
2998
- token?: string | undefined;
2999
- tokenEnvVar?: string | undefined;
3000
- } | undefined;
3001
- throttle?: {
3002
- enabled: boolean;
3003
- keyPrefix: string;
3004
- storage?: {
3005
- [x: string]: unknown;
3006
- } | undefined;
3007
- global?: {
3008
- maxRequests: number;
3009
- windowMs: number;
3010
- partitionBy: "session" | "global" | ((ctx: {
3011
- sessionId: string;
3012
- clientIp?: string;
3013
- userId?: string;
3014
- }) => string) | "ip" | "userId";
3015
- } | undefined;
3016
- globalConcurrency?: {
3017
- maxConcurrent: number;
3018
- queueTimeoutMs: number;
3019
- partitionBy: "session" | "global" | "ip" | "userId" | ((ctx: {
3020
- sessionId: string;
3021
- clientIp?: string;
3022
- userId?: string;
3023
- }) => string);
3024
- } | undefined;
3025
- defaultRateLimit?: {
3026
- maxRequests: number;
3027
- windowMs: number;
3028
- partitionBy: "session" | "global" | "ip" | "userId" | ((ctx: {
3029
- sessionId: string;
3030
- clientIp?: string;
3031
- userId?: string;
3032
- }) => string);
3033
- } | undefined;
3034
- defaultConcurrency?: {
3035
- maxConcurrent: number;
3036
- queueTimeoutMs: number;
3037
- partitionBy: "session" | "global" | "ip" | "userId" | ((ctx: {
3038
- sessionId: string;
3039
- clientIp?: string;
3040
- userId?: string;
3041
- }) => string);
3042
- } | undefined;
3043
- defaultTimeout?: {
3044
- executeMs: number;
3045
- } | undefined;
3046
- ipFilter?: {
3047
- defaultAction: "allow" | "deny";
3048
- trustProxy: boolean;
3049
- trustedProxyDepth: number;
3050
- allowList?: string[] | undefined;
3051
- denyList?: string[] | undefined;
3052
- } | undefined;
3053
- } | undefined;
3054
- observability?: boolean | {
3055
- tracing?: boolean | {
3056
- [x: string]: unknown;
3057
- } | undefined;
3058
- logging?: boolean | {
3059
- [x: string]: unknown;
3060
- } | undefined;
3061
- requestLogs?: boolean | {
3062
- [x: string]: unknown;
3063
- } | undefined;
3064
- } | undefined;
3065
- health?: {
3066
- enabled: boolean;
3067
- healthzPath: string;
3068
- readyzPath: string;
3069
- probes: any[];
3070
- includeDetails?: boolean | undefined;
3071
- readyz?: {
3072
- timeoutMs: number;
3073
- enabled?: boolean | undefined;
3074
- } | undefined;
3075
- } | undefined;
3076
- metrics?: {
3077
- enabled: boolean;
3078
- path: string;
3079
- format: "json" | "prometheus";
3080
- auth: "token" | "public" | {
3081
- token: string;
3082
- };
3083
- tokenEnv: string;
3084
- include?: ("auth" | "http" | "tools" | "resources" | "skills" | "process" | "storage" | "sessions")[] | undefined;
3085
- process?: {
3086
- eventLoopLag?: boolean | undefined;
3087
- fdCount?: boolean | undefined;
3088
- activeHandles?: boolean | undefined;
3089
- } | undefined;
3090
- } | undefined;
3091
- channels?: {
3092
- enabled: boolean;
3093
- defaultMeta?: Record<string, string> | undefined;
3094
- } | undefined;
3095
- authorities?: {
3096
- claimsMapping?: Record<string, string | undefined> | undefined;
3097
- profiles?: Record<string, {
3098
- [x: string]: unknown;
3099
- }> | undefined;
3100
- relationshipResolver?: any;
3101
- evaluators?: Record<string, any> | undefined;
3102
- claimsResolver?: any;
3103
- scopeMapping?: {
3104
- roles?: Record<string, string[]> | undefined;
3105
- permissions?: Record<string, string[]> | undefined;
3106
- profiles?: Record<string, string[]> | undefined;
3107
- } | undefined;
3108
- pipes?: any[] | undefined;
3109
- } | undefined;
3110
- tasks?: {
3111
- enabled?: boolean | undefined;
3112
- redis?: {
3113
- provider: "redis";
3114
- host: string;
3115
- port: number;
3116
- db: number;
3117
- tls: boolean;
3118
- keyPrefix: string;
3119
- defaultTtlMs: number;
3120
- password?: string | undefined;
3121
- } | {
3122
- provider: "redis";
3123
- host: string;
3124
- port: number;
3125
- db: number;
3126
- tls: boolean;
3127
- keyPrefix: string;
3128
- defaultTtlMs: number;
3129
- password?: string | undefined;
3130
- } | {
3131
- provider: "vercel-kv";
3132
- keyPrefix: string;
3133
- defaultTtlMs: number;
3134
- url?: string | undefined;
3135
- token?: string | undefined;
3136
- } | undefined;
3137
- keyPrefix?: string | undefined;
3138
- defaultTtlMs?: number | undefined;
3139
- maxTtlMs?: number | undefined;
3140
- defaultPollIntervalMs?: number | undefined;
3141
- maxConcurrentPerSession?: number | undefined;
3142
- strict?: boolean | undefined;
3143
- runner?: "in-process" | "cli" | undefined;
3144
- sqlite?: {
3145
- path: string;
3146
- encryption?: {
3147
- secret: string;
3148
- } | undefined;
3149
- walMode?: boolean | undefined;
3150
- ttlCleanupIntervalMs?: number | undefined;
3151
- } | undefined;
3152
- cliRunnerCommand?: {
3153
- exe: string;
3154
- args?: string[] | undefined;
3155
- } | undefined;
3156
- } | undefined;
3157
- auth?: {
3158
- mode: "public";
3159
- sessionTtl: number;
3160
- anonymousScopes: string[];
3161
- issuer?: string | undefined;
3162
- publicAccess?: {
3163
- tools: string[] | "all";
3164
- prompts: string[] | "all";
3165
- rateLimit: number;
3166
- } | undefined;
3167
- jwks?: {
3168
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
3169
- } | undefined;
3170
- signKey?: Uint8Array<ArrayBuffer> | import("libs/auth/dist/common/jwt.types").JWK | undefined;
3171
- } | {
3172
- requiredScopes: string[];
3173
- allowAnonymous: boolean;
3174
- anonymousScopes: string[];
3175
- provider: string;
3176
- mode: "transparent";
3177
- expectedAudience?: string | string[] | undefined;
3178
- requireAudience?: boolean | undefined;
3179
- publicAccess?: {
3180
- tools: string[] | "all";
3181
- prompts: string[] | "all";
3182
- rateLimit: number;
3183
- } | undefined;
3184
- clientId?: string | undefined;
3185
- clientSecret?: string | undefined;
3186
- scopes?: string[] | undefined;
3187
- providerConfig?: {
3188
- dcrEnabled: boolean;
3189
- name?: string | undefined;
3190
- id?: string | undefined;
3191
- jwks?: {
3192
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
3193
- } | undefined;
3194
- jwksUri?: string | undefined;
3195
- additionalIssuers?: string[] | undefined;
3196
- verifyIssuer?: boolean | undefined;
3197
- authEndpoint?: string | undefined;
3198
- tokenEndpoint?: string | undefined;
3199
- registrationEndpoint?: string | undefined;
3200
- userInfoEndpoint?: string | undefined;
3201
- } | undefined;
3202
- } | {
3203
- requireEmail: boolean;
3204
- anonymousSubject: string;
3205
- tokenStorage: "memory" | {
3206
- redis: {
3207
- host: string;
3208
- port: number;
3209
- db: number;
3210
- tls: boolean;
3211
- keyPrefix: string;
3212
- defaultTtlMs: number;
3213
- password?: string | undefined;
3214
- };
3215
- } | {
3216
- sqlite: {
3217
- path: string;
3218
- encryption?: {
3219
- secret: string;
3220
- } | undefined;
3221
- ttlCleanupIntervalMs?: number | undefined;
3222
- walMode?: boolean | undefined;
3223
- };
3224
- };
3225
- allowDefaultPublic: boolean;
3226
- anonymousScopes: string[];
3227
- requireRegisteredClients: boolean;
3228
- mode: "local";
3229
- login?: {
3230
- title?: string | undefined;
3231
- subtitle?: string | undefined;
3232
- logoUri?: string | undefined;
3233
- fields?: Record<string, {
3234
- type: "text" | "email" | "password" | "select" | "hidden";
3235
- label?: string | undefined;
3236
- required?: boolean | undefined;
3237
- placeholder?: string | undefined;
3238
- options?: {
3239
- value: string;
3240
- label: string;
3241
- }[] | undefined;
3242
- }> | undefined;
3243
- render?: ((ctx: import("libs/auth/dist/options/interfaces").LoginRenderContext) => string) | undefined;
3244
- subject?: {
3245
- fromField?: string | undefined;
3246
- strategy?: "per-session" | "per-account" | undefined;
3247
- } | undefined;
3248
- } | undefined;
3249
- authenticate?: import("libs/auth/dist/options/interfaces").AuthenticateFn | undefined;
3250
- providers?: {
3251
- id: string;
3252
- clientId: string;
3253
- name?: string | undefined;
3254
- authorizationEndpoint?: string | undefined;
3255
- authorizeUrl?: string | undefined;
3256
- tokenEndpoint?: string | undefined;
3257
- tokenUrl?: string | undefined;
3258
- clientSecret?: string | undefined;
3259
- scopes?: string[] | undefined;
3260
- userInfoEndpoint?: string | undefined;
3261
- jwksUri?: string | undefined;
3262
- }[] | undefined;
3263
- dcr?: {
3264
- enabled?: boolean | undefined;
3265
- allowedRedirectUris?: string[] | undefined;
3266
- allowedClientIds?: string[] | undefined;
3267
- initialAccessToken?: string | undefined;
3268
- clients?: {
3269
- clientId: string;
3270
- redirectUris: string[];
3271
- tokenEndpointAuthMethod: "none" | "client_secret_basic" | "client_secret_post";
3272
- grantTypes: ("authorization_code" | "refresh_token")[];
3273
- responseTypes: "code"[];
3274
- clientSecret?: string | undefined;
3275
- clientName?: string | undefined;
3276
- scope?: string | undefined;
3277
- }[] | undefined;
3278
- maxDynamicClients?: number | undefined;
3279
- } | undefined;
3280
- local?: {
3281
- signKey?: Uint8Array<ArrayBuffer> | import("libs/auth/dist/common/jwt.types").JWK | undefined;
3282
- jwks?: {
3283
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
3284
- } | undefined;
3285
- issuer?: string | undefined;
3286
- } | undefined;
3287
- secureStore?: "memory" | {
3288
- sqlite: {
3289
- path: string;
3290
- encryption?: {
3291
- secret: string;
3292
- } | undefined;
3293
- ttlCleanupIntervalMs?: number | undefined;
3294
- walMode?: boolean | undefined;
3295
- };
3296
- scope?: "user" | "session" | "global" | undefined;
3297
- ttlMs?: number | undefined;
3298
- encryption?: {
3299
- pepper?: string | undefined;
3300
- } | undefined;
3301
- } | {
3302
- redis: {
3303
- host: string;
3304
- port: number;
3305
- db: number;
3306
- tls: boolean;
3307
- keyPrefix: string;
3308
- defaultTtlMs: number;
3309
- password?: string | undefined;
3310
- };
3311
- scope?: "user" | "session" | "global" | undefined;
3312
- ttlMs?: number | undefined;
3313
- encryption?: {
3314
- pepper?: string | undefined;
3315
- } | undefined;
3316
- } | {
3317
- backend: import("libs/auth/dist/options/interfaces").SecureStoreCustomBackend;
3318
- scope?: "user" | "session" | "global" | undefined;
3319
- ttlMs?: number | undefined;
3320
- encryption?: {
3321
- pepper?: string | undefined;
3322
- } | undefined;
3323
- } | {
3324
- scope?: "user" | "session" | "global" | undefined;
3325
- ttlMs?: number | undefined;
3326
- encryption?: {
3327
- pepper?: string | undefined;
3328
- } | undefined;
3329
- } | undefined;
3330
- publicAccess?: {
3331
- tools: string[] | "all";
3332
- prompts: string[] | "all";
3333
- rateLimit: number;
3334
- } | undefined;
3335
- consent?: {
3336
- enabled: boolean;
3337
- groupByApp: boolean;
3338
- showDescriptions: boolean;
3339
- allowSelectAll: boolean;
3340
- requireSelection: boolean;
3341
- rememberConsent: boolean;
3342
- customMessage?: string | undefined;
3343
- excludedTools?: string[] | undefined;
3344
- defaultSelectedTools?: string[] | undefined;
3345
- } | undefined;
3346
- federatedAuth?: {
3347
- stateValidation: "format" | "strict";
3348
- minProviders?: number | undefined;
3349
- requiredProviders?: string[] | undefined;
3350
- } | undefined;
3351
- refresh?: {
3352
- enabled: boolean;
3353
- skewSeconds: number;
3354
- } | undefined;
3355
- expectedAudience?: string | string[] | undefined;
3356
- incrementalAuth?: {
3357
- enabled: boolean;
3358
- skippedAppBehavior: "anonymous" | "require-auth";
3359
- allowSkip: boolean;
3360
- showAllAppsAtOnce: boolean;
3361
- } | undefined;
3362
- cimd?: {
3363
- enabled: boolean;
3364
- cache?: {
3365
- type: "redis" | "memory";
3366
- defaultTtlMs: number;
3367
- maxTtlMs: number;
3368
- minTtlMs: number;
3369
- redis?: {
3370
- keyPrefix: string;
3371
- url?: string | undefined;
3372
- host?: string | undefined;
3373
- port?: number | undefined;
3374
- password?: string | undefined;
3375
- db?: number | undefined;
3376
- tls?: boolean | undefined;
3377
- } | undefined;
3378
- } | undefined;
3379
- security?: {
3380
- blockPrivateIPs: boolean;
3381
- warnOnLocalhostRedirects: boolean;
3382
- allowInsecureForTesting: boolean;
3383
- allowedDomains?: string[] | undefined;
3384
- blockedDomains?: string[] | undefined;
3385
- } | undefined;
3386
- network?: {
3387
- timeoutMs: number;
3388
- maxResponseSizeBytes: number;
3389
- redirectPolicy: "allow" | "deny" | "same-origin";
3390
- maxRedirects: number;
3391
- } | undefined;
3392
- } | undefined;
3393
- ui?: Partial<Record<"error" | "login" | "consent" | "incremental" | "federated", string>> | undefined;
3394
- extras?: Record<string, import("libs/auth/dist/options/interfaces").AuthExtraHandler> | undefined;
3395
- } | {
3396
- tokenStorage: "memory" | {
3397
- redis: {
3398
- host: string;
3399
- port: number;
3400
- db: number;
3401
- tls: boolean;
3402
- keyPrefix: string;
3403
- defaultTtlMs: number;
3404
- password?: string | undefined;
3405
- };
3406
- } | {
3407
- sqlite: {
3408
- path: string;
3409
- encryption?: {
3410
- secret: string;
3411
- } | undefined;
3412
- ttlCleanupIntervalMs?: number | undefined;
3413
- walMode?: boolean | undefined;
3414
- };
3415
- };
3416
- allowDefaultPublic: boolean;
3417
- anonymousScopes: string[];
3418
- requireRegisteredClients: boolean;
3419
- provider: string;
3420
- mode: "remote";
3421
- local?: {
3422
- signKey?: Uint8Array<ArrayBuffer> | import("libs/auth/dist/common/jwt.types").JWK | undefined;
3423
- jwks?: {
3424
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
3425
- } | undefined;
3426
- issuer?: string | undefined;
3427
- } | undefined;
3428
- secureStore?: "memory" | {
3429
- sqlite: {
3430
- path: string;
3431
- encryption?: {
3432
- secret: string;
3433
- } | undefined;
3434
- ttlCleanupIntervalMs?: number | undefined;
3435
- walMode?: boolean | undefined;
3436
- };
3437
- scope?: "user" | "session" | "global" | undefined;
3438
- ttlMs?: number | undefined;
3439
- encryption?: {
3440
- pepper?: string | undefined;
3441
- } | undefined;
3442
- } | {
3443
- redis: {
3444
- host: string;
3445
- port: number;
3446
- db: number;
3447
- tls: boolean;
3448
- keyPrefix: string;
3449
- defaultTtlMs: number;
3450
- password?: string | undefined;
3451
- };
3452
- scope?: "user" | "session" | "global" | undefined;
3453
- ttlMs?: number | undefined;
3454
- encryption?: {
3455
- pepper?: string | undefined;
3456
- } | undefined;
3457
- } | {
3458
- backend: import("libs/auth/dist/options/interfaces").SecureStoreCustomBackend;
3459
- scope?: "user" | "session" | "global" | undefined;
3460
- ttlMs?: number | undefined;
3461
- encryption?: {
3462
- pepper?: string | undefined;
3463
- } | undefined;
3464
- } | {
3465
- scope?: "user" | "session" | "global" | undefined;
3466
- ttlMs?: number | undefined;
3467
- encryption?: {
3468
- pepper?: string | undefined;
3469
- } | undefined;
3470
- } | undefined;
3471
- publicAccess?: {
3472
- tools: string[] | "all";
3473
- prompts: string[] | "all";
3474
- rateLimit: number;
3475
- } | undefined;
3476
- consent?: {
3477
- enabled: boolean;
3478
- groupByApp: boolean;
3479
- showDescriptions: boolean;
3480
- allowSelectAll: boolean;
3481
- requireSelection: boolean;
3482
- rememberConsent: boolean;
3483
- customMessage?: string | undefined;
3484
- excludedTools?: string[] | undefined;
3485
- defaultSelectedTools?: string[] | undefined;
3486
- } | undefined;
3487
- federatedAuth?: {
3488
- stateValidation: "format" | "strict";
3489
- minProviders?: number | undefined;
3490
- requiredProviders?: string[] | undefined;
3491
- } | undefined;
3492
- refresh?: {
3493
- enabled: boolean;
3494
- skewSeconds: number;
3495
- } | undefined;
3496
- expectedAudience?: string | string[] | undefined;
3497
- incrementalAuth?: {
3498
- enabled: boolean;
3499
- skippedAppBehavior: "anonymous" | "require-auth";
3500
- allowSkip: boolean;
3501
- showAllAppsAtOnce: boolean;
3502
- } | undefined;
3503
- cimd?: {
3504
- enabled: boolean;
3505
- cache?: {
3506
- type: "redis" | "memory";
3507
- defaultTtlMs: number;
3508
- maxTtlMs: number;
3509
- minTtlMs: number;
3510
- redis?: {
3511
- keyPrefix: string;
3512
- url?: string | undefined;
3513
- host?: string | undefined;
3514
- port?: number | undefined;
3515
- password?: string | undefined;
3516
- db?: number | undefined;
3517
- tls?: boolean | undefined;
3518
- } | undefined;
3519
- } | undefined;
3520
- security?: {
3521
- blockPrivateIPs: boolean;
3522
- warnOnLocalhostRedirects: boolean;
3523
- allowInsecureForTesting: boolean;
3524
- allowedDomains?: string[] | undefined;
3525
- blockedDomains?: string[] | undefined;
3526
- } | undefined;
3527
- network?: {
3528
- timeoutMs: number;
3529
- maxResponseSizeBytes: number;
3530
- redirectPolicy: "allow" | "deny" | "same-origin";
3531
- maxRedirects: number;
3532
- } | undefined;
3533
- } | undefined;
3534
- ui?: Partial<Record<"error" | "login" | "consent" | "incremental" | "federated", string>> | undefined;
3535
- extras?: Record<string, import("libs/auth/dist/options/interfaces").AuthExtraHandler> | undefined;
3536
- clientId?: string | undefined;
3537
- clientSecret?: string | undefined;
3538
- scopes?: string[] | undefined;
3539
- providerConfig?: {
3540
- dcrEnabled: boolean;
3541
- name?: string | undefined;
3542
- id?: string | undefined;
3543
- jwks?: {
3544
- keys: import("libs/auth/dist/common/jwt.types").JWK[];
3545
- } | undefined;
3546
- jwksUri?: string | undefined;
3547
- additionalIssuers?: string[] | undefined;
3548
- verifyIssuer?: boolean | undefined;
3549
- authEndpoint?: string | undefined;
3550
- tokenEndpoint?: string | undefined;
3551
- registrationEndpoint?: string | undefined;
3552
- userInfoEndpoint?: string | undefined;
3553
- } | undefined;
3554
- } | undefined;
3555
- }>]> | ProviderValueType<FrontMcpServer>)[];
1
+ import { type FrontMcpConfigType, type ProviderType } from '../common';
2
+ export declare function createMcpGlobalProviders(metadata: FrontMcpConfigType): ProviderType[];
3556
3
  //# sourceMappingURL=front-mcp.providers.d.ts.map