@sfdxy/anypoint-connect 0.2.3 → 0.3.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 (52) hide show
  1. package/README.md +15 -0
  2. package/dist/analysis/LogAnalyzer.d.ts +26 -0
  3. package/dist/analysis/LogAnalyzer.d.ts.map +1 -0
  4. package/dist/analysis/LogAnalyzer.js +61 -0
  5. package/dist/analysis/LogAnalyzer.js.map +1 -0
  6. package/dist/analysis/error-context.d.ts +19 -0
  7. package/dist/analysis/error-context.d.ts.map +1 -0
  8. package/dist/analysis/error-context.js +69 -0
  9. package/dist/analysis/error-context.js.map +1 -0
  10. package/dist/analysis/error-grouper.d.ts +16 -0
  11. package/dist/analysis/error-grouper.d.ts.map +1 -0
  12. package/dist/analysis/error-grouper.js +44 -0
  13. package/dist/analysis/error-grouper.js.map +1 -0
  14. package/dist/analysis/parser.d.ts +11 -0
  15. package/dist/analysis/parser.d.ts.map +1 -0
  16. package/dist/analysis/parser.js +123 -0
  17. package/dist/analysis/parser.js.map +1 -0
  18. package/dist/analysis/pattern-detector.d.ts +16 -0
  19. package/dist/analysis/pattern-detector.d.ts.map +1 -0
  20. package/dist/analysis/pattern-detector.js +38 -0
  21. package/dist/analysis/pattern-detector.js.map +1 -0
  22. package/dist/analysis/stats.d.ts +10 -0
  23. package/dist/analysis/stats.d.ts.map +1 -0
  24. package/dist/analysis/stats.js +82 -0
  25. package/dist/analysis/stats.js.map +1 -0
  26. package/dist/analysis/types.d.ts +84 -0
  27. package/dist/analysis/types.d.ts.map +1 -0
  28. package/dist/analysis/types.js +6 -0
  29. package/dist/analysis/types.js.map +1 -0
  30. package/dist/analysis/utils.d.ts +16 -0
  31. package/dist/analysis/utils.d.ts.map +1 -0
  32. package/dist/analysis/utils.js +55 -0
  33. package/dist/analysis/utils.js.map +1 -0
  34. package/dist/api/LogsApi.d.ts +5 -0
  35. package/dist/api/LogsApi.d.ts.map +1 -1
  36. package/dist/api/LogsApi.js +9 -0
  37. package/dist/api/LogsApi.js.map +1 -1
  38. package/dist/mcp/prompts.d.ts.map +1 -1
  39. package/dist/mcp/prompts.js +10 -6
  40. package/dist/mcp/prompts.js.map +1 -1
  41. package/dist/mcp/tools/analysis.d.ts +8 -0
  42. package/dist/mcp/tools/analysis.d.ts.map +1 -0
  43. package/dist/mcp/tools/analysis.js +184 -0
  44. package/dist/mcp/tools/analysis.js.map +1 -0
  45. package/dist/mcp/tools/index.d.ts +1 -0
  46. package/dist/mcp/tools/index.d.ts.map +1 -1
  47. package/dist/mcp/tools/index.js +1 -0
  48. package/dist/mcp/tools/index.js.map +1 -1
  49. package/dist/mcp.d.ts.map +1 -1
  50. package/dist/mcp.js +2 -1
  51. package/dist/mcp.js.map +1 -1
  52. package/package.json +1 -1
@@ -0,0 +1,84 @@
1
+ /**
2
+ * Log Analysis — Types
3
+ * Shared type definitions for the analysis pipeline.
4
+ */
5
+ import type { LogEntry } from '../api/LogsApi.js';
6
+ export interface EnrichedLogEntry extends LogEntry {
7
+ /** Correlation ID from JSON Logger or event field */
8
+ correlationId?: string;
9
+ /** Elapsed time in ms from JSON Logger */
10
+ elapsed?: number;
11
+ /** Mule flow name */
12
+ flowName?: string;
13
+ /** START, END, or EXCEPTION tracepoint */
14
+ tracePoint?: string;
15
+ /** Mule error type (e.g. APP:SALESFORCE_ACCESS_ERROR) */
16
+ errorType?: string;
17
+ /** Parsed JSON payload from JsonLogger entries */
18
+ jsonPayload?: Record<string, unknown>;
19
+ /** Joined stack trace text */
20
+ stackTrace?: string;
21
+ /** Logger class name (JsonLogger, DefaultExceptionListener, etc.) */
22
+ loggerName?: string;
23
+ /** Raw event ID from the log line */
24
+ eventId?: string;
25
+ }
26
+ export interface ErrorWithContext {
27
+ error: EnrichedLogEntry;
28
+ before: EnrichedLogEntry[];
29
+ after: EnrichedLogEntry[];
30
+ correlationId?: string;
31
+ flowTrace: string[];
32
+ }
33
+ export interface ErrorGroup {
34
+ errorType: string;
35
+ template: string;
36
+ count: number;
37
+ firstSeen: string;
38
+ lastSeen: string;
39
+ samples: ErrorWithContext[];
40
+ affectedFlows: string[];
41
+ }
42
+ export interface LogPattern {
43
+ template: string;
44
+ count: number;
45
+ level: string;
46
+ percentage: number;
47
+ loggerName?: string;
48
+ }
49
+ export interface ErrorSpike {
50
+ window: string;
51
+ count: number;
52
+ rate: number;
53
+ }
54
+ export interface LogStats {
55
+ totalLines: number;
56
+ totalEntries: number;
57
+ byLevel: Record<string, number>;
58
+ errorRate: number;
59
+ timeRange: {
60
+ start: string;
61
+ end: string;
62
+ };
63
+ errorSpikes: ErrorSpike[];
64
+ topErrors: ErrorGroup[];
65
+ topPatterns: LogPattern[];
66
+ noisePercentage: number;
67
+ uniqueCorrelationIds: number;
68
+ }
69
+ export interface AnalysisOptions {
70
+ hoursBack?: number;
71
+ level?: string;
72
+ contextBefore?: number;
73
+ contextAfter?: number;
74
+ maxErrorGroups?: number;
75
+ maxPatterns?: number;
76
+ }
77
+ export interface AnalysisResult {
78
+ entries: EnrichedLogEntry[];
79
+ errorContexts: ErrorWithContext[];
80
+ errorGroups: ErrorGroup[];
81
+ patterns: LogPattern[];
82
+ stats: LogStats;
83
+ }
84
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/analysis/types.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAElD,MAAM,WAAW,gBAAiB,SAAQ,QAAQ;IAC9C,qDAAqD;IACrD,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,qBAAqB;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,0CAA0C;IAC1C,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,yDAAyD;IACzD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,kDAAkD;IAClD,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IACtC,8BAA8B;IAC9B,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC7B,KAAK,EAAE,gBAAgB,CAAC;IACxB,MAAM,EAAE,gBAAgB,EAAE,CAAC;IAC3B,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,SAAS,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACvB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,aAAa,EAAE,MAAM,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU;IACvB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,UAAU;IACvB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,QAAQ;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,MAAM,CAAC;IACrB,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAChC,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1C,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,SAAS,EAAE,UAAU,EAAE,CAAC;IACxB,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,eAAe,EAAE,MAAM,CAAC;IACxB,oBAAoB,EAAE,MAAM,CAAC;CAChC;AAED,MAAM,WAAW,eAAe;IAC5B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,gBAAgB,EAAE,CAAC;IAC5B,aAAa,EAAE,gBAAgB,EAAE,CAAC;IAClC,WAAW,EAAE,UAAU,EAAE,CAAC;IAC1B,QAAQ,EAAE,UAAU,EAAE,CAAC;IACvB,KAAK,EAAE,QAAQ,CAAC;CACnB"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Log Analysis — Types
3
+ * Shared type definitions for the analysis pipeline.
4
+ */
5
+ export {};
6
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/analysis/types.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
@@ -0,0 +1,16 @@
1
+ /**
2
+ * Log Analysis — Utilities
3
+ * Shared helpers: noise detection, templatization, constants.
4
+ */
5
+ import type { EnrichedLogEntry } from './types.js';
6
+ /** Numeric priority for log level filtering */
7
+ export declare const LEVEL_PRIORITY: Record<string, number>;
8
+ /**
9
+ * Replace variable tokens in a message with <*> for template grouping.
10
+ */
11
+ export declare function templatize(message: string): string;
12
+ /**
13
+ * Check if an entry is HTTP listener noise.
14
+ */
15
+ export declare function isNoise(entry: EnrichedLogEntry): boolean;
16
+ //# sourceMappingURL=utils.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/analysis/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAgBnD,+CAA+C;AAC/C,eAAO,MAAM,cAAc,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAOjD,CAAC;AAEF;;GAEG;AACH,wBAAgB,UAAU,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAUlD;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CASxD"}
@@ -0,0 +1,55 @@
1
+ /**
2
+ * Log Analysis — Utilities
3
+ * Shared helpers: noise detection, templatization, constants.
4
+ */
5
+ /** Variable-like tokens to replace with <*> in pattern detection */
6
+ const VARIABLE_PATTERNS = [
7
+ /\b[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}\b/gi, // UUIDs
8
+ /\b[a-zA-Z0-9]{15,18}\b/g, // Salesforce IDs
9
+ /\b\d{4}-\d{2}-\d{2}T[\d:.]+Z?\b/g, // ISO timestamps
10
+ /\b\d+\.\d+\.\d+\.\d+\b/g, // IP addresses
11
+ /\b\d{5,}\b/g, // Long numbers (5+ digits)
12
+ /\b0x[0-9a-fA-F]+\b/g, // Hex addresses
13
+ /@ ?[0-9a-f]{6,8}\b/g, // Object hash references like @5d035c54
14
+ ];
15
+ /** HTTP listener noise pattern */
16
+ const HTTP_LISTENER_PATTERN = /^.*http\.listener\.\d+\s+-\s+\[/;
17
+ /** Numeric priority for log level filtering */
18
+ export const LEVEL_PRIORITY = {
19
+ TRACE: 0,
20
+ DEBUG: 1,
21
+ INFO: 2,
22
+ WARN: 3,
23
+ ERROR: 4,
24
+ FATAL: 5,
25
+ };
26
+ /**
27
+ * Replace variable tokens in a message with <*> for template grouping.
28
+ */
29
+ export function templatize(message) {
30
+ let result = message;
31
+ for (const pattern of VARIABLE_PATTERNS) {
32
+ result = result.replace(pattern, '<*>');
33
+ }
34
+ result = result.replace(/(<\*>\s*){2,}/g, '<*> ');
35
+ if (result.length > 200) {
36
+ result = result.substring(0, 200) + '...';
37
+ }
38
+ return result.trim();
39
+ }
40
+ /**
41
+ * Check if an entry is HTTP listener noise.
42
+ */
43
+ export function isNoise(entry) {
44
+ if (entry.priority === 'DEBUG' && entry.loggerName) {
45
+ const name = entry.loggerName.toLowerCase();
46
+ if (name.includes('http.listener') || name.includes('http-listener'))
47
+ return true;
48
+ }
49
+ if (entry.priority === 'DEBUG' && entry.message) {
50
+ if (HTTP_LISTENER_PATTERN.test(entry.message))
51
+ return true;
52
+ }
53
+ return false;
54
+ }
55
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/analysis/utils.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH,oEAAoE;AACpE,MAAM,iBAAiB,GAAG;IACtB,oEAAoE,EAAE,QAAQ;IAC9E,yBAAyB,EAAE,iBAAiB;IAC5C,kCAAkC,EAAE,iBAAiB;IACrD,yBAAyB,EAAE,eAAe;IAC1C,aAAa,EAAE,2BAA2B;IAC1C,qBAAqB,EAAE,gBAAgB;IACvC,qBAAqB,EAAE,wCAAwC;CAClE,CAAC;AAEF,kCAAkC;AAClC,MAAM,qBAAqB,GAAG,iCAAiC,CAAC;AAEhE,+CAA+C;AAC/C,MAAM,CAAC,MAAM,cAAc,GAA2B;IAClD,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;IACR,IAAI,EAAE,CAAC;IACP,IAAI,EAAE,CAAC;IACP,KAAK,EAAE,CAAC;IACR,KAAK,EAAE,CAAC;CACX,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACtC,IAAI,MAAM,GAAG,OAAO,CAAC;IACrB,KAAK,MAAM,OAAO,IAAI,iBAAiB,EAAE,CAAC;QACtC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;IAC5C,CAAC;IACD,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,EAAE,MAAM,CAAC,CAAC;IAClD,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;QACtB,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,GAAG,KAAK,CAAC;IAC9C,CAAC;IACD,OAAO,MAAM,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,KAAuB;IAC3C,IAAI,KAAK,CAAC,QAAQ,KAAK,OAAO,IAAI,KAAK,CAAC,UAAU,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,KAAK,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC;QAC5C,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC;YAAE,OAAO,IAAI,CAAC;IACtF,CAAC;IACD,IAAI,KAAK,CAAC,QAAQ,KAAK,OAAO,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAC9C,IAAI,qBAAqB,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC;YAAE,OAAO,IAAI,CAAC;IAC/D,CAAC;IACD,OAAO,KAAK,CAAC;AACjB,CAAC"}
@@ -36,6 +36,11 @@ export declare class LogsApi {
36
36
  * Format: "2026-02-13T22:42:32.359Z INFO [replicaId] message..."
37
37
  */
38
38
  private parseLogLine;
39
+ /**
40
+ * Get raw log text for a CH2 application (for analysis pipeline).
41
+ * Returns the full log file as a string without parsing.
42
+ */
43
+ getRawText(orgId: string, envId: string, appName: string): Promise<string>;
39
44
  /**
40
45
  * Get parsed log entries for a CH2 application.
41
46
  * Fetches the log file and parses it.
@@ -1 +1 @@
1
- {"version":3,"file":"LogsApi.d.ts","sourceRoot":"","sources":["../../src/api/LogsApi.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAiB,MAAM,mBAAmB,CAAC;AAGrE,MAAM,WAAW,QAAQ;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,EAAE,CAAC;CACpB;AAcD,qBAAa,OAAO;IAEZ,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;gBADJ,IAAI,EAAE,UAAU,EAChB,GAAG,CAAC,EAAE,YAAY,YAAA;IAGvC;;;OAGG;IACG,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAY1G;;OAEG;YACW,iBAAiB;IA2B/B;;;OAGG;IACH,OAAO,CAAC,YAAY;IAyBpB;;;OAGG;IACG,OAAO,CACT,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QACL,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACd,GACP,OAAO,CAAC,QAAQ,EAAE,CAAC;IAmCtB;;;OAGG;IACI,QAAQ,CACX,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;KACd,GACP,cAAc,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC;IAwC5C;;OAEG;IACG,gBAAgB,CAClB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,QAAQ,EAAE,CAAC;CAOzB"}
1
+ {"version":3,"file":"LogsApi.d.ts","sourceRoot":"","sources":["../../src/api/LogsApi.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAC1D,OAAO,KAAK,EAAE,YAAY,EAAiB,MAAM,mBAAmB,CAAC;AAGrE,MAAM,WAAW,QAAQ;IACrB,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,YAAY,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,MAAM,WAAW,iBAAiB;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,EAAE,QAAQ,EAAE,CAAC;CACpB;AAcD,qBAAa,OAAO;IAEZ,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC;gBADJ,IAAI,EAAE,UAAU,EAChB,GAAG,CAAC,EAAE,YAAY,YAAA;IAGvC;;;OAGG;IACG,eAAe,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAY1G;;OAEG;YACW,iBAAiB;IA2B/B;;;OAGG;IACH,OAAO,CAAC,YAAY;IAyBpB;;;OAGG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAMhF;;;OAGG;IACG,OAAO,CACT,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QACL,SAAS,CAAC,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,MAAM,CAAC,EAAE,MAAM,CAAC;KACd,GACP,OAAO,CAAC,QAAQ,EAAE,CAAC;IAmCtB;;;OAGG;IACI,QAAQ,CACX,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,OAAO,GAAE;QACL,KAAK,CAAC,EAAE,MAAM,CAAC;QACf,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,MAAM,CAAC,EAAE,MAAM,CAAC;KACd,GACP,cAAc,CAAC,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAO,CAAC;IAwC5C;;OAEG;IACG,gBAAgB,CAClB,KAAK,EAAE,MAAM,EACb,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EACf,KAAK,CAAC,EAAE,MAAM,GACf,OAAO,CAAC,QAAQ,EAAE,CAAC;CAOzB"}
@@ -78,6 +78,15 @@ export class LogsApi {
78
78
  message: line,
79
79
  };
80
80
  }
81
+ /**
82
+ * Get raw log text for a CH2 application (for analysis pipeline).
83
+ * Returns the full log file as a string without parsing.
84
+ */
85
+ async getRawText(orgId, envId, appName) {
86
+ const { deploymentId, specId } = await this.resolveDeployment(orgId, envId, appName);
87
+ const buffer = await this.downloadLogFile(orgId, envId, deploymentId, specId);
88
+ return buffer.toString('utf-8');
89
+ }
81
90
  /**
82
91
  * Get parsed log entries for a CH2 application.
83
92
  * Fetches the log file and parses it.
@@ -1 +1 @@
1
- {"version":3,"file":"LogsApi.js","sourceRoot":"","sources":["../../src/api/LogsApi.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LogsApi.js","sourceRoot":"","sources":["../../src/api/LogsApi.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/mcp/prompts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,QAsMhD"}
1
+ {"version":3,"file":"prompts.d.ts","sourceRoot":"","sources":["../../src/mcp/prompts.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAGzE,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,QA0MhD"}
@@ -53,16 +53,19 @@ Produce a GO / NO-GO recommendation with rationale. If there are concerns, list
53
53
  text: `The application "${appName}" in ${environment} is experiencing issues${symptom ? `: "${symptom}"` : ''}. Please diagnose:
54
54
 
55
55
  1. **Deployment health**: Use get_app_status to check replica states — look for FAILED or PARTIAL_STARTED replicas, recent restarts, or version mismatches.
56
- 2. **Error analysis**: Use get_logs with level=ERROR and 200 lines to identify error patterns. Group errors by type (e.g. MULE:CONNECTIVITY, MULE:EXPRESSION, HTTP:TIMEOUT, java.lang.OutOfMemoryError).
57
- 3. **Performance check**: Use get_metrics for the last 4 hours — look for spikes in error count, elevated response times, or sudden drops in request volume.
58
- 4. **Root cause analysis**: Based on the evidence, identify the most likely root cause from common MuleSoft issues:
56
+ 2. **Error analysis**: Use analyze_errors to get clustered error groups with full context (what happened before and after each error). Focus on the top 3 error types and their causal chains.
57
+ 3. **Log patterns**: Use get_log_patterns to understand normal vs abnormal activity — look for unexpected patterns or missing expected patterns.
58
+ 4. **Performance check**: Use get_metrics for the last 4 hours — look for spikes in error count, elevated response times, or sudden drops in request volume.
59
+ 5. **Health stats**: Use get_log_stats for a quick statistical summary — check error rate, error spikes, and noise levels.
60
+ 6. **Root cause analysis**: Based on the evidence, identify the most likely root cause from common MuleSoft issues:
59
61
  - DataWeave transformation errors (MULE:EXPRESSION)
60
62
  - Downstream service timeouts (HTTP:TIMEOUT, HTTP:CONNECTIVITY)
61
63
  - Memory pressure / ObjectStore issues
62
64
  - Configuration property errors (missing secure properties, wrong endpoint URLs)
63
65
  - Database connection pool exhaustion
64
66
  - API autodiscovery or policy enforcement failures
65
- 5. **Remediation**: Suggest specific fixes. If a restart would help, use restart_app. If scaling is needed, recommend scale_app with a replica count.`,
67
+ - Salesforce access errors (SALESFORCE_ACCESS_ERROR)
68
+ 7. **Remediation**: Suggest specific fixes. If a restart would help, use restart_app. If scaling is needed, recommend scale_app with a replica count.`,
66
69
  },
67
70
  },
68
71
  ],
@@ -114,8 +117,9 @@ End with prioritized recommendations for improving governance posture.`,
114
117
  1. **App inventory**: Use list_apps to get all deployed applications. Count total apps, how many are APPLIED/RUNNING vs FAILED/DEPLOYING.
115
118
  2. **Error landscape**: Use get_metrics for all apps over the last 24 hours. Rank apps by error count (highest first). Flag any app with error rate above 1%.
116
119
  3. **Performance**: From the same metrics, identify the 3 slowest apps by average response time. Note any above 1000ms.
117
- 4. **Top errors**: For the app with the most errors, use get_logs with level=ERROR and 50 lines to identify the dominant error pattern.
118
- 5. **Version audit**: Note any apps running on different Mule runtime versions inconsistent runtimes can indicate missed upgrades.
120
+ 4. **Top errors**: For the app with the most errors, use analyze_errors to get clustered error groups with context — identify the dominant error pattern and what causes it.
121
+ 5. **Health stats**: Use get_log_stats for the worst-performing app to get error rate, spikes, and noise percentage.
122
+ 6. **Version audit**: Note any apps running on different Mule runtime versions — inconsistent runtimes can indicate missed upgrades.
119
123
 
120
124
  Format the report with clear sections and emojis for quick scanning:
121
125
  - 🟢 Healthy (no errors, good response times)
@@ -1 +1 @@
1
- {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/mcp/prompts.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompts.js","sourceRoot":"","sources":["../../src/mcp/prompts.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /**
2
+ * MCP Tool Registrar — Log Analysis tools
3
+ * analyze_errors, get_log_patterns, get_log_stats
4
+ */
5
+ import type { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
6
+ import type { AnypointClient } from '../../client/AnypointClient.js';
7
+ export declare function registerAnalysisTools(server: McpServer, client: AnypointClient): void;
8
+ //# sourceMappingURL=analysis.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analysis.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/analysis.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AAEzE,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAgDrE,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,cAAc,QAyL9E"}
@@ -0,0 +1,184 @@
1
+ /**
2
+ * MCP Tool Registrar — Log Analysis tools
3
+ * analyze_errors, get_log_patterns, get_log_stats
4
+ */
5
+ import { z } from 'zod';
6
+ import { analyzeLogs } from '../../analysis/LogAnalyzer.js';
7
+ import { mcpError } from './shared.js';
8
+ /**
9
+ * Format an ErrorWithContext into a readable string for the LLM.
10
+ */
11
+ function formatErrorContext(ctx) {
12
+ const lines = [];
13
+ if (ctx.correlationId) {
14
+ lines.push(`── Correlation: ${ctx.correlationId} ──`);
15
+ }
16
+ if (ctx.flowTrace.length > 0) {
17
+ lines.push(`Flow path: ${ctx.flowTrace.join(' → ')}`);
18
+ }
19
+ if (ctx.before.length > 0) {
20
+ lines.push('─── Before ───');
21
+ for (const e of ctx.before) {
22
+ lines.push(formatEntry(e));
23
+ }
24
+ }
25
+ lines.push('─── Error ───');
26
+ lines.push(formatEntry(ctx.error));
27
+ if (ctx.error.stackTrace) {
28
+ lines.push(ctx.error.stackTrace);
29
+ }
30
+ if (ctx.after.length > 0) {
31
+ lines.push('─── After ───');
32
+ for (const e of ctx.after) {
33
+ lines.push(formatEntry(e));
34
+ }
35
+ }
36
+ return lines.join('\n');
37
+ }
38
+ function formatEntry(e) {
39
+ const ts = new Date(e.timestamp).toISOString().split('T')[1].replace('Z', '');
40
+ const flow = e.flowName ? ` [${e.flowName}]` : '';
41
+ const elapsed = e.elapsed !== undefined ? ` (${e.elapsed}ms)` : '';
42
+ return ` ${ts} ${e.priority.padEnd(5)} ${e.message || ''}${flow}${elapsed}`;
43
+ }
44
+ export function registerAnalysisTools(server, client) {
45
+ // ── analyze_errors ───────────────────────────────────
46
+ server.registerTool('analyze_errors', {
47
+ title: 'Analyze Application Errors',
48
+ description: "Analyzes error patterns in a Mule application's logs. Groups similar errors, shows occurrence counts, affected flows, and provides full context (what happened before and after each error). Use this to diagnose why an app is failing — it shows the causal chain leading to each error type.",
49
+ inputSchema: {
50
+ appName: z.string().describe('Application name exactly as deployed'),
51
+ environment: z.string().describe('Environment name or ID'),
52
+ hoursBack: z.number().optional().describe('How many hours of logs to analyze (default: all available)'),
53
+ limit: z.number().optional().describe('Maximum number of error groups to return (default: 10)'),
54
+ },
55
+ annotations: { readOnlyHint: true },
56
+ }, async ({ appName, environment, hoursBack, limit }) => {
57
+ try {
58
+ const orgId = await client.getDefaultOrgId();
59
+ const env = await client.accessManagement.resolveEnvironment(orgId, environment);
60
+ const rawText = await client.logs.getRawText(orgId, env.id, appName);
61
+ const result = analyzeLogs(rawText, {
62
+ hoursBack,
63
+ maxErrorGroups: limit || 10,
64
+ });
65
+ if (result.errorGroups.length === 0) {
66
+ return {
67
+ content: [
68
+ {
69
+ type: 'text',
70
+ text: `No errors found in ${appName} logs${hoursBack ? ` for the last ${hoursBack} hours` : ''}.`,
71
+ },
72
+ ],
73
+ };
74
+ }
75
+ const sections = [];
76
+ sections.push(`## Error Analysis for ${appName} in ${env.name}`, `Total: ${result.stats.byLevel['ERROR'] || 0} errors (${result.stats.errorRate}% error rate)`, `Time range: ${result.stats.timeRange.start} → ${result.stats.timeRange.end}`, '');
77
+ for (const group of result.errorGroups) {
78
+ sections.push(`### ${group.errorType} — ${group.count} occurrences`, `Pattern: ${group.template}`, `First: ${group.firstSeen} | Last: ${group.lastSeen}`, `Affected flows: ${group.affectedFlows.join(', ') || 'unknown'}`, '');
79
+ for (let i = 0; i < group.samples.length; i++) {
80
+ sections.push(`**Sample ${i + 1}:**`);
81
+ sections.push(formatErrorContext(group.samples[i]));
82
+ sections.push('');
83
+ }
84
+ }
85
+ return {
86
+ content: [{ type: 'text', text: sections.join('\n') }],
87
+ };
88
+ }
89
+ catch (error) {
90
+ return mcpError(error);
91
+ }
92
+ });
93
+ // ── get_log_patterns ─────────────────────────────────
94
+ server.registerTool('get_log_patterns', {
95
+ title: 'Get Log Message Patterns',
96
+ description: 'Identifies the most common recurring log message patterns in an application. Shows what the app is doing at a glance — which flows are active, how often certain operations run, and what percentage of log volume each pattern accounts for. HTTP listener noise is filtered out.',
97
+ inputSchema: {
98
+ appName: z.string().describe('Application name exactly as deployed'),
99
+ environment: z.string().describe('Environment name or ID'),
100
+ hoursBack: z.number().optional().describe('How many hours of logs to analyze (default: all available)'),
101
+ topN: z.number().optional().describe('Number of top patterns to return (default: 15)'),
102
+ },
103
+ annotations: { readOnlyHint: true },
104
+ }, async ({ appName, environment, hoursBack, topN }) => {
105
+ try {
106
+ const orgId = await client.getDefaultOrgId();
107
+ const env = await client.accessManagement.resolveEnvironment(orgId, environment);
108
+ const rawText = await client.logs.getRawText(orgId, env.id, appName);
109
+ const result = analyzeLogs(rawText, {
110
+ hoursBack,
111
+ maxPatterns: topN || 15,
112
+ });
113
+ const lines = [
114
+ `## Log Patterns for ${appName} in ${env.name}`,
115
+ `${result.stats.totalEntries} entries analyzed (${result.stats.noisePercentage}% HTTP noise filtered)`,
116
+ '',
117
+ '| # | Level | Count | % | Pattern |',
118
+ '|---|-------|-------|---|---------|',
119
+ ];
120
+ result.patterns.forEach((p, i) => {
121
+ lines.push(`| ${i + 1} | ${p.level} | ${p.count} | ${p.percentage}% | ${p.template} |`);
122
+ });
123
+ return {
124
+ content: [{ type: 'text', text: lines.join('\n') }],
125
+ };
126
+ }
127
+ catch (error) {
128
+ return mcpError(error);
129
+ }
130
+ });
131
+ // ── get_log_stats ────────────────────────────────────
132
+ server.registerTool('get_log_stats', {
133
+ title: 'Get Log Statistics',
134
+ description: "Returns a statistical health summary of an application's logs: level distribution, error rate, error spikes (time windows with elevated errors), noise percentage, and unique transaction count. Use this for quick health checks without reading individual log lines.",
135
+ inputSchema: {
136
+ appName: z.string().describe('Application name exactly as deployed'),
137
+ environment: z.string().describe('Environment name or ID'),
138
+ hoursBack: z.number().optional().describe('How many hours of logs to analyze (default: all available)'),
139
+ },
140
+ annotations: { readOnlyHint: true },
141
+ }, async ({ appName, environment, hoursBack }) => {
142
+ try {
143
+ const orgId = await client.getDefaultOrgId();
144
+ const env = await client.accessManagement.resolveEnvironment(orgId, environment);
145
+ const rawText = await client.logs.getRawText(orgId, env.id, appName);
146
+ const result = analyzeLogs(rawText, { hoursBack });
147
+ const s = result.stats;
148
+ const lines = [
149
+ `## Log Stats for ${appName} in ${env.name}`,
150
+ '',
151
+ `**Volume:** ${s.totalEntries} entries from ${s.totalLines} raw lines`,
152
+ `**Time range:** ${s.timeRange.start} → ${s.timeRange.end}`,
153
+ `**Noise:** ${s.noisePercentage}% HTTP listener DEBUG traffic`,
154
+ `**Unique transactions:** ${s.uniqueCorrelationIds}`,
155
+ '',
156
+ '### Level Distribution',
157
+ ...Object.entries(s.byLevel)
158
+ .sort((a, b) => b[1] - a[1])
159
+ .map(([level, count]) => `- **${level}**: ${count} (${((count / s.totalEntries) * 100).toFixed(1)}%)`),
160
+ '',
161
+ `**Error rate:** ${s.errorRate}%`,
162
+ ];
163
+ if (s.errorSpikes.length > 0) {
164
+ lines.push('', '### Error Spikes (above-average windows)');
165
+ for (const spike of s.errorSpikes) {
166
+ lines.push(`- ${spike.window}: ${spike.count} errors (${spike.rate}% rate)`);
167
+ }
168
+ }
169
+ if (s.topErrors.length > 0) {
170
+ lines.push('', '### Top Error Types');
171
+ for (const eg of s.topErrors.slice(0, 5)) {
172
+ lines.push(`- **${eg.errorType}**: ${eg.count}× — ${eg.template}`);
173
+ }
174
+ }
175
+ return {
176
+ content: [{ type: 'text', text: lines.join('\n') }],
177
+ };
178
+ }
179
+ catch (error) {
180
+ return mcpError(error);
181
+ }
182
+ });
183
+ }
184
+ //# sourceMappingURL=analysis.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"analysis.js","sourceRoot":"","sources":["../../../src/mcp/tools/analysis.ts"],"names":[],"mappings":"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"}
@@ -4,6 +4,7 @@
4
4
  export { registerIdentityTools } from './identity.js';
5
5
  export { registerApplicationTools } from './applications.js';
6
6
  export { registerLogTools } from './logs.js';
7
+ export { registerAnalysisTools } from './analysis.js';
7
8
  export { registerMonitoringTools } from './monitoring.js';
8
9
  export { registerExchangeTools } from './exchange.js';
9
10
  export { registerApiManagerTools } from './api-manager.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/mcp/tools/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC"}
@@ -4,6 +4,7 @@
4
4
  export { registerIdentityTools } from './identity.js';
5
5
  export { registerApplicationTools } from './applications.js';
6
6
  export { registerLogTools } from './logs.js';
7
+ export { registerAnalysisTools } from './analysis.js';
7
8
  export { registerMonitoringTools } from './monitoring.js';
8
9
  export { registerExchangeTools } from './exchange.js';
9
10
  export { registerApiManagerTools } from './api-manager.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/tools/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/mcp/tools/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,iBAAiB,CAAC;AAC1D,OAAO,EAAE,qBAAqB,EAAE,MAAM,eAAe,CAAC;AACtD,OAAO,EAAE,uBAAuB,EAAE,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC"}
package/dist/mcp.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":";AACA;;;;;;GAMG;AAoBH,qBAAa,wBAAwB;IACjC,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,MAAM,CAAiB;;IA8BzB,KAAK;CAKd"}
1
+ {"version":3,"file":"mcp.d.ts","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":";AACA;;;;;;GAMG;AAqBH,qBAAa,wBAAwB;IACjC,OAAO,CAAC,MAAM,CAAY;IAC1B,OAAO,CAAC,MAAM,CAAiB;;IA+BzB,KAAK;CAKd"}
package/dist/mcp.js CHANGED
@@ -11,7 +11,7 @@ import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'
11
11
  import { getConfig } from './utils/config.js';
12
12
  import { AnypointClient } from './client/AnypointClient.js';
13
13
  import { VERSION } from './version.js';
14
- import { registerIdentityTools, registerApplicationTools, registerLogTools, registerMonitoringTools, registerExchangeTools, registerApiManagerTools, registerDesignCenterTools, } from './mcp/tools/index.js';
14
+ import { registerIdentityTools, registerApplicationTools, registerLogTools, registerAnalysisTools, registerMonitoringTools, registerExchangeTools, registerApiManagerTools, registerDesignCenterTools, } from './mcp/tools/index.js';
15
15
  import { registerResources } from './mcp/resources.js';
16
16
  import { registerPrompts } from './mcp/prompts.js';
17
17
  export class AnypointConnectMcpServer {
@@ -33,6 +33,7 @@ export class AnypointConnectMcpServer {
33
33
  registerIdentityTools(this.server, this.client);
34
34
  registerApplicationTools(this.server, this.client);
35
35
  registerLogTools(this.server, this.client);
36
+ registerAnalysisTools(this.server, this.client);
36
37
  registerMonitoringTools(this.server, this.client);
37
38
  registerExchangeTools(this.server, this.client);
38
39
  registerApiManagerTools(this.server, this.client);
package/dist/mcp.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":";AACA;;;;;;GAMG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AACjF,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,4BAA4B,CAAC;AAC5D,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,OAAO,EACH,qBAAqB,EACrB,wBAAwB,EACxB,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACvB,yBAAyB,GAC5B,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,kBAAkB,CAAC;AAEnD,MAAM,OAAO,wBAAwB;IACzB,MAAM,CAAY;IAClB,MAAM,CAAiB;IAE/B;QACI,IAAI,CAAC,MAAM,GAAG,IAAI,SAAS,CAAC;YACxB,IAAI,EAAE,kBAAkB;YACxB,OAAO,EAAE,OAAO;SACnB,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,SAAS,EAAE,CAAC;QAC3B,IAAI,CAAC,MAAM,GAAG,IAAI,cAAc,CAAC;YAC7B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,YAAY,EAAE,MAAM,CAAC,YAAY;YACjC,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,OAAO,EAAE,MAAM,CAAC,OAAO;SAC1B,CAAC,CAAC;QAEH,2BAA2B;QAC3B,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAChD,wBAAwB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QACnD,gBAAgB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAC3C,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAClD,qBAAqB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAChD,uBAAuB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAClD,yBAAyB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,CAAC;QAEpD,iCAAiC;QACjC,iBAAiB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;QACpE,eAAe,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACjC,CAAC;IAED,KAAK,CAAC,KAAK;QACP,MAAM,SAAS,GAAG,IAAI,oBAAoB,EAAE,CAAC;QAC7C,MAAM,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QACrC,OAAO,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC;IAClE,CAAC;CACJ;AAED,0EAA0E;AAC1E,MAAM,WAAW,GACb,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,UAAU,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,KAAK,UAAU,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;AAE1G,IAAI,WAAW,EAAE,CAAC;IACd,MAAM,MAAM,GAAG,IAAI,wBAAwB,EAAE,CAAC;IAC9C,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,oBAAoB,GAAG,EAAE,CAAC,CAAC,CAAC;AAC5E,CAAC"}
1
+ {"version":3,"file":"mcp.js","sourceRoot":"","sources":["../src/mcp.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sfdxy/anypoint-connect",
3
- "version": "0.2.3",
3
+ "version": "0.3.0",
4
4
  "description": "CLI + MCP toolkit for Anypoint Platform — deploy, tail logs, pull metrics, manage API specs, with production safety nets",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",