@dcyfr/ai 1.0.1 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/dist/ai/agents/agent-loader.d.ts +131 -0
  2. package/dist/ai/agents/agent-loader.d.ts.map +1 -0
  3. package/dist/ai/agents/agent-loader.js +397 -0
  4. package/dist/ai/agents/agent-loader.js.map +1 -0
  5. package/dist/ai/agents/agent-registry.d.ts +120 -0
  6. package/dist/ai/agents/agent-registry.d.ts.map +1 -0
  7. package/dist/ai/agents/agent-registry.js +345 -0
  8. package/dist/ai/agents/agent-registry.js.map +1 -0
  9. package/dist/ai/agents/agent-router.d.ts +97 -0
  10. package/dist/ai/agents/agent-router.d.ts.map +1 -0
  11. package/dist/ai/agents/agent-router.js +375 -0
  12. package/dist/ai/agents/agent-router.js.map +1 -0
  13. package/dist/ai/agents/index.d.ts +10 -0
  14. package/dist/ai/agents/index.d.ts.map +1 -0
  15. package/dist/ai/agents/index.js +12 -0
  16. package/dist/ai/agents/index.js.map +1 -0
  17. package/dist/ai/agents/types.d.ts +264 -0
  18. package/dist/ai/agents/types.d.ts.map +1 -0
  19. package/dist/ai/agents/types.js +10 -0
  20. package/dist/ai/agents/types.js.map +1 -0
  21. package/dist/ai/agents-builtin/architecture/architecture-reviewer.d.ts +12 -0
  22. package/dist/ai/agents-builtin/architecture/architecture-reviewer.d.ts.map +1 -0
  23. package/dist/ai/agents-builtin/architecture/architecture-reviewer.js +92 -0
  24. package/dist/ai/agents-builtin/architecture/architecture-reviewer.js.map +1 -0
  25. package/dist/ai/agents-builtin/architecture/cloud-architect.d.ts +12 -0
  26. package/dist/ai/agents-builtin/architecture/cloud-architect.d.ts.map +1 -0
  27. package/dist/ai/agents-builtin/architecture/cloud-architect.js +103 -0
  28. package/dist/ai/agents-builtin/architecture/cloud-architect.js.map +1 -0
  29. package/dist/ai/agents-builtin/architecture/database-architect.d.ts +12 -0
  30. package/dist/ai/agents-builtin/architecture/database-architect.d.ts.map +1 -0
  31. package/dist/ai/agents-builtin/architecture/database-architect.js +95 -0
  32. package/dist/ai/agents-builtin/architecture/database-architect.js.map +1 -0
  33. package/dist/ai/agents-builtin/architecture/index.d.ts +11 -0
  34. package/dist/ai/agents-builtin/architecture/index.d.ts.map +1 -0
  35. package/dist/ai/agents-builtin/architecture/index.js +11 -0
  36. package/dist/ai/agents-builtin/architecture/index.js.map +1 -0
  37. package/dist/ai/agents-builtin/content/index.d.ts +9 -0
  38. package/dist/ai/agents-builtin/content/index.d.ts.map +1 -0
  39. package/dist/ai/agents-builtin/content/index.js +9 -0
  40. package/dist/ai/agents-builtin/content/index.js.map +1 -0
  41. package/dist/ai/agents-builtin/content/technical-writer.d.ts +12 -0
  42. package/dist/ai/agents-builtin/content/technical-writer.d.ts.map +1 -0
  43. package/dist/ai/agents-builtin/content/technical-writer.js +93 -0
  44. package/dist/ai/agents-builtin/content/technical-writer.js.map +1 -0
  45. package/dist/ai/agents-builtin/data/data-scientist.d.ts +12 -0
  46. package/dist/ai/agents-builtin/data/data-scientist.d.ts.map +1 -0
  47. package/dist/ai/agents-builtin/data/data-scientist.js +92 -0
  48. package/dist/ai/agents-builtin/data/data-scientist.js.map +1 -0
  49. package/dist/ai/agents-builtin/data/index.d.ts +9 -0
  50. package/dist/ai/agents-builtin/data/index.d.ts.map +1 -0
  51. package/dist/ai/agents-builtin/data/index.js +9 -0
  52. package/dist/ai/agents-builtin/data/index.js.map +1 -0
  53. package/dist/ai/agents-builtin/development/backend-architect.d.ts +12 -0
  54. package/dist/ai/agents-builtin/development/backend-architect.d.ts.map +1 -0
  55. package/dist/ai/agents-builtin/development/backend-architect.js +99 -0
  56. package/dist/ai/agents-builtin/development/backend-architect.js.map +1 -0
  57. package/dist/ai/agents-builtin/development/frontend-developer.d.ts +12 -0
  58. package/dist/ai/agents-builtin/development/frontend-developer.d.ts.map +1 -0
  59. package/dist/ai/agents-builtin/development/frontend-developer.js +106 -0
  60. package/dist/ai/agents-builtin/development/frontend-developer.js.map +1 -0
  61. package/dist/ai/agents-builtin/development/fullstack-developer.d.ts +12 -0
  62. package/dist/ai/agents-builtin/development/fullstack-developer.d.ts.map +1 -0
  63. package/dist/ai/agents-builtin/development/fullstack-developer.js +86 -0
  64. package/dist/ai/agents-builtin/development/fullstack-developer.js.map +1 -0
  65. package/dist/ai/agents-builtin/development/index.d.ts +12 -0
  66. package/dist/ai/agents-builtin/development/index.d.ts.map +1 -0
  67. package/dist/ai/agents-builtin/development/index.js +12 -0
  68. package/dist/ai/agents-builtin/development/index.js.map +1 -0
  69. package/dist/ai/agents-builtin/development/typescript-pro.d.ts +12 -0
  70. package/dist/ai/agents-builtin/development/typescript-pro.d.ts.map +1 -0
  71. package/dist/ai/agents-builtin/development/typescript-pro.js +98 -0
  72. package/dist/ai/agents-builtin/development/typescript-pro.js.map +1 -0
  73. package/dist/ai/agents-builtin/devops/devops-engineer.d.ts +12 -0
  74. package/dist/ai/agents-builtin/devops/devops-engineer.d.ts.map +1 -0
  75. package/dist/ai/agents-builtin/devops/devops-engineer.js +98 -0
  76. package/dist/ai/agents-builtin/devops/devops-engineer.js.map +1 -0
  77. package/dist/ai/agents-builtin/devops/index.d.ts +9 -0
  78. package/dist/ai/agents-builtin/devops/index.d.ts.map +1 -0
  79. package/dist/ai/agents-builtin/devops/index.js +9 -0
  80. package/dist/ai/agents-builtin/devops/index.js.map +1 -0
  81. package/dist/ai/agents-builtin/index.d.ts +36 -0
  82. package/dist/ai/agents-builtin/index.d.ts.map +1 -0
  83. package/dist/ai/agents-builtin/index.js +107 -0
  84. package/dist/ai/agents-builtin/index.js.map +1 -0
  85. package/dist/ai/agents-builtin/performance/index.d.ts +9 -0
  86. package/dist/ai/agents-builtin/performance/index.d.ts.map +1 -0
  87. package/dist/ai/agents-builtin/performance/index.js +9 -0
  88. package/dist/ai/agents-builtin/performance/index.js.map +1 -0
  89. package/dist/ai/agents-builtin/performance/performance-profiler.d.ts +12 -0
  90. package/dist/ai/agents-builtin/performance/performance-profiler.d.ts.map +1 -0
  91. package/dist/ai/agents-builtin/performance/performance-profiler.js +89 -0
  92. package/dist/ai/agents-builtin/performance/performance-profiler.js.map +1 -0
  93. package/dist/ai/agents-builtin/research/index.d.ts +9 -0
  94. package/dist/ai/agents-builtin/research/index.d.ts.map +1 -0
  95. package/dist/ai/agents-builtin/research/index.js +9 -0
  96. package/dist/ai/agents-builtin/research/index.js.map +1 -0
  97. package/dist/ai/agents-builtin/research/research-orchestrator.d.ts +12 -0
  98. package/dist/ai/agents-builtin/research/research-orchestrator.d.ts.map +1 -0
  99. package/dist/ai/agents-builtin/research/research-orchestrator.js +83 -0
  100. package/dist/ai/agents-builtin/research/research-orchestrator.js.map +1 -0
  101. package/dist/ai/agents-builtin/security/index.d.ts +9 -0
  102. package/dist/ai/agents-builtin/security/index.d.ts.map +1 -0
  103. package/dist/ai/agents-builtin/security/index.js +9 -0
  104. package/dist/ai/agents-builtin/security/index.js.map +1 -0
  105. package/dist/ai/agents-builtin/security/security-engineer.d.ts +12 -0
  106. package/dist/ai/agents-builtin/security/security-engineer.d.ts.map +1 -0
  107. package/dist/ai/agents-builtin/security/security-engineer.js +90 -0
  108. package/dist/ai/agents-builtin/security/security-engineer.js.map +1 -0
  109. package/dist/ai/agents-builtin/testing/debugger.d.ts +13 -0
  110. package/dist/ai/agents-builtin/testing/debugger.d.ts.map +1 -0
  111. package/dist/ai/agents-builtin/testing/debugger.js +89 -0
  112. package/dist/ai/agents-builtin/testing/debugger.js.map +1 -0
  113. package/dist/ai/agents-builtin/testing/index.d.ts +10 -0
  114. package/dist/ai/agents-builtin/testing/index.d.ts.map +1 -0
  115. package/dist/ai/agents-builtin/testing/index.js +10 -0
  116. package/dist/ai/agents-builtin/testing/index.js.map +1 -0
  117. package/dist/ai/agents-builtin/testing/test-engineer.d.ts +12 -0
  118. package/dist/ai/agents-builtin/testing/test-engineer.d.ts.map +1 -0
  119. package/dist/ai/agents-builtin/testing/test-engineer.js +93 -0
  120. package/dist/ai/agents-builtin/testing/test-engineer.js.map +1 -0
  121. package/dist/ai/config/loader.d.ts +19 -5
  122. package/dist/ai/config/loader.d.ts.map +1 -1
  123. package/dist/ai/config/loader.js +53 -18
  124. package/dist/ai/config/loader.js.map +1 -1
  125. package/dist/ai/config/schema.d.ts +600 -8
  126. package/dist/ai/config/schema.d.ts.map +1 -1
  127. package/dist/ai/config/schema.js +156 -0
  128. package/dist/ai/config/schema.js.map +1 -1
  129. package/dist/ai/index.d.ts +4 -1
  130. package/dist/ai/index.d.ts.map +1 -1
  131. package/dist/ai/index.js +35 -1
  132. package/dist/ai/index.js.map +1 -1
  133. package/dist/ai/mcp/index.d.ts +8 -0
  134. package/dist/ai/mcp/index.d.ts.map +1 -0
  135. package/dist/ai/mcp/index.js +8 -0
  136. package/dist/ai/mcp/index.js.map +1 -0
  137. package/dist/ai/mcp/mcp-registry.d.ts +127 -0
  138. package/dist/ai/mcp/mcp-registry.d.ts.map +1 -0
  139. package/dist/ai/mcp/mcp-registry.js +355 -0
  140. package/dist/ai/mcp/mcp-registry.js.map +1 -0
  141. package/dist/ai/mcp/types.d.ts +126 -0
  142. package/dist/ai/mcp/types.d.ts.map +1 -0
  143. package/dist/ai/mcp/types.js +9 -0
  144. package/dist/ai/mcp/types.js.map +1 -0
  145. package/dist/ai/utils/storage.d.ts +6 -1
  146. package/dist/ai/utils/storage.d.ts.map +1 -1
  147. package/dist/ai/utils/storage.js +57 -22
  148. package/dist/ai/utils/storage.js.map +1 -1
  149. package/package.json +1 -1
@@ -0,0 +1,355 @@
1
+ /**
2
+ * MCP Registry - MCP Server Discovery and Management
3
+ *
4
+ * Manages MCP servers across the application with discovery, health monitoring,
5
+ * and tier-based organization.
6
+ *
7
+ * @module @dcyfr/ai/mcp/mcp-registry
8
+ * @example
9
+ * ```typescript
10
+ * import { MCPRegistry } from '@dcyfr/ai/mcp/mcp-registry';
11
+ *
12
+ * const registry = new MCPRegistry({
13
+ * autoDiscover: true,
14
+ * searchPaths: ['.mcp.json', '.vscode/mcp.json'],
15
+ * });
16
+ *
17
+ * // Initialize and discover servers
18
+ * await registry.initialize();
19
+ *
20
+ * // Get available servers
21
+ * const servers = registry.getAvailableServers();
22
+ * ```
23
+ */
24
+ /**
25
+ * Default registry configuration
26
+ */
27
+ const DEFAULT_CONFIG = {
28
+ autoDiscover: false,
29
+ searchPaths: ['.mcp.json', '.vscode/mcp.json'],
30
+ configFileName: '.mcp.json',
31
+ healthCheckInterval: 60000, // 1 minute
32
+ healthMonitoring: false,
33
+ };
34
+ /**
35
+ * MCP Registry - manages MCP servers
36
+ */
37
+ export class MCPRegistry {
38
+ servers = new Map();
39
+ config;
40
+ healthCheckTimer = null;
41
+ initialized = false;
42
+ constructor(config = {}) {
43
+ this.config = { ...DEFAULT_CONFIG, ...config };
44
+ }
45
+ /**
46
+ * Initialize the registry
47
+ */
48
+ async initialize() {
49
+ if (this.initialized)
50
+ return;
51
+ if (this.config.autoDiscover && this.config.searchPaths) {
52
+ for (const searchPath of this.config.searchPaths) {
53
+ await this.loadFromFile(searchPath);
54
+ }
55
+ }
56
+ if (this.config.healthMonitoring) {
57
+ this.startHealthMonitoring();
58
+ }
59
+ this.initialized = true;
60
+ }
61
+ /**
62
+ * Load MCP servers from a config file
63
+ */
64
+ async loadFromFile(filePath) {
65
+ try {
66
+ const fs = await import('fs/promises');
67
+ const path = await import('path');
68
+ const absolutePath = path.isAbsolute(filePath)
69
+ ? filePath
70
+ : path.resolve(process.cwd(), filePath);
71
+ const content = await fs.readFile(absolutePath, 'utf-8');
72
+ const config = JSON.parse(content);
73
+ // Handle different config formats
74
+ const servers = config.mcpServers || config.servers || config;
75
+ for (const [name, serverConfig] of Object.entries(servers)) {
76
+ if (typeof serverConfig === 'object' && serverConfig !== null) {
77
+ const config = serverConfig;
78
+ await this.registerServer({
79
+ ...config,
80
+ name: config.name || name,
81
+ }, absolutePath);
82
+ }
83
+ }
84
+ }
85
+ catch (error) {
86
+ // File doesn't exist or is invalid - skip silently
87
+ if (error.code !== 'ENOENT') {
88
+ console.warn(`⚠️ Failed to load MCP config from ${filePath}:`, error);
89
+ }
90
+ }
91
+ }
92
+ /**
93
+ * Register an MCP server
94
+ */
95
+ async registerServer(config, source = 'runtime') {
96
+ const server = {
97
+ config: {
98
+ enabled: true,
99
+ tier: 'project',
100
+ ...config,
101
+ },
102
+ status: 'available',
103
+ lastChecked: new Date(),
104
+ source,
105
+ };
106
+ this.servers.set(config.name, server);
107
+ // Perform initial health check if monitoring is enabled
108
+ if (this.config.healthMonitoring) {
109
+ await this.checkServerHealth(config.name);
110
+ }
111
+ return server;
112
+ }
113
+ /**
114
+ * Unregister an MCP server
115
+ */
116
+ unregisterServer(name) {
117
+ return this.servers.delete(name);
118
+ }
119
+ /**
120
+ * Get a server by name
121
+ */
122
+ getServer(name) {
123
+ return this.servers.get(name);
124
+ }
125
+ /**
126
+ * Get all registered servers
127
+ */
128
+ getAllServers() {
129
+ return Array.from(this.servers.values());
130
+ }
131
+ /**
132
+ * Get available (enabled and healthy) servers
133
+ */
134
+ getAvailableServers() {
135
+ return this.getAllServers().filter((s) => s.config.enabled !== false && s.status === 'available');
136
+ }
137
+ /**
138
+ * Get servers by tier
139
+ */
140
+ getServersByTier(tier) {
141
+ return this.getAllServers().filter((s) => s.config.tier === tier);
142
+ }
143
+ /**
144
+ * Get servers by tag
145
+ */
146
+ getServersByTag(tag) {
147
+ return this.getAllServers().filter((s) => s.config.tags?.includes(tag));
148
+ }
149
+ /**
150
+ * Enable a server
151
+ */
152
+ enableServer(name) {
153
+ const server = this.servers.get(name);
154
+ if (!server)
155
+ return false;
156
+ server.config.enabled = true;
157
+ return true;
158
+ }
159
+ /**
160
+ * Disable a server
161
+ */
162
+ disableServer(name) {
163
+ const server = this.servers.get(name);
164
+ if (!server)
165
+ return false;
166
+ server.config.enabled = false;
167
+ server.status = 'disabled';
168
+ return true;
169
+ }
170
+ /**
171
+ * Check health of a specific server
172
+ */
173
+ async checkServerHealth(name) {
174
+ const server = this.servers.get(name);
175
+ if (!server) {
176
+ return {
177
+ server: name,
178
+ status: 'unavailable',
179
+ error: 'Server not found',
180
+ timestamp: new Date(),
181
+ };
182
+ }
183
+ const startTime = Date.now();
184
+ try {
185
+ // For stdio servers, check if command exists
186
+ if (server.config.transport === 'stdio' && server.config.command) {
187
+ const { execSync } = await import('child_process');
188
+ try {
189
+ execSync(`which ${server.config.command}`, { stdio: 'ignore' });
190
+ server.status = 'available';
191
+ }
192
+ catch {
193
+ server.status = 'unavailable';
194
+ server.error = `Command '${server.config.command}' not found`;
195
+ }
196
+ }
197
+ // For URL-based servers, attempt a connection check
198
+ else if (server.config.url) {
199
+ try {
200
+ const response = await fetch(server.config.url, {
201
+ method: 'HEAD',
202
+ signal: AbortSignal.timeout(5000),
203
+ });
204
+ server.status = response.ok ? 'available' : 'unavailable';
205
+ }
206
+ catch (error) {
207
+ server.status = 'unavailable';
208
+ server.error = `Cannot reach ${server.config.url}`;
209
+ }
210
+ }
211
+ server.lastChecked = new Date();
212
+ return {
213
+ server: name,
214
+ status: server.status,
215
+ responseTime: Date.now() - startTime,
216
+ error: server.error,
217
+ timestamp: server.lastChecked,
218
+ };
219
+ }
220
+ catch (error) {
221
+ server.status = 'error';
222
+ server.error = error instanceof Error ? error.message : String(error);
223
+ server.lastChecked = new Date();
224
+ return {
225
+ server: name,
226
+ status: 'error',
227
+ error: server.error,
228
+ timestamp: server.lastChecked,
229
+ };
230
+ }
231
+ }
232
+ /**
233
+ * Check health of all servers
234
+ */
235
+ async checkAllHealth() {
236
+ const results = [];
237
+ for (const [name] of this.servers) {
238
+ const result = await this.checkServerHealth(name);
239
+ results.push(result);
240
+ }
241
+ return results;
242
+ }
243
+ /**
244
+ * Start health monitoring
245
+ */
246
+ startHealthMonitoring() {
247
+ if (this.healthCheckTimer)
248
+ return;
249
+ this.healthCheckTimer = setInterval(async () => {
250
+ await this.checkAllHealth();
251
+ }, this.config.healthCheckInterval || 60000);
252
+ }
253
+ /**
254
+ * Stop health monitoring
255
+ */
256
+ stopHealthMonitoring() {
257
+ if (this.healthCheckTimer) {
258
+ clearInterval(this.healthCheckTimer);
259
+ this.healthCheckTimer = null;
260
+ }
261
+ }
262
+ /**
263
+ * Get registry statistics
264
+ */
265
+ getStats() {
266
+ const servers = this.getAllServers();
267
+ const byTier = {};
268
+ const byTransport = {};
269
+ let available = 0;
270
+ let unavailable = 0;
271
+ let disabled = 0;
272
+ let errorCount = 0;
273
+ for (const server of servers) {
274
+ // Count by status
275
+ switch (server.status) {
276
+ case 'available':
277
+ available++;
278
+ break;
279
+ case 'unavailable':
280
+ unavailable++;
281
+ break;
282
+ case 'disabled':
283
+ disabled++;
284
+ break;
285
+ case 'error':
286
+ errorCount++;
287
+ break;
288
+ }
289
+ // Count by tier
290
+ const tier = server.config.tier || 'project';
291
+ byTier[tier] = (byTier[tier] || 0) + 1;
292
+ // Count by transport
293
+ const transport = server.config.transport;
294
+ byTransport[transport] = (byTransport[transport] || 0) + 1;
295
+ }
296
+ return {
297
+ totalServers: servers.length,
298
+ available,
299
+ unavailable,
300
+ disabled,
301
+ error: errorCount,
302
+ byTier,
303
+ byTransport,
304
+ };
305
+ }
306
+ /**
307
+ * Export configuration for all servers
308
+ */
309
+ exportConfig() {
310
+ const config = {};
311
+ for (const [name, server] of this.servers) {
312
+ config[name] = server.config;
313
+ }
314
+ return config;
315
+ }
316
+ /**
317
+ * Clear all servers
318
+ */
319
+ clearAll() {
320
+ this.stopHealthMonitoring();
321
+ this.servers.clear();
322
+ this.initialized = false;
323
+ }
324
+ /**
325
+ * Shutdown the registry
326
+ */
327
+ async shutdown() {
328
+ this.stopHealthMonitoring();
329
+ this.servers.clear();
330
+ this.initialized = false;
331
+ }
332
+ }
333
+ /**
334
+ * Global MCP registry instance
335
+ */
336
+ let globalRegistry = null;
337
+ /**
338
+ * Get or create global MCP registry
339
+ */
340
+ export function getGlobalMCPRegistry(config) {
341
+ if (!globalRegistry) {
342
+ globalRegistry = new MCPRegistry(config);
343
+ }
344
+ return globalRegistry;
345
+ }
346
+ /**
347
+ * Reset global MCP registry
348
+ */
349
+ export function resetGlobalMCPRegistry() {
350
+ if (globalRegistry) {
351
+ globalRegistry.shutdown();
352
+ }
353
+ globalRegistry = null;
354
+ }
355
+ //# sourceMappingURL=mcp-registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mcp-registry.js","sourceRoot":"","sources":["../../../packages/ai/mcp/mcp-registry.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,126 @@
1
+ /**
2
+ * MCP (Model Context Protocol) Type Definitions
3
+ *
4
+ * Defines interfaces for MCP server registration, discovery, and management.
5
+ *
6
+ * @module @dcyfr/ai/mcp/types
7
+ */
8
+ /**
9
+ * MCP server transport type
10
+ */
11
+ export type MCPTransport = 'stdio' | 'sse' | 'websocket';
12
+ /**
13
+ * MCP server status
14
+ */
15
+ export type MCPServerStatus = 'available' | 'unavailable' | 'error' | 'disabled';
16
+ /**
17
+ * MCP tool definition
18
+ */
19
+ export interface MCPTool {
20
+ name: string;
21
+ description: string;
22
+ inputSchema?: Record<string, unknown>;
23
+ }
24
+ /**
25
+ * MCP resource definition
26
+ */
27
+ export interface MCPResource {
28
+ uri: string;
29
+ name: string;
30
+ description?: string;
31
+ mimeType?: string;
32
+ }
33
+ /**
34
+ * MCP server configuration
35
+ */
36
+ export interface MCPServerConfig {
37
+ /** Server identifier */
38
+ name: string;
39
+ /** Human-readable description */
40
+ description?: string;
41
+ /** Transport type */
42
+ transport: MCPTransport;
43
+ /** Command to start the server (for stdio transport) */
44
+ command?: string;
45
+ /** Command arguments */
46
+ args?: string[];
47
+ /** Environment variables */
48
+ env?: Record<string, string>;
49
+ /** URL for SSE/WebSocket transports */
50
+ url?: string;
51
+ /** Whether the server is enabled */
52
+ enabled?: boolean;
53
+ /** Tier (public, private, project) */
54
+ tier?: 'public' | 'private' | 'project';
55
+ /** Tags for filtering */
56
+ tags?: string[];
57
+ }
58
+ /**
59
+ * MCP server manifest (runtime info)
60
+ */
61
+ export interface MCPServerManifest {
62
+ /** Server name */
63
+ name: string;
64
+ /** Server version */
65
+ version: string;
66
+ /** Protocol version */
67
+ protocolVersion: string;
68
+ /** Server capabilities */
69
+ capabilities: MCPServerCapabilities;
70
+ /** Available tools */
71
+ tools?: MCPTool[];
72
+ /** Available resources */
73
+ resources?: MCPResource[];
74
+ }
75
+ /**
76
+ * MCP server capabilities
77
+ */
78
+ export interface MCPServerCapabilities {
79
+ tools?: boolean;
80
+ resources?: boolean;
81
+ prompts?: boolean;
82
+ logging?: boolean;
83
+ }
84
+ /**
85
+ * Loaded MCP server instance
86
+ */
87
+ export interface LoadedMCPServer {
88
+ /** Server configuration */
89
+ config: MCPServerConfig;
90
+ /** Server manifest (populated after connection) */
91
+ manifest?: MCPServerManifest;
92
+ /** Current status */
93
+ status: MCPServerStatus;
94
+ /** Last status check */
95
+ lastChecked: Date;
96
+ /** Error message if status is 'error' */
97
+ error?: string;
98
+ /** Source (file path or package) */
99
+ source: string;
100
+ }
101
+ /**
102
+ * MCP registry configuration
103
+ */
104
+ export interface MCPRegistryConfig {
105
+ /** Enable auto-discovery */
106
+ autoDiscover?: boolean;
107
+ /** Paths to search for MCP configs */
108
+ searchPaths?: string[];
109
+ /** Default config file name */
110
+ configFileName?: string;
111
+ /** Health check interval (ms) */
112
+ healthCheckInterval?: number;
113
+ /** Enable health monitoring */
114
+ healthMonitoring?: boolean;
115
+ }
116
+ /**
117
+ * MCP health check result
118
+ */
119
+ export interface MCPHealthCheckResult {
120
+ server: string;
121
+ status: MCPServerStatus;
122
+ responseTime?: number;
123
+ error?: string;
124
+ timestamp: Date;
125
+ }
126
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../packages/ai/mcp/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * MCP (Model Context Protocol) Type Definitions
3
+ *
4
+ * Defines interfaces for MCP server registration, discovery, and management.
5
+ *
6
+ * @module @dcyfr/ai/mcp/types
7
+ */
8
+ export {};
9
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../packages/ai/mcp/types.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG"}
@@ -4,7 +4,7 @@
4
4
  */
5
5
  import type { StorageAdapter, StorageType } from '../types';
6
6
  /**
7
- * In-memory storage adapter (default, no persistence)
7
+ * In-memory storage adapter (default, works in both browser and Node.js)
8
8
  */
9
9
  export declare class MemoryStorageAdapter implements StorageAdapter {
10
10
  type: StorageType;
@@ -17,6 +17,8 @@ export declare class MemoryStorageAdapter implements StorageAdapter {
17
17
  }
18
18
  /**
19
19
  * File-based storage adapter (Node.js only)
20
+ *
21
+ * This adapter requires Node.js and will throw an error if used in a browser environment.
20
22
  */
21
23
  export declare class FileStorageAdapter implements StorageAdapter {
22
24
  type: StorageType;
@@ -30,6 +32,9 @@ export declare class FileStorageAdapter implements StorageAdapter {
30
32
  }
31
33
  /**
32
34
  * Storage adapter factory
35
+ *
36
+ * In browser environments, only 'memory' storage is available.
37
+ * File-based storage requires a Node.js environment.
33
38
  */
34
39
  export declare function createStorageAdapter(type: StorageType, options?: {
35
40
  basePath?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../packages/ai/utils/storage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAE5D;;GAEG;AACH,qBAAa,oBAAqB,YAAW,cAAc;IACzD,IAAI,EAAE,WAAW,CAAY;IAC7B,OAAO,CAAC,KAAK,CAAmC;IAE1C,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAKtC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAMxC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B;AAED;;GAEG;AACH,qBAAa,kBAAmB,YAAW,cAAc;IACvD,IAAI,EAAE,WAAW,CAAU;IAC3B,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,EAAE,MAAM;IAItB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAetC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAW5C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAclC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAoBxC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAgB7B;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,cAAc,CAevG"}
1
+ {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../../packages/ai/utils/storage.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAS5D;;GAEG;AACH,qBAAa,oBAAqB,YAAW,cAAc;IACzD,IAAI,EAAE,WAAW,CAAY;IAC7B,OAAO,CAAC,KAAK,CAAmC;IAE1C,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAKtC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAI5C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIlC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAMxC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAG7B;AAED;;;;GAIG;AACH,qBAAa,kBAAmB,YAAW,cAAc;IACvD,IAAI,EAAE,WAAW,CAAU;IAC3B,OAAO,CAAC,QAAQ,CAAS;gBAEb,QAAQ,EAAE,MAAM;IAUtB,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,IAAI,CAAC;IAoBtC,GAAG,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAe5C,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAkBlC,IAAI,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAuBxC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAoB7B;AAED;;;;;GAKG;AACH,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,WAAW,EAAE,OAAO,CAAC,EAAE;IAAE,QAAQ,CAAC,EAAE,MAAM,CAAA;CAAE,GAAG,cAAc,CAsBvG"}