mcp-adr-analysis-server 2.6.20 → 2.7.19

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 (46) hide show
  1. package/README.md +12 -0
  2. package/dist/.tsbuildinfo +1 -1
  3. package/dist/src/index.d.ts.map +1 -1
  4. package/dist/src/index.js +59 -9
  5. package/dist/src/index.js.map +1 -1
  6. package/dist/src/resources/deployment-status-resource.d.ts.map +1 -1
  7. package/dist/src/resources/deployment-status-resource.js +31 -24
  8. package/dist/src/resources/deployment-status-resource.js.map +1 -1
  9. package/dist/src/tools/adr-suggestion-tool.js +2 -1
  10. package/dist/src/tools/adr-suggestion-tool.js.map +1 -1
  11. package/dist/src/tools/ce-mcp-tools.d.ts +14 -1
  12. package/dist/src/tools/ce-mcp-tools.d.ts.map +1 -1
  13. package/dist/src/tools/ce-mcp-tools.js +27 -1
  14. package/dist/src/tools/ce-mcp-tools.js.map +1 -1
  15. package/dist/src/tools/perform-research-tool.d.ts +18 -0
  16. package/dist/src/tools/perform-research-tool.d.ts.map +1 -1
  17. package/dist/src/tools/perform-research-tool.js +67 -4
  18. package/dist/src/tools/perform-research-tool.js.map +1 -1
  19. package/dist/src/tools/tool-catalog.d.ts +1 -1
  20. package/dist/src/tools/tool-catalog.js +59 -59
  21. package/dist/src/tools/tool-catalog.js.map +1 -1
  22. package/dist/src/tools/tool-dispatcher.d.ts +1 -1
  23. package/dist/src/tools/tool-dispatcher.js +1 -1
  24. package/dist/src/tools/tree-sitter-code-tools.d.ts +6 -1
  25. package/dist/src/tools/tree-sitter-code-tools.d.ts.map +1 -1
  26. package/dist/src/tools/tree-sitter-code-tools.js +6 -1
  27. package/dist/src/tools/tree-sitter-code-tools.js.map +1 -1
  28. package/dist/src/utils/adr-discovery.d.ts.map +1 -1
  29. package/dist/src/utils/adr-discovery.js +33 -5
  30. package/dist/src/utils/adr-discovery.js.map +1 -1
  31. package/dist/src/utils/context-document-manager.d.ts +4 -3
  32. package/dist/src/utils/context-document-manager.d.ts.map +1 -1
  33. package/dist/src/utils/context-document-manager.js +37 -8
  34. package/dist/src/utils/context-document-manager.js.map +1 -1
  35. package/dist/src/utils/knowledge-graph-manager.d.ts +11 -0
  36. package/dist/src/utils/knowledge-graph-manager.d.ts.map +1 -1
  37. package/dist/src/utils/knowledge-graph-manager.js +52 -6
  38. package/dist/src/utils/knowledge-graph-manager.js.map +1 -1
  39. package/dist/src/utils/research-orchestrator.d.ts.map +1 -1
  40. package/dist/src/utils/research-orchestrator.js +24 -5
  41. package/dist/src/utils/research-orchestrator.js.map +1 -1
  42. package/package.json +2 -1
  43. package/dist/src/utils/monitoring.d.ts +0 -249
  44. package/dist/src/utils/monitoring.d.ts.map +0 -1
  45. package/dist/src/utils/monitoring.js +0 -513
  46. package/dist/src/utils/monitoring.js.map +0 -1
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mcp-adr-analysis-server",
3
3
  "mcpName": "io.github.tosin2013/mcp-adr-analysis-server",
4
- "version": "2.6.20",
4
+ "version": "2.7.19",
5
5
  "description": "MCP server for analyzing Architectural Decision Records and project architecture",
6
6
  "main": "dist/src/index.js",
7
7
  "type": "module",
@@ -49,6 +49,7 @@
49
49
  "@mendable/firecrawl-js": "^4.25.2",
50
50
  "@modelcontextprotocol/sdk": "^1.30.0",
51
51
  "fast-glob": "^3.3.2",
52
+ "js-yaml": "^4.1.0",
52
53
  "openai": "^6.1.0",
53
54
  "tree-sitter": "^0.21.1",
54
55
  "tree-sitter-bash": "^0.21.0",
@@ -1,249 +0,0 @@
1
- /**
2
- * Monitoring and Analytics Framework
3
- *
4
- * Provides comprehensive monitoring and analytics for MCP server:
5
- * - Request/response tracking
6
- * - Performance metrics (latency, throughput)
7
- * - Error tracking and reporting
8
- * - Resource usage analytics
9
- * - Cache performance metrics
10
- * - Tool execution metrics
11
- * - Health checks
12
- * - Metrics aggregation and reporting
13
- */
14
- /**
15
- * Metric types for categorization
16
- */
17
- export declare enum MetricType {
18
- COUNTER = "counter",
19
- GAUGE = "gauge",
20
- HISTOGRAM = "histogram",
21
- TIMER = "timer"
22
- }
23
- /**
24
- * Metric category for organization
25
- */
26
- export declare enum MetricCategory {
27
- REQUEST = "request",
28
- RESOURCE = "resource",
29
- TOOL = "tool",
30
- CACHE = "cache",
31
- ERROR = "error",
32
- PERFORMANCE = "performance",
33
- SYSTEM = "system"
34
- }
35
- /**
36
- * Individual metric data point
37
- */
38
- export interface Metric {
39
- name: string;
40
- type: MetricType;
41
- category: MetricCategory;
42
- value: number;
43
- timestamp: string;
44
- tags?: Record<string, string>;
45
- metadata?: Record<string, any>;
46
- }
47
- /**
48
- * Aggregated metric statistics
49
- */
50
- export interface MetricStats {
51
- count: number;
52
- sum: number;
53
- min: number;
54
- max: number;
55
- avg: number;
56
- p50: number;
57
- p95: number;
58
- p99: number;
59
- }
60
- /**
61
- * Health check result
62
- */
63
- export interface HealthCheck {
64
- name: string;
65
- status: 'healthy' | 'degraded' | 'unhealthy';
66
- message?: string;
67
- timestamp: string;
68
- duration: number;
69
- metadata?: Record<string, any>;
70
- }
71
- /**
72
- * Request tracking data
73
- */
74
- export interface RequestMetrics {
75
- requestId: string;
76
- type: 'tool' | 'resource' | 'prompt';
77
- name: string;
78
- startTime: string;
79
- endTime?: string;
80
- duration?: number;
81
- status: 'pending' | 'success' | 'error';
82
- error?: string;
83
- metadata?: Record<string, any>;
84
- }
85
- /**
86
- * Performance snapshot
87
- */
88
- export interface PerformanceSnapshot {
89
- timestamp: string;
90
- requests: {
91
- total: number;
92
- success: number;
93
- error: number;
94
- pending: number;
95
- };
96
- latency: {
97
- p50: number;
98
- p95: number;
99
- p99: number;
100
- avg: number;
101
- };
102
- throughput: {
103
- requestsPerSecond: number;
104
- requestsPerMinute: number;
105
- };
106
- cache: {
107
- hitRate: number;
108
- totalHits: number;
109
- totalMisses: number;
110
- };
111
- errors: {
112
- total: number;
113
- byType: Record<string, number>;
114
- };
115
- }
116
- /**
117
- * Monitoring configuration
118
- */
119
- export interface MonitoringConfig {
120
- enabled: boolean;
121
- metricsRetentionMs: number;
122
- aggregationIntervalMs: number;
123
- maxMetricsInMemory: number;
124
- enableHealthChecks: boolean;
125
- healthCheckIntervalMs: number;
126
- }
127
- /**
128
- * Monitoring manager class
129
- */
130
- export declare class MonitoringManager {
131
- private config;
132
- private metrics;
133
- private requests;
134
- private healthChecks;
135
- private aggregationTimer;
136
- private healthCheckTimer;
137
- private startTime;
138
- constructor(config?: Partial<MonitoringConfig>);
139
- /**
140
- * Record a counter metric (incrementing value)
141
- */
142
- recordCounter(name: string, category: MetricCategory, value?: number, tags?: Record<string, string>, metadata?: Record<string, any>): void;
143
- /**
144
- * Record a gauge metric (point-in-time value)
145
- */
146
- recordGauge(name: string, category: MetricCategory, value: number, tags?: Record<string, string>, metadata?: Record<string, any>): void;
147
- /**
148
- * Record a histogram value (for distribution analysis)
149
- */
150
- recordHistogram(name: string, category: MetricCategory, value: number, tags?: Record<string, string>, metadata?: Record<string, any>): void;
151
- /**
152
- * Start tracking a request
153
- */
154
- startRequest(requestId: string, type: 'tool' | 'resource' | 'prompt', name: string, metadata?: Record<string, any>): void;
155
- /**
156
- * Complete a request successfully
157
- */
158
- completeRequest(requestId: string, metadata?: Record<string, any>): void;
159
- /**
160
- * Mark a request as failed
161
- */
162
- failRequest(requestId: string, error: string, metadata?: Record<string, any>): void;
163
- /**
164
- * Record cache hit
165
- */
166
- recordCacheHit(cacheKey: string): void;
167
- /**
168
- * Record cache miss
169
- */
170
- recordCacheMiss(cacheKey: string): void;
171
- /**
172
- * Register a health check
173
- */
174
- registerHealthCheck(_name: string, _check: () => Promise<{
175
- status: 'healthy' | 'degraded' | 'unhealthy';
176
- message?: string;
177
- }>): void;
178
- /**
179
- * Run a health check
180
- */
181
- runHealthCheck(name: string, check: () => Promise<{
182
- status: 'healthy' | 'degraded' | 'unhealthy';
183
- message?: string;
184
- }>): Promise<HealthCheck>;
185
- /**
186
- * Get all health checks
187
- */
188
- getHealthChecks(): HealthCheck[];
189
- /**
190
- * Get overall health status
191
- */
192
- getHealthStatus(): 'healthy' | 'degraded' | 'unhealthy';
193
- /**
194
- * Get performance snapshot
195
- */
196
- getPerformanceSnapshot(): PerformanceSnapshot;
197
- /**
198
- * Get metric statistics by name and category
199
- */
200
- getMetricStats(name: string, category: MetricCategory): MetricStats | null;
201
- /**
202
- * Get all metrics
203
- */
204
- getMetrics(): Metric[];
205
- /**
206
- * Get metrics by category
207
- */
208
- getMetricsByCategory(category: MetricCategory): Metric[];
209
- /**
210
- * Get recent requests
211
- */
212
- getRecentRequests(limit?: number): RequestMetrics[];
213
- /**
214
- * Clear old metrics based on retention policy
215
- */
216
- cleanup(): number;
217
- /**
218
- * Reset all metrics
219
- */
220
- reset(): void;
221
- /**
222
- * Stop monitoring
223
- */
224
- stop(): void;
225
- /**
226
- * Get uptime in milliseconds
227
- */
228
- getUptime(): number;
229
- /**
230
- * Export metrics to JSON
231
- */
232
- exportMetrics(): string;
233
- private addMetric;
234
- private getMetricSum;
235
- private calculatePercentiles;
236
- private calculateStats;
237
- private percentile;
238
- private startAggregation;
239
- private startHealthChecks;
240
- }
241
- /**
242
- * Singleton monitoring instance
243
- */
244
- export declare const monitoring: MonitoringManager;
245
- /**
246
- * Helper to track async operations
247
- */
248
- export declare function trackOperation<T>(operation: () => Promise<T>, name: string, category: MetricCategory, tags?: Record<string, string>): Promise<T>;
249
- //# sourceMappingURL=monitoring.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"monitoring.d.ts","sourceRoot":"","sources":["../../../src/utils/monitoring.ts"],"names":[],"mappings":"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"}