opalserve 0.1.2 → 3.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (310) hide show
  1. package/README.md +108 -115
  2. package/assets/logo.svg +51 -0
  3. package/dist/auth/api-keys.d.ts +7 -0
  4. package/dist/auth/api-keys.d.ts.map +1 -0
  5. package/dist/auth/api-keys.js +12 -0
  6. package/dist/auth/api-keys.js.map +1 -0
  7. package/dist/auth/index.d.ts +4 -0
  8. package/dist/auth/index.d.ts.map +1 -0
  9. package/dist/auth/index.js +4 -0
  10. package/dist/auth/index.js.map +1 -0
  11. package/dist/auth/middleware.d.ts +11 -0
  12. package/dist/auth/middleware.d.ts.map +1 -0
  13. package/dist/auth/middleware.js +46 -0
  14. package/dist/auth/middleware.js.map +1 -0
  15. package/dist/auth/passwords.d.ts +3 -0
  16. package/dist/auth/passwords.d.ts.map +1 -0
  17. package/dist/auth/passwords.js +33 -0
  18. package/dist/auth/passwords.js.map +1 -0
  19. package/dist/cli/commands/admin.d.ts +13 -0
  20. package/dist/cli/commands/admin.d.ts.map +1 -0
  21. package/dist/cli/commands/admin.js +261 -0
  22. package/dist/cli/commands/admin.js.map +1 -0
  23. package/dist/cli/commands/auth.d.ts +4 -0
  24. package/dist/cli/commands/auth.d.ts.map +1 -0
  25. package/dist/cli/commands/auth.js +77 -0
  26. package/dist/cli/commands/auth.js.map +1 -0
  27. package/dist/cli/commands/context.d.ts +5 -0
  28. package/dist/cli/commands/context.d.ts.map +1 -0
  29. package/dist/cli/commands/context.js +190 -0
  30. package/dist/cli/commands/context.js.map +1 -0
  31. package/dist/cli/commands/health.d.ts +4 -0
  32. package/dist/cli/commands/health.d.ts.map +1 -0
  33. package/dist/cli/commands/health.js +36 -0
  34. package/dist/cli/commands/health.js.map +1 -0
  35. package/dist/cli/commands/init.d.ts +2 -0
  36. package/dist/cli/commands/init.d.ts.map +1 -0
  37. package/dist/cli/commands/init.js +81 -0
  38. package/dist/cli/commands/init.js.map +1 -0
  39. package/dist/cli/commands/server.d.ts +10 -0
  40. package/dist/cli/commands/server.d.ts.map +1 -0
  41. package/dist/cli/commands/server.js +108 -0
  42. package/dist/cli/commands/server.js.map +1 -0
  43. package/dist/cli/commands/start.d.ts +6 -0
  44. package/dist/cli/commands/start.d.ts.map +1 -0
  45. package/dist/cli/commands/start.js +63 -0
  46. package/dist/cli/commands/start.js.map +1 -0
  47. package/dist/cli/commands/status.d.ts +2 -0
  48. package/dist/cli/commands/status.d.ts.map +1 -0
  49. package/dist/cli/commands/status.js +21 -0
  50. package/dist/cli/commands/status.js.map +1 -0
  51. package/dist/cli/commands/sync.d.ts +2 -0
  52. package/dist/cli/commands/sync.d.ts.map +1 -0
  53. package/dist/cli/commands/sync.js +58 -0
  54. package/dist/cli/commands/sync.js.map +1 -0
  55. package/dist/cli/commands/tools.d.ts +8 -0
  56. package/dist/cli/commands/tools.d.ts.map +1 -0
  57. package/dist/cli/commands/tools.js +28 -0
  58. package/dist/cli/commands/tools.js.map +1 -0
  59. package/dist/cli/index.d.ts +1 -1
  60. package/dist/cli/index.d.ts.map +1 -1
  61. package/dist/cli/index.js +156 -30
  62. package/dist/cli/index.js.map +1 -1
  63. package/dist/cli/ui/banner.d.ts +8 -0
  64. package/dist/cli/ui/banner.d.ts.map +1 -0
  65. package/dist/cli/ui/banner.js +54 -0
  66. package/dist/cli/ui/banner.js.map +1 -0
  67. package/dist/cli/ui/prompts.d.ts +11 -0
  68. package/dist/cli/ui/prompts.d.ts.map +1 -0
  69. package/dist/cli/ui/prompts.js +74 -0
  70. package/dist/cli/ui/prompts.js.map +1 -0
  71. package/dist/cli/ui/table.d.ts +5 -0
  72. package/dist/cli/ui/table.d.ts.map +1 -0
  73. package/dist/cli/ui/table.js +103 -0
  74. package/dist/cli/ui/table.js.map +1 -0
  75. package/dist/config/credentials.d.ts +10 -0
  76. package/dist/config/credentials.d.ts.map +1 -0
  77. package/dist/config/credentials.js +33 -0
  78. package/dist/config/credentials.js.map +1 -0
  79. package/dist/config/defaults.d.ts +5 -0
  80. package/dist/config/defaults.d.ts.map +1 -0
  81. package/dist/config/defaults.js +20 -0
  82. package/dist/config/defaults.js.map +1 -0
  83. package/dist/config/loader.d.ts +4 -0
  84. package/dist/config/loader.d.ts.map +1 -0
  85. package/dist/config/loader.js +57 -0
  86. package/dist/config/loader.js.map +1 -0
  87. package/dist/config/schema.d.ts +2 -0
  88. package/dist/config/schema.d.ts.map +1 -0
  89. package/dist/config/schema.js +2 -0
  90. package/dist/config/schema.js.map +1 -0
  91. package/dist/constants.d.ts +5 -0
  92. package/dist/constants.d.ts.map +1 -0
  93. package/dist/constants.js +5 -0
  94. package/dist/constants.js.map +1 -0
  95. package/dist/context/chunker.d.ts +2 -0
  96. package/dist/context/chunker.d.ts.map +1 -0
  97. package/dist/context/chunker.js +81 -0
  98. package/dist/context/chunker.js.map +1 -0
  99. package/dist/context/index.d.ts +26 -0
  100. package/dist/context/index.d.ts.map +1 -0
  101. package/dist/context/index.js +97 -0
  102. package/dist/context/index.js.map +1 -0
  103. package/dist/core/discovery.d.ts +17 -0
  104. package/dist/core/discovery.d.ts.map +1 -0
  105. package/dist/core/discovery.js +31 -0
  106. package/dist/core/discovery.js.map +1 -0
  107. package/dist/core/proxy.d.ts +14 -0
  108. package/dist/core/proxy.d.ts.map +1 -0
  109. package/dist/core/proxy.js +36 -0
  110. package/dist/core/proxy.js.map +1 -0
  111. package/dist/core/registry.d.ts +30 -31
  112. package/dist/core/registry.d.ts.map +1 -1
  113. package/dist/core/registry.js +92 -234
  114. package/dist/core/registry.js.map +1 -1
  115. package/dist/core/secrets.d.ts +4 -0
  116. package/dist/core/secrets.d.ts.map +1 -0
  117. package/dist/core/secrets.js +40 -0
  118. package/dist/core/secrets.js.map +1 -0
  119. package/dist/core/server-manager.d.ts +18 -0
  120. package/dist/core/server-manager.d.ts.map +1 -0
  121. package/dist/core/server-manager.js +120 -0
  122. package/dist/core/server-manager.js.map +1 -0
  123. package/dist/dashboard/assets/index-BNOtcUPs.js +257 -0
  124. package/dist/dashboard/assets/index-Duwp34GW.css +1 -0
  125. package/dist/dashboard/index.html +14 -0
  126. package/dist/index.d.ts +22 -12
  127. package/dist/index.d.ts.map +1 -1
  128. package/dist/index.js +31 -9
  129. package/dist/index.js.map +1 -1
  130. package/dist/integrations/github.d.ts +5 -0
  131. package/dist/integrations/github.d.ts.map +1 -0
  132. package/dist/integrations/github.js +63 -0
  133. package/dist/integrations/github.js.map +1 -0
  134. package/dist/integrations/slack.d.ts +21 -0
  135. package/dist/integrations/slack.d.ts.map +1 -0
  136. package/dist/integrations/slack.js +61 -0
  137. package/dist/integrations/slack.js.map +1 -0
  138. package/dist/monitoring/tracker.d.ts +31 -0
  139. package/dist/monitoring/tracker.d.ts.map +1 -0
  140. package/dist/monitoring/tracker.js +86 -0
  141. package/dist/monitoring/tracker.js.map +1 -0
  142. package/dist/server/app.d.ts +8 -0
  143. package/dist/server/app.d.ts.map +1 -0
  144. package/dist/server/app.js +81 -0
  145. package/dist/server/app.js.map +1 -0
  146. package/dist/server/mcp-gateway.d.ts +12 -0
  147. package/dist/server/mcp-gateway.d.ts.map +1 -0
  148. package/dist/server/mcp-gateway.js +91 -0
  149. package/dist/server/mcp-gateway.js.map +1 -0
  150. package/dist/server/routes/auth.d.ts +4 -0
  151. package/dist/server/routes/auth.d.ts.map +1 -0
  152. package/dist/server/routes/auth.js +117 -0
  153. package/dist/server/routes/auth.js.map +1 -0
  154. package/dist/server/routes/context.d.ts +4 -0
  155. package/dist/server/routes/context.d.ts.map +1 -0
  156. package/dist/server/routes/context.js +107 -0
  157. package/dist/server/routes/context.js.map +1 -0
  158. package/dist/server/routes/health.d.ts +4 -0
  159. package/dist/server/routes/health.d.ts.map +1 -0
  160. package/dist/server/routes/health.js +22 -0
  161. package/dist/server/routes/health.js.map +1 -0
  162. package/dist/server/routes/servers.d.ts +4 -0
  163. package/dist/server/routes/servers.d.ts.map +1 -0
  164. package/dist/server/routes/servers.js +47 -0
  165. package/dist/server/routes/servers.js.map +1 -0
  166. package/dist/server/routes/stats.d.ts +4 -0
  167. package/dist/server/routes/stats.d.ts.map +1 -0
  168. package/dist/server/routes/stats.js +97 -0
  169. package/dist/server/routes/stats.js.map +1 -0
  170. package/dist/server/routes/team-servers.d.ts +4 -0
  171. package/dist/server/routes/team-servers.d.ts.map +1 -0
  172. package/dist/server/routes/team-servers.js +108 -0
  173. package/dist/server/routes/team-servers.js.map +1 -0
  174. package/dist/server/routes/tools.d.ts +4 -0
  175. package/dist/server/routes/tools.d.ts.map +1 -0
  176. package/dist/server/routes/tools.js +44 -0
  177. package/dist/server/routes/tools.js.map +1 -0
  178. package/dist/server/routes/webhooks.d.ts +4 -0
  179. package/dist/server/routes/webhooks.d.ts.map +1 -0
  180. package/dist/server/routes/webhooks.js +77 -0
  181. package/dist/server/routes/webhooks.js.map +1 -0
  182. package/dist/storage/database.d.ts +48 -0
  183. package/dist/storage/database.d.ts.map +1 -0
  184. package/dist/storage/database.js +336 -0
  185. package/dist/storage/database.js.map +1 -0
  186. package/dist/storage/repositories/server-repo.d.ts +2 -0
  187. package/dist/storage/repositories/server-repo.d.ts.map +1 -0
  188. package/dist/storage/repositories/server-repo.js +3 -0
  189. package/dist/storage/repositories/server-repo.js.map +1 -0
  190. package/dist/storage/repositories/tool-repo.d.ts +2 -0
  191. package/dist/storage/repositories/tool-repo.d.ts.map +1 -0
  192. package/dist/storage/repositories/tool-repo.js +3 -0
  193. package/dist/storage/repositories/tool-repo.js.map +1 -0
  194. package/dist/types/index.d.ts +482 -587
  195. package/dist/types/index.d.ts.map +1 -1
  196. package/dist/types/index.js +52 -69
  197. package/dist/types/index.js.map +1 -1
  198. package/dist/utils/logger.d.ts +7 -0
  199. package/dist/utils/logger.d.ts.map +1 -0
  200. package/dist/utils/logger.js +23 -0
  201. package/dist/utils/logger.js.map +1 -0
  202. package/package.json +67 -56
  203. package/.env.example +0 -19
  204. package/config/servers.example.yaml +0 -67
  205. package/config/servers.yaml +0 -2
  206. package/dist/cli/discover.d.ts +0 -3
  207. package/dist/cli/discover.d.ts.map +0 -1
  208. package/dist/cli/discover.js +0 -160
  209. package/dist/cli/discover.js.map +0 -1
  210. package/dist/connectors/base.d.ts +0 -49
  211. package/dist/connectors/base.d.ts.map +0 -1
  212. package/dist/connectors/base.js +0 -45
  213. package/dist/connectors/base.js.map +0 -1
  214. package/dist/connectors/custom.d.ts +0 -19
  215. package/dist/connectors/custom.d.ts.map +0 -1
  216. package/dist/connectors/custom.js +0 -129
  217. package/dist/connectors/custom.js.map +0 -1
  218. package/dist/connectors/github.d.ts +0 -18
  219. package/dist/connectors/github.d.ts.map +0 -1
  220. package/dist/connectors/github.js +0 -188
  221. package/dist/connectors/github.js.map +0 -1
  222. package/dist/connectors/google-drive.d.ts +0 -18
  223. package/dist/connectors/google-drive.d.ts.map +0 -1
  224. package/dist/connectors/google-drive.js +0 -209
  225. package/dist/connectors/google-drive.js.map +0 -1
  226. package/dist/connectors/index.d.ts +0 -11
  227. package/dist/connectors/index.d.ts.map +0 -1
  228. package/dist/connectors/index.js +0 -76
  229. package/dist/connectors/index.js.map +0 -1
  230. package/dist/connectors/postgres.d.ts +0 -18
  231. package/dist/connectors/postgres.d.ts.map +0 -1
  232. package/dist/connectors/postgres.js +0 -140
  233. package/dist/connectors/postgres.js.map +0 -1
  234. package/dist/connectors/slack.d.ts +0 -18
  235. package/dist/connectors/slack.d.ts.map +0 -1
  236. package/dist/connectors/slack.js +0 -181
  237. package/dist/connectors/slack.js.map +0 -1
  238. package/dist/core/auth.d.ts +0 -26
  239. package/dist/core/auth.d.ts.map +0 -1
  240. package/dist/core/auth.js +0 -81
  241. package/dist/core/auth.js.map +0 -1
  242. package/dist/core/tokenizer.d.ts +0 -16
  243. package/dist/core/tokenizer.d.ts.map +0 -1
  244. package/dist/core/tokenizer.js +0 -29
  245. package/dist/core/tokenizer.js.map +0 -1
  246. package/dist/governance/audit.d.ts +0 -27
  247. package/dist/governance/audit.d.ts.map +0 -1
  248. package/dist/governance/audit.js +0 -149
  249. package/dist/governance/audit.js.map +0 -1
  250. package/dist/governance/index.d.ts +0 -5
  251. package/dist/governance/index.d.ts.map +0 -1
  252. package/dist/governance/index.js +0 -5
  253. package/dist/governance/index.js.map +0 -1
  254. package/dist/governance/policy.d.ts +0 -20
  255. package/dist/governance/policy.d.ts.map +0 -1
  256. package/dist/governance/policy.js +0 -162
  257. package/dist/governance/policy.js.map +0 -1
  258. package/dist/governance/rate-limiter.d.ts +0 -20
  259. package/dist/governance/rate-limiter.d.ts.map +0 -1
  260. package/dist/governance/rate-limiter.js +0 -73
  261. package/dist/governance/rate-limiter.js.map +0 -1
  262. package/dist/governance/types.d.ts +0 -246
  263. package/dist/governance/types.d.ts.map +0 -1
  264. package/dist/governance/types.js +0 -72
  265. package/dist/governance/types.js.map +0 -1
  266. package/dist/identity/access-control.d.ts +0 -15
  267. package/dist/identity/access-control.d.ts.map +0 -1
  268. package/dist/identity/access-control.js +0 -81
  269. package/dist/identity/access-control.js.map +0 -1
  270. package/dist/identity/index.d.ts +0 -4
  271. package/dist/identity/index.d.ts.map +0 -1
  272. package/dist/identity/index.js +0 -4
  273. package/dist/identity/index.js.map +0 -1
  274. package/dist/identity/manager.d.ts +0 -29
  275. package/dist/identity/manager.d.ts.map +0 -1
  276. package/dist/identity/manager.js +0 -167
  277. package/dist/identity/manager.js.map +0 -1
  278. package/dist/identity/types.d.ts +0 -237
  279. package/dist/identity/types.d.ts.map +0 -1
  280. package/dist/identity/types.js +0 -80
  281. package/dist/identity/types.js.map +0 -1
  282. package/dist/registry/server.d.ts +0 -14
  283. package/dist/registry/server.d.ts.map +0 -1
  284. package/dist/registry/server.js +0 -177
  285. package/dist/registry/server.js.map +0 -1
  286. package/dist/utils/config.d.ts +0 -29
  287. package/dist/utils/config.d.ts.map +0 -1
  288. package/dist/utils/config.js +0 -47
  289. package/dist/utils/config.js.map +0 -1
  290. package/dist/utils/index.d.ts +0 -7
  291. package/dist/utils/index.d.ts.map +0 -1
  292. package/dist/utils/index.js +0 -44
  293. package/dist/utils/index.js.map +0 -1
  294. package/dist/workflow/engine.d.ts +0 -18
  295. package/dist/workflow/engine.d.ts.map +0 -1
  296. package/dist/workflow/engine.js +0 -155
  297. package/dist/workflow/engine.js.map +0 -1
  298. package/dist/workflow/index.d.ts +0 -4
  299. package/dist/workflow/index.d.ts.map +0 -1
  300. package/dist/workflow/index.js +0 -4
  301. package/dist/workflow/index.js.map +0 -1
  302. package/dist/workflow/templates.d.ts +0 -4
  303. package/dist/workflow/templates.d.ts.map +0 -1
  304. package/dist/workflow/templates.js +0 -218
  305. package/dist/workflow/templates.js.map +0 -1
  306. package/dist/workflow/types.d.ts +0 -255
  307. package/dist/workflow/types.d.ts.map +0 -1
  308. package/dist/workflow/types.js +0 -48
  309. package/dist/workflow/types.js.map +0 -1
  310. package/eslint.config.js +0 -25
@@ -1,639 +1,534 @@
1
1
  import { z } from 'zod';
2
- export declare const ToolSchema: z.ZodObject<{
3
- id: z.ZodString;
2
+ export declare const StdioTransportSchema: z.ZodObject<{
3
+ type: z.ZodLiteral<"stdio">;
4
+ command: z.ZodString;
5
+ args: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
6
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
7
+ cwd: z.ZodOptional<z.ZodString>;
8
+ }, "strip", z.ZodTypeAny, {
9
+ type: "stdio";
10
+ command: string;
11
+ args: string[];
12
+ env?: Record<string, string> | undefined;
13
+ cwd?: string | undefined;
14
+ }, {
15
+ type: "stdio";
16
+ command: string;
17
+ args?: string[] | undefined;
18
+ env?: Record<string, string> | undefined;
19
+ cwd?: string | undefined;
20
+ }>;
21
+ export declare const SseTransportSchema: z.ZodObject<{
22
+ type: z.ZodLiteral<"sse">;
23
+ url: z.ZodString;
24
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
25
+ }, "strip", z.ZodTypeAny, {
26
+ type: "sse";
27
+ url: string;
28
+ headers?: Record<string, string> | undefined;
29
+ }, {
30
+ type: "sse";
31
+ url: string;
32
+ headers?: Record<string, string> | undefined;
33
+ }>;
34
+ export declare const StreamableHttpTransportSchema: z.ZodObject<{
35
+ type: z.ZodLiteral<"streamable-http">;
36
+ url: z.ZodString;
37
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
38
+ }, "strip", z.ZodTypeAny, {
39
+ type: "streamable-http";
40
+ url: string;
41
+ headers?: Record<string, string> | undefined;
42
+ }, {
43
+ type: "streamable-http";
44
+ url: string;
45
+ headers?: Record<string, string> | undefined;
46
+ }>;
47
+ export declare const TransportConfigSchema: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
48
+ type: z.ZodLiteral<"stdio">;
49
+ command: z.ZodString;
50
+ args: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
51
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
52
+ cwd: z.ZodOptional<z.ZodString>;
53
+ }, "strip", z.ZodTypeAny, {
54
+ type: "stdio";
55
+ command: string;
56
+ args: string[];
57
+ env?: Record<string, string> | undefined;
58
+ cwd?: string | undefined;
59
+ }, {
60
+ type: "stdio";
61
+ command: string;
62
+ args?: string[] | undefined;
63
+ env?: Record<string, string> | undefined;
64
+ cwd?: string | undefined;
65
+ }>, z.ZodObject<{
66
+ type: z.ZodLiteral<"sse">;
67
+ url: z.ZodString;
68
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
69
+ }, "strip", z.ZodTypeAny, {
70
+ type: "sse";
71
+ url: string;
72
+ headers?: Record<string, string> | undefined;
73
+ }, {
74
+ type: "sse";
75
+ url: string;
76
+ headers?: Record<string, string> | undefined;
77
+ }>, z.ZodObject<{
78
+ type: z.ZodLiteral<"streamable-http">;
79
+ url: z.ZodString;
80
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
81
+ }, "strip", z.ZodTypeAny, {
82
+ type: "streamable-http";
83
+ url: string;
84
+ headers?: Record<string, string> | undefined;
85
+ }, {
86
+ type: "streamable-http";
87
+ url: string;
88
+ headers?: Record<string, string> | undefined;
89
+ }>]>;
90
+ export declare const McpServerConfigSchema: z.ZodObject<{
4
91
  name: z.ZodString;
5
- description: z.ZodString;
6
- serverId: z.ZodString;
7
- serverName: z.ZodString;
8
- inputSchema: z.ZodRecord<z.ZodString, z.ZodAny>;
9
- outputSchema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
10
- tags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
11
- capabilities: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
12
- authRequirements: z.ZodDefault<z.ZodObject<{
13
- required: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
14
- optional: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
92
+ transport: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
93
+ type: z.ZodLiteral<"stdio">;
94
+ command: z.ZodString;
95
+ args: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
96
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
97
+ cwd: z.ZodOptional<z.ZodString>;
15
98
  }, "strip", z.ZodTypeAny, {
16
- required: string[];
17
- optional: string[];
99
+ type: "stdio";
100
+ command: string;
101
+ args: string[];
102
+ env?: Record<string, string> | undefined;
103
+ cwd?: string | undefined;
18
104
  }, {
19
- required?: string[] | undefined;
20
- optional?: string[] | undefined;
21
- }>>;
22
- rateLimits: z.ZodOptional<z.ZodObject<{
23
- requestsPerMinute: z.ZodOptional<z.ZodNumber>;
24
- requestsPerHour: z.ZodOptional<z.ZodNumber>;
105
+ type: "stdio";
106
+ command: string;
107
+ args?: string[] | undefined;
108
+ env?: Record<string, string> | undefined;
109
+ cwd?: string | undefined;
110
+ }>, z.ZodObject<{
111
+ type: z.ZodLiteral<"sse">;
112
+ url: z.ZodString;
113
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
25
114
  }, "strip", z.ZodTypeAny, {
26
- requestsPerMinute?: number | undefined;
27
- requestsPerHour?: number | undefined;
115
+ type: "sse";
116
+ url: string;
117
+ headers?: Record<string, string> | undefined;
28
118
  }, {
29
- requestsPerMinute?: number | undefined;
30
- requestsPerHour?: number | undefined;
31
- }>>;
32
- contextRequirements: z.ZodDefault<z.ZodObject<{
33
- minTokens: z.ZodDefault<z.ZodNumber>;
34
- maxTokens: z.ZodDefault<z.ZodNumber>;
119
+ type: "sse";
120
+ url: string;
121
+ headers?: Record<string, string> | undefined;
122
+ }>, z.ZodObject<{
123
+ type: z.ZodLiteral<"streamable-http">;
124
+ url: z.ZodString;
125
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
35
126
  }, "strip", z.ZodTypeAny, {
36
- minTokens: number;
37
- maxTokens: number;
127
+ type: "streamable-http";
128
+ url: string;
129
+ headers?: Record<string, string> | undefined;
38
130
  }, {
39
- minTokens?: number | undefined;
40
- maxTokens?: number | undefined;
41
- }>>;
42
- metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodAny>>;
43
- createdAt: z.ZodString;
44
- updatedAt: z.ZodString;
131
+ type: "streamable-http";
132
+ url: string;
133
+ headers?: Record<string, string> | undefined;
134
+ }>]>;
135
+ enabled: z.ZodDefault<z.ZodBoolean>;
136
+ tags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
137
+ autoConnect: z.ZodDefault<z.ZodBoolean>;
45
138
  }, "strip", z.ZodTypeAny, {
46
- id: string;
47
139
  name: string;
48
- description: string;
49
- serverId: string;
50
- serverName: string;
51
- inputSchema: Record<string, any>;
52
- tags: string[];
53
- capabilities: string[];
54
- authRequirements: {
55
- required: string[];
56
- optional: string[];
140
+ transport: {
141
+ type: "stdio";
142
+ command: string;
143
+ args: string[];
144
+ env?: Record<string, string> | undefined;
145
+ cwd?: string | undefined;
146
+ } | {
147
+ type: "sse";
148
+ url: string;
149
+ headers?: Record<string, string> | undefined;
150
+ } | {
151
+ type: "streamable-http";
152
+ url: string;
153
+ headers?: Record<string, string> | undefined;
57
154
  };
58
- contextRequirements: {
59
- minTokens: number;
60
- maxTokens: number;
61
- };
62
- metadata: Record<string, any>;
63
- createdAt: string;
64
- updatedAt: string;
65
- outputSchema?: Record<string, any> | undefined;
66
- rateLimits?: {
67
- requestsPerMinute?: number | undefined;
68
- requestsPerHour?: number | undefined;
69
- } | undefined;
155
+ enabled: boolean;
156
+ tags: string[];
157
+ autoConnect: boolean;
70
158
  }, {
71
- id: string;
72
159
  name: string;
73
- description: string;
74
- serverId: string;
75
- serverName: string;
76
- inputSchema: Record<string, any>;
77
- createdAt: string;
78
- updatedAt: string;
79
- outputSchema?: Record<string, any> | undefined;
160
+ transport: {
161
+ type: "stdio";
162
+ command: string;
163
+ args?: string[] | undefined;
164
+ env?: Record<string, string> | undefined;
165
+ cwd?: string | undefined;
166
+ } | {
167
+ type: "sse";
168
+ url: string;
169
+ headers?: Record<string, string> | undefined;
170
+ } | {
171
+ type: "streamable-http";
172
+ url: string;
173
+ headers?: Record<string, string> | undefined;
174
+ };
175
+ enabled?: boolean | undefined;
80
176
  tags?: string[] | undefined;
81
- capabilities?: string[] | undefined;
82
- authRequirements?: {
83
- required?: string[] | undefined;
84
- optional?: string[] | undefined;
85
- } | undefined;
86
- rateLimits?: {
87
- requestsPerMinute?: number | undefined;
88
- requestsPerHour?: number | undefined;
89
- } | undefined;
90
- contextRequirements?: {
91
- minTokens?: number | undefined;
92
- maxTokens?: number | undefined;
93
- } | undefined;
94
- metadata?: Record<string, any> | undefined;
177
+ autoConnect?: boolean | undefined;
95
178
  }>;
96
- export type Tool = z.infer<typeof ToolSchema>;
97
- export declare const ServerSchema: z.ZodObject<{
98
- id: z.ZodString;
99
- name: z.ZodString;
100
- type: z.ZodEnum<["github", "slack", "postgres", "google-drive", "custom", "http"]>;
101
- status: z.ZodEnum<["active", "inactive", "error", "connecting"]>;
102
- endpoint: z.ZodOptional<z.ZodString>;
103
- localCommand: z.ZodOptional<z.ZodString>;
104
- description: z.ZodString;
105
- version: z.ZodDefault<z.ZodString>;
106
- capabilities: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
107
- tags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
108
- health: z.ZodDefault<z.ZodObject<{
109
- status: z.ZodEnum<["healthy", "degraded", "unhealthy"]>;
110
- lastChecked: z.ZodString;
111
- responseTimeMs: z.ZodOptional<z.ZodNumber>;
112
- errorCount: z.ZodDefault<z.ZodNumber>;
113
- }, "strip", z.ZodTypeAny, {
114
- status: "healthy" | "degraded" | "unhealthy";
115
- lastChecked: string;
116
- errorCount: number;
117
- responseTimeMs?: number | undefined;
118
- }, {
119
- status: "healthy" | "degraded" | "unhealthy";
120
- lastChecked: string;
121
- responseTimeMs?: number | undefined;
122
- errorCount?: number | undefined;
123
- }>>;
124
- auth: z.ZodDefault<z.ZodObject<{
125
- type: z.ZodEnum<["none", "api-key", "oauth", "jwt", "basic"]>;
126
- configured: z.ZodDefault<z.ZodBoolean>;
127
- }, "strip", z.ZodTypeAny, {
128
- type: "none" | "api-key" | "oauth" | "jwt" | "basic";
129
- configured: boolean;
130
- }, {
131
- type: "none" | "api-key" | "oauth" | "jwt" | "basic";
132
- configured?: boolean | undefined;
133
- }>>;
134
- metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodAny>>;
135
- registeredAt: z.ZodString;
136
- lastSeen: z.ZodString;
137
- }, "strip", z.ZodTypeAny, {
138
- id: string;
179
+ export type McpServerConfig = z.infer<typeof McpServerConfigSchema>;
180
+ export type TransportConfig = z.infer<typeof TransportConfigSchema>;
181
+ export declare const ServerStatusSchema: z.ZodEnum<["connecting", "connected", "disconnected", "error"]>;
182
+ export type ServerStatus = z.infer<typeof ServerStatusSchema>;
183
+ export interface ConnectedServer {
139
184
  name: string;
140
- description: string;
141
- status: "active" | "inactive" | "error" | "connecting";
142
- type: "custom" | "github" | "slack" | "postgres" | "google-drive" | "http";
143
- tags: string[];
144
- capabilities: string[];
145
- metadata: Record<string, any>;
146
- version: string;
147
- health: {
148
- status: "healthy" | "degraded" | "unhealthy";
149
- lastChecked: string;
150
- errorCount: number;
151
- responseTimeMs?: number | undefined;
152
- };
153
- auth: {
154
- type: "none" | "api-key" | "oauth" | "jwt" | "basic";
155
- configured: boolean;
156
- };
157
- registeredAt: string;
185
+ status: ServerStatus;
186
+ transport: 'stdio' | 'sse' | 'streamable-http';
187
+ toolCount: number;
158
188
  lastSeen: string;
159
- endpoint?: string | undefined;
160
- localCommand?: string | undefined;
161
- }, {
189
+ error: string | null;
190
+ serverInfo: {
191
+ name: string;
192
+ version: string;
193
+ } | null;
194
+ }
195
+ export interface ToolAnnotations {
196
+ title?: string;
197
+ readOnlyHint?: boolean;
198
+ destructiveHint?: boolean;
199
+ idempotentHint?: boolean;
200
+ openWorldHint?: boolean;
201
+ }
202
+ export interface IndexedTool {
162
203
  id: string;
204
+ serverName: string;
163
205
  name: string;
164
206
  description: string;
165
- status: "active" | "inactive" | "error" | "connecting";
166
- type: "custom" | "github" | "slack" | "postgres" | "google-drive" | "http";
167
- registeredAt: string;
168
- lastSeen: string;
169
- tags?: string[] | undefined;
170
- capabilities?: string[] | undefined;
171
- metadata?: Record<string, any> | undefined;
172
- endpoint?: string | undefined;
173
- localCommand?: string | undefined;
174
- version?: string | undefined;
175
- health?: {
176
- status: "healthy" | "degraded" | "unhealthy";
177
- lastChecked: string;
178
- responseTimeMs?: number | undefined;
179
- errorCount?: number | undefined;
180
- } | undefined;
181
- auth?: {
182
- type: "none" | "api-key" | "oauth" | "jwt" | "basic";
183
- configured?: boolean | undefined;
184
- } | undefined;
207
+ inputSchema: unknown;
208
+ annotations?: ToolAnnotations;
209
+ discoveredAt: string;
210
+ lastVerified: string;
211
+ }
212
+ export interface SearchResult {
213
+ tool: IndexedTool;
214
+ score: number;
215
+ }
216
+ export declare const GatewayConfigSchema: z.ZodObject<{
217
+ port: z.ZodDefault<z.ZodNumber>;
218
+ host: z.ZodDefault<z.ZodString>;
219
+ }, "strip", z.ZodTypeAny, {
220
+ port: number;
221
+ host: string;
222
+ }, {
223
+ port?: number | undefined;
224
+ host?: string | undefined;
185
225
  }>;
186
- export type Server = z.infer<typeof ServerSchema>;
187
- export declare const DiscoveryQuerySchema: z.ZodObject<{
188
- query: z.ZodOptional<z.ZodString>;
189
- capabilities: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
190
- tags: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
191
- limit: z.ZodDefault<z.ZodNumber>;
192
- offset: z.ZodDefault<z.ZodNumber>;
193
- contextBudget: z.ZodDefault<z.ZodNumber>;
194
- includeServers: z.ZodDefault<z.ZodBoolean>;
226
+ export declare const StorageConfigSchema: z.ZodObject<{
227
+ path: z.ZodDefault<z.ZodString>;
195
228
  }, "strip", z.ZodTypeAny, {
196
- limit: number;
197
- offset: number;
198
- contextBudget: number;
199
- includeServers: boolean;
200
- tags?: string[] | undefined;
201
- capabilities?: string[] | undefined;
202
- query?: string | undefined;
229
+ path: string;
203
230
  }, {
204
- tags?: string[] | undefined;
205
- capabilities?: string[] | undefined;
206
- query?: string | undefined;
207
- limit?: number | undefined;
208
- offset?: number | undefined;
209
- contextBudget?: number | undefined;
210
- includeServers?: boolean | undefined;
231
+ path?: string | undefined;
232
+ }>;
233
+ export declare const LoggingConfigSchema: z.ZodObject<{
234
+ level: z.ZodDefault<z.ZodEnum<["silent", "error", "warn", "info", "debug", "trace"]>>;
235
+ }, "strip", z.ZodTypeAny, {
236
+ level: "error" | "silent" | "warn" | "info" | "debug" | "trace";
237
+ }, {
238
+ level?: "error" | "silent" | "warn" | "info" | "debug" | "trace" | undefined;
211
239
  }>;
212
- export type DiscoveryQuery = z.infer<typeof DiscoveryQuerySchema>;
213
- export declare const DiscoveryResultSchema: z.ZodObject<{
214
- tools: z.ZodArray<z.ZodObject<{
215
- tool: z.ZodObject<{
216
- id: z.ZodString;
217
- name: z.ZodString;
218
- description: z.ZodString;
219
- serverId: z.ZodString;
220
- serverName: z.ZodString;
221
- inputSchema: z.ZodRecord<z.ZodString, z.ZodAny>;
222
- outputSchema: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodAny>>;
223
- tags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
224
- capabilities: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
225
- authRequirements: z.ZodDefault<z.ZodObject<{
226
- required: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
227
- optional: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
228
- }, "strip", z.ZodTypeAny, {
229
- required: string[];
230
- optional: string[];
231
- }, {
232
- required?: string[] | undefined;
233
- optional?: string[] | undefined;
234
- }>>;
235
- rateLimits: z.ZodOptional<z.ZodObject<{
236
- requestsPerMinute: z.ZodOptional<z.ZodNumber>;
237
- requestsPerHour: z.ZodOptional<z.ZodNumber>;
238
- }, "strip", z.ZodTypeAny, {
239
- requestsPerMinute?: number | undefined;
240
- requestsPerHour?: number | undefined;
241
- }, {
242
- requestsPerMinute?: number | undefined;
243
- requestsPerHour?: number | undefined;
244
- }>>;
245
- contextRequirements: z.ZodDefault<z.ZodObject<{
246
- minTokens: z.ZodDefault<z.ZodNumber>;
247
- maxTokens: z.ZodDefault<z.ZodNumber>;
248
- }, "strip", z.ZodTypeAny, {
249
- minTokens: number;
250
- maxTokens: number;
251
- }, {
252
- minTokens?: number | undefined;
253
- maxTokens?: number | undefined;
254
- }>>;
255
- metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodAny>>;
256
- createdAt: z.ZodString;
257
- updatedAt: z.ZodString;
240
+ export declare const ModeSchema: z.ZodDefault<z.ZodEnum<["local", "team-server", "team-client"]>>;
241
+ export declare const TeamConfigSchema: z.ZodDefault<z.ZodObject<{
242
+ serverUrl: z.ZodOptional<z.ZodString>;
243
+ apiKey: z.ZodOptional<z.ZodString>;
244
+ teamId: z.ZodOptional<z.ZodString>;
245
+ }, "strip", z.ZodTypeAny, {
246
+ serverUrl?: string | undefined;
247
+ apiKey?: string | undefined;
248
+ teamId?: string | undefined;
249
+ }, {
250
+ serverUrl?: string | undefined;
251
+ apiKey?: string | undefined;
252
+ teamId?: string | undefined;
253
+ }>>;
254
+ export declare const OpalServeConfigSchema: z.ZodObject<{
255
+ mode: z.ZodDefault<z.ZodEnum<["local", "team-server", "team-client"]>>;
256
+ servers: z.ZodDefault<z.ZodArray<z.ZodObject<{
257
+ name: z.ZodString;
258
+ transport: z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
259
+ type: z.ZodLiteral<"stdio">;
260
+ command: z.ZodString;
261
+ args: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
262
+ env: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
263
+ cwd: z.ZodOptional<z.ZodString>;
258
264
  }, "strip", z.ZodTypeAny, {
259
- id: string;
260
- name: string;
261
- description: string;
262
- serverId: string;
263
- serverName: string;
264
- inputSchema: Record<string, any>;
265
- tags: string[];
266
- capabilities: string[];
267
- authRequirements: {
268
- required: string[];
269
- optional: string[];
270
- };
271
- contextRequirements: {
272
- minTokens: number;
273
- maxTokens: number;
274
- };
275
- metadata: Record<string, any>;
276
- createdAt: string;
277
- updatedAt: string;
278
- outputSchema?: Record<string, any> | undefined;
279
- rateLimits?: {
280
- requestsPerMinute?: number | undefined;
281
- requestsPerHour?: number | undefined;
282
- } | undefined;
265
+ type: "stdio";
266
+ command: string;
267
+ args: string[];
268
+ env?: Record<string, string> | undefined;
269
+ cwd?: string | undefined;
283
270
  }, {
284
- id: string;
285
- name: string;
286
- description: string;
287
- serverId: string;
288
- serverName: string;
289
- inputSchema: Record<string, any>;
290
- createdAt: string;
291
- updatedAt: string;
292
- outputSchema?: Record<string, any> | undefined;
293
- tags?: string[] | undefined;
294
- capabilities?: string[] | undefined;
295
- authRequirements?: {
296
- required?: string[] | undefined;
297
- optional?: string[] | undefined;
298
- } | undefined;
299
- rateLimits?: {
300
- requestsPerMinute?: number | undefined;
301
- requestsPerHour?: number | undefined;
302
- } | undefined;
303
- contextRequirements?: {
304
- minTokens?: number | undefined;
305
- maxTokens?: number | undefined;
306
- } | undefined;
307
- metadata?: Record<string, any> | undefined;
308
- }>;
309
- relevanceScore: z.ZodNumber;
310
- matchReasons: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
311
- tokenEstimate: z.ZodNumber;
312
- }, "strip", z.ZodTypeAny, {
313
- tool: {
314
- id: string;
315
- name: string;
316
- description: string;
317
- serverId: string;
318
- serverName: string;
319
- inputSchema: Record<string, any>;
320
- tags: string[];
321
- capabilities: string[];
322
- authRequirements: {
323
- required: string[];
324
- optional: string[];
325
- };
326
- contextRequirements: {
327
- minTokens: number;
328
- maxTokens: number;
329
- };
330
- metadata: Record<string, any>;
331
- createdAt: string;
332
- updatedAt: string;
333
- outputSchema?: Record<string, any> | undefined;
334
- rateLimits?: {
335
- requestsPerMinute?: number | undefined;
336
- requestsPerHour?: number | undefined;
337
- } | undefined;
338
- };
339
- relevanceScore: number;
340
- matchReasons: string[];
341
- tokenEstimate: number;
342
- }, {
343
- tool: {
344
- id: string;
345
- name: string;
346
- description: string;
347
- serverId: string;
348
- serverName: string;
349
- inputSchema: Record<string, any>;
350
- createdAt: string;
351
- updatedAt: string;
352
- outputSchema?: Record<string, any> | undefined;
353
- tags?: string[] | undefined;
354
- capabilities?: string[] | undefined;
355
- authRequirements?: {
356
- required?: string[] | undefined;
357
- optional?: string[] | undefined;
358
- } | undefined;
359
- rateLimits?: {
360
- requestsPerMinute?: number | undefined;
361
- requestsPerHour?: number | undefined;
362
- } | undefined;
363
- contextRequirements?: {
364
- minTokens?: number | undefined;
365
- maxTokens?: number | undefined;
366
- } | undefined;
367
- metadata?: Record<string, any> | undefined;
368
- };
369
- relevanceScore: number;
370
- tokenEstimate: number;
371
- matchReasons?: string[] | undefined;
372
- }>, "many">;
373
- servers: z.ZodArray<z.ZodObject<{
374
- id: z.ZodString;
375
- name: z.ZodString;
376
- type: z.ZodEnum<["github", "slack", "postgres", "google-drive", "custom", "http"]>;
377
- status: z.ZodEnum<["active", "inactive", "error", "connecting"]>;
378
- endpoint: z.ZodOptional<z.ZodString>;
379
- localCommand: z.ZodOptional<z.ZodString>;
380
- description: z.ZodString;
381
- version: z.ZodDefault<z.ZodString>;
382
- capabilities: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
383
- tags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
384
- health: z.ZodDefault<z.ZodObject<{
385
- status: z.ZodEnum<["healthy", "degraded", "unhealthy"]>;
386
- lastChecked: z.ZodString;
387
- responseTimeMs: z.ZodOptional<z.ZodNumber>;
388
- errorCount: z.ZodDefault<z.ZodNumber>;
271
+ type: "stdio";
272
+ command: string;
273
+ args?: string[] | undefined;
274
+ env?: Record<string, string> | undefined;
275
+ cwd?: string | undefined;
276
+ }>, z.ZodObject<{
277
+ type: z.ZodLiteral<"sse">;
278
+ url: z.ZodString;
279
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
389
280
  }, "strip", z.ZodTypeAny, {
390
- status: "healthy" | "degraded" | "unhealthy";
391
- lastChecked: string;
392
- errorCount: number;
393
- responseTimeMs?: number | undefined;
281
+ type: "sse";
282
+ url: string;
283
+ headers?: Record<string, string> | undefined;
394
284
  }, {
395
- status: "healthy" | "degraded" | "unhealthy";
396
- lastChecked: string;
397
- responseTimeMs?: number | undefined;
398
- errorCount?: number | undefined;
399
- }>>;
400
- auth: z.ZodDefault<z.ZodObject<{
401
- type: z.ZodEnum<["none", "api-key", "oauth", "jwt", "basic"]>;
402
- configured: z.ZodDefault<z.ZodBoolean>;
285
+ type: "sse";
286
+ url: string;
287
+ headers?: Record<string, string> | undefined;
288
+ }>, z.ZodObject<{
289
+ type: z.ZodLiteral<"streamable-http">;
290
+ url: z.ZodString;
291
+ headers: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
403
292
  }, "strip", z.ZodTypeAny, {
404
- type: "none" | "api-key" | "oauth" | "jwt" | "basic";
405
- configured: boolean;
293
+ type: "streamable-http";
294
+ url: string;
295
+ headers?: Record<string, string> | undefined;
406
296
  }, {
407
- type: "none" | "api-key" | "oauth" | "jwt" | "basic";
408
- configured?: boolean | undefined;
409
- }>>;
410
- metadata: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodAny>>;
411
- registeredAt: z.ZodString;
412
- lastSeen: z.ZodString;
297
+ type: "streamable-http";
298
+ url: string;
299
+ headers?: Record<string, string> | undefined;
300
+ }>]>;
301
+ enabled: z.ZodDefault<z.ZodBoolean>;
302
+ tags: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
303
+ autoConnect: z.ZodDefault<z.ZodBoolean>;
413
304
  }, "strip", z.ZodTypeAny, {
414
- id: string;
415
305
  name: string;
416
- description: string;
417
- status: "active" | "inactive" | "error" | "connecting";
418
- type: "custom" | "github" | "slack" | "postgres" | "google-drive" | "http";
419
- tags: string[];
420
- capabilities: string[];
421
- metadata: Record<string, any>;
422
- version: string;
423
- health: {
424
- status: "healthy" | "degraded" | "unhealthy";
425
- lastChecked: string;
426
- errorCount: number;
427
- responseTimeMs?: number | undefined;
428
- };
429
- auth: {
430
- type: "none" | "api-key" | "oauth" | "jwt" | "basic";
431
- configured: boolean;
306
+ transport: {
307
+ type: "stdio";
308
+ command: string;
309
+ args: string[];
310
+ env?: Record<string, string> | undefined;
311
+ cwd?: string | undefined;
312
+ } | {
313
+ type: "sse";
314
+ url: string;
315
+ headers?: Record<string, string> | undefined;
316
+ } | {
317
+ type: "streamable-http";
318
+ url: string;
319
+ headers?: Record<string, string> | undefined;
432
320
  };
433
- registeredAt: string;
434
- lastSeen: string;
435
- endpoint?: string | undefined;
436
- localCommand?: string | undefined;
321
+ enabled: boolean;
322
+ tags: string[];
323
+ autoConnect: boolean;
437
324
  }, {
438
- id: string;
439
325
  name: string;
440
- description: string;
441
- status: "active" | "inactive" | "error" | "connecting";
442
- type: "custom" | "github" | "slack" | "postgres" | "google-drive" | "http";
443
- registeredAt: string;
444
- lastSeen: string;
326
+ transport: {
327
+ type: "stdio";
328
+ command: string;
329
+ args?: string[] | undefined;
330
+ env?: Record<string, string> | undefined;
331
+ cwd?: string | undefined;
332
+ } | {
333
+ type: "sse";
334
+ url: string;
335
+ headers?: Record<string, string> | undefined;
336
+ } | {
337
+ type: "streamable-http";
338
+ url: string;
339
+ headers?: Record<string, string> | undefined;
340
+ };
341
+ enabled?: boolean | undefined;
445
342
  tags?: string[] | undefined;
446
- capabilities?: string[] | undefined;
447
- metadata?: Record<string, any> | undefined;
448
- endpoint?: string | undefined;
449
- localCommand?: string | undefined;
450
- version?: string | undefined;
451
- health?: {
452
- status: "healthy" | "degraded" | "unhealthy";
453
- lastChecked: string;
454
- responseTimeMs?: number | undefined;
455
- errorCount?: number | undefined;
456
- } | undefined;
457
- auth?: {
458
- type: "none" | "api-key" | "oauth" | "jwt" | "basic";
459
- configured?: boolean | undefined;
460
- } | undefined;
461
- }>, "many">;
462
- totalMatches: z.ZodNumber;
463
- contextUsed: z.ZodNumber;
464
- contextBudget: z.ZodNumber;
465
- suggestions: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
466
- queryInterpretation: z.ZodString;
343
+ autoConnect?: boolean | undefined;
344
+ }>, "many">>;
345
+ gateway: z.ZodDefault<z.ZodObject<{
346
+ port: z.ZodDefault<z.ZodNumber>;
347
+ host: z.ZodDefault<z.ZodString>;
348
+ }, "strip", z.ZodTypeAny, {
349
+ port: number;
350
+ host: string;
351
+ }, {
352
+ port?: number | undefined;
353
+ host?: string | undefined;
354
+ }>>;
355
+ storage: z.ZodDefault<z.ZodObject<{
356
+ path: z.ZodDefault<z.ZodString>;
357
+ }, "strip", z.ZodTypeAny, {
358
+ path: string;
359
+ }, {
360
+ path?: string | undefined;
361
+ }>>;
362
+ logging: z.ZodDefault<z.ZodObject<{
363
+ level: z.ZodDefault<z.ZodEnum<["silent", "error", "warn", "info", "debug", "trace"]>>;
364
+ }, "strip", z.ZodTypeAny, {
365
+ level: "error" | "silent" | "warn" | "info" | "debug" | "trace";
366
+ }, {
367
+ level?: "error" | "silent" | "warn" | "info" | "debug" | "trace" | undefined;
368
+ }>>;
369
+ team: z.ZodDefault<z.ZodObject<{
370
+ serverUrl: z.ZodOptional<z.ZodString>;
371
+ apiKey: z.ZodOptional<z.ZodString>;
372
+ teamId: z.ZodOptional<z.ZodString>;
373
+ }, "strip", z.ZodTypeAny, {
374
+ serverUrl?: string | undefined;
375
+ apiKey?: string | undefined;
376
+ teamId?: string | undefined;
377
+ }, {
378
+ serverUrl?: string | undefined;
379
+ apiKey?: string | undefined;
380
+ teamId?: string | undefined;
381
+ }>>;
467
382
  }, "strip", z.ZodTypeAny, {
468
- contextBudget: number;
469
- tools: {
470
- tool: {
471
- id: string;
472
- name: string;
473
- description: string;
474
- serverId: string;
475
- serverName: string;
476
- inputSchema: Record<string, any>;
477
- tags: string[];
478
- capabilities: string[];
479
- authRequirements: {
480
- required: string[];
481
- optional: string[];
482
- };
483
- contextRequirements: {
484
- minTokens: number;
485
- maxTokens: number;
486
- };
487
- metadata: Record<string, any>;
488
- createdAt: string;
489
- updatedAt: string;
490
- outputSchema?: Record<string, any> | undefined;
491
- rateLimits?: {
492
- requestsPerMinute?: number | undefined;
493
- requestsPerHour?: number | undefined;
494
- } | undefined;
495
- };
496
- relevanceScore: number;
497
- matchReasons: string[];
498
- tokenEstimate: number;
499
- }[];
383
+ mode: "local" | "team-server" | "team-client";
500
384
  servers: {
501
- id: string;
502
385
  name: string;
503
- description: string;
504
- status: "active" | "inactive" | "error" | "connecting";
505
- type: "custom" | "github" | "slack" | "postgres" | "google-drive" | "http";
506
- tags: string[];
507
- capabilities: string[];
508
- metadata: Record<string, any>;
509
- version: string;
510
- health: {
511
- status: "healthy" | "degraded" | "unhealthy";
512
- lastChecked: string;
513
- errorCount: number;
514
- responseTimeMs?: number | undefined;
386
+ transport: {
387
+ type: "stdio";
388
+ command: string;
389
+ args: string[];
390
+ env?: Record<string, string> | undefined;
391
+ cwd?: string | undefined;
392
+ } | {
393
+ type: "sse";
394
+ url: string;
395
+ headers?: Record<string, string> | undefined;
396
+ } | {
397
+ type: "streamable-http";
398
+ url: string;
399
+ headers?: Record<string, string> | undefined;
515
400
  };
516
- auth: {
517
- type: "none" | "api-key" | "oauth" | "jwt" | "basic";
518
- configured: boolean;
519
- };
520
- registeredAt: string;
521
- lastSeen: string;
522
- endpoint?: string | undefined;
523
- localCommand?: string | undefined;
401
+ enabled: boolean;
402
+ tags: string[];
403
+ autoConnect: boolean;
524
404
  }[];
525
- totalMatches: number;
526
- contextUsed: number;
527
- suggestions: string[];
528
- queryInterpretation: string;
405
+ gateway: {
406
+ port: number;
407
+ host: string;
408
+ };
409
+ storage: {
410
+ path: string;
411
+ };
412
+ logging: {
413
+ level: "error" | "silent" | "warn" | "info" | "debug" | "trace";
414
+ };
415
+ team: {
416
+ serverUrl?: string | undefined;
417
+ apiKey?: string | undefined;
418
+ teamId?: string | undefined;
419
+ };
529
420
  }, {
530
- contextBudget: number;
531
- tools: {
532
- tool: {
533
- id: string;
534
- name: string;
535
- description: string;
536
- serverId: string;
537
- serverName: string;
538
- inputSchema: Record<string, any>;
539
- createdAt: string;
540
- updatedAt: string;
541
- outputSchema?: Record<string, any> | undefined;
542
- tags?: string[] | undefined;
543
- capabilities?: string[] | undefined;
544
- authRequirements?: {
545
- required?: string[] | undefined;
546
- optional?: string[] | undefined;
547
- } | undefined;
548
- rateLimits?: {
549
- requestsPerMinute?: number | undefined;
550
- requestsPerHour?: number | undefined;
551
- } | undefined;
552
- contextRequirements?: {
553
- minTokens?: number | undefined;
554
- maxTokens?: number | undefined;
555
- } | undefined;
556
- metadata?: Record<string, any> | undefined;
557
- };
558
- relevanceScore: number;
559
- tokenEstimate: number;
560
- matchReasons?: string[] | undefined;
561
- }[];
562
- servers: {
563
- id: string;
421
+ mode?: "local" | "team-server" | "team-client" | undefined;
422
+ servers?: {
564
423
  name: string;
565
- description: string;
566
- status: "active" | "inactive" | "error" | "connecting";
567
- type: "custom" | "github" | "slack" | "postgres" | "google-drive" | "http";
568
- registeredAt: string;
569
- lastSeen: string;
424
+ transport: {
425
+ type: "stdio";
426
+ command: string;
427
+ args?: string[] | undefined;
428
+ env?: Record<string, string> | undefined;
429
+ cwd?: string | undefined;
430
+ } | {
431
+ type: "sse";
432
+ url: string;
433
+ headers?: Record<string, string> | undefined;
434
+ } | {
435
+ type: "streamable-http";
436
+ url: string;
437
+ headers?: Record<string, string> | undefined;
438
+ };
439
+ enabled?: boolean | undefined;
570
440
  tags?: string[] | undefined;
571
- capabilities?: string[] | undefined;
572
- metadata?: Record<string, any> | undefined;
573
- endpoint?: string | undefined;
574
- localCommand?: string | undefined;
575
- version?: string | undefined;
576
- health?: {
577
- status: "healthy" | "degraded" | "unhealthy";
578
- lastChecked: string;
579
- responseTimeMs?: number | undefined;
580
- errorCount?: number | undefined;
581
- } | undefined;
582
- auth?: {
583
- type: "none" | "api-key" | "oauth" | "jwt" | "basic";
584
- configured?: boolean | undefined;
585
- } | undefined;
586
- }[];
587
- totalMatches: number;
588
- contextUsed: number;
589
- queryInterpretation: string;
590
- suggestions?: string[] | undefined;
441
+ autoConnect?: boolean | undefined;
442
+ }[] | undefined;
443
+ gateway?: {
444
+ port?: number | undefined;
445
+ host?: string | undefined;
446
+ } | undefined;
447
+ storage?: {
448
+ path?: string | undefined;
449
+ } | undefined;
450
+ logging?: {
451
+ level?: "error" | "silent" | "warn" | "info" | "debug" | "trace" | undefined;
452
+ } | undefined;
453
+ team?: {
454
+ serverUrl?: string | undefined;
455
+ apiKey?: string | undefined;
456
+ teamId?: string | undefined;
457
+ } | undefined;
591
458
  }>;
592
- export type DiscoveryResult = z.infer<typeof DiscoveryResultSchema>;
593
- export interface MCPServer {
459
+ export type OpalServeConfig = z.infer<typeof OpalServeConfigSchema>;
460
+ export type OpalServeMode = z.infer<typeof ModeSchema>;
461
+ export interface User {
594
462
  id: string;
595
- name: string;
596
- type: string;
597
- getTools(): Tool[];
598
- connect(): Promise<void>;
599
- disconnect(): Promise<void>;
600
- healthCheck(): Promise<{
601
- healthy: boolean;
602
- latencyMs?: number;
603
- }>;
463
+ email: string;
464
+ displayName: string | null;
465
+ createdAt: string;
466
+ updatedAt: string;
604
467
  }
605
- export interface ConnectorConfig {
606
- serverId: string;
607
- endpoint?: string;
608
- auth?: {
609
- type: 'none' | 'api-key' | 'oauth' | 'jwt' | 'basic';
610
- credentials?: Record<string, string>;
611
- };
612
- options?: Record<string, unknown>;
468
+ export interface Team {
469
+ id: string;
470
+ name: string;
471
+ slug: string;
472
+ createdAt: string;
613
473
  }
614
- export interface RegistryConfig {
615
- port: number;
616
- host: string;
617
- jwtSecret: string;
618
- apiKey?: string;
619
- maxToolsPerResponse: number;
620
- contextTokenBudget: number;
621
- enableAuth: boolean;
474
+ export interface TeamMember {
475
+ teamId: string;
476
+ userId: string;
477
+ role: 'admin' | 'member';
478
+ joinedAt: string;
622
479
  }
623
- export interface ToolDefinition {
480
+ export interface ApiKey {
481
+ id: string;
482
+ userId: string;
483
+ keyPrefix: string;
624
484
  name: string;
625
- description: string;
626
- inputSchema: Record<string, unknown>;
627
- tags?: string[];
628
- capabilities?: string[];
629
- authRequirements?: {
630
- required?: string[];
631
- optional?: string[];
632
- };
633
- contextRequirements?: {
634
- minTokens?: number;
635
- maxTokens?: number;
636
- };
637
- metadata?: Record<string, unknown>;
485
+ lastUsedAt: string | null;
486
+ createdAt: string;
487
+ expiresAt: string | null;
488
+ }
489
+ export interface ContextDocument {
490
+ id: string;
491
+ teamId: string | null;
492
+ title: string;
493
+ content: string;
494
+ contentType: string;
495
+ source: string | null;
496
+ tags: string[];
497
+ uploadedBy: string | null;
498
+ createdAt: string;
499
+ updatedAt: string;
500
+ }
501
+ export interface UsageEvent {
502
+ id: number;
503
+ teamId: string | null;
504
+ userId: string | null;
505
+ eventType: string;
506
+ serverName: string | null;
507
+ toolName: string | null;
508
+ latencyMs: number | null;
509
+ success: boolean;
510
+ error: string | null;
511
+ createdAt: string;
512
+ }
513
+ export interface UsageStats {
514
+ totalCalls: number;
515
+ activeUsers: number;
516
+ topTools: {
517
+ name: string;
518
+ count: number;
519
+ }[];
520
+ errorRate: number;
521
+ }
522
+ export interface HealthResult {
523
+ serverName: string;
524
+ healthy: boolean;
525
+ toolCount: number;
526
+ latencyMs?: number;
527
+ error?: string;
528
+ }
529
+ export interface ApiResponse<T> {
530
+ ok: boolean;
531
+ data?: T;
532
+ error?: string;
638
533
  }
639
534
  //# sourceMappingURL=index.d.ts.map