couchloop-eq-mcp 1.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 (222) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +358 -0
  3. package/assets/logo/README.md +12 -0
  4. package/assets/logo/couchloop_EQ-IconLogo.png +0 -0
  5. package/dist/auth/middleware.d.ts +8 -0
  6. package/dist/auth/middleware.d.ts.map +1 -0
  7. package/dist/auth/middleware.js +59 -0
  8. package/dist/auth/middleware.js.map +1 -0
  9. package/dist/clients/shrinkChatClient.d.ts +195 -0
  10. package/dist/clients/shrinkChatClient.d.ts.map +1 -0
  11. package/dist/clients/shrinkChatClient.js +349 -0
  12. package/dist/clients/shrinkChatClient.js.map +1 -0
  13. package/dist/db/client.d.ts +23 -0
  14. package/dist/db/client.d.ts.map +1 -0
  15. package/dist/db/client.js +78 -0
  16. package/dist/db/client.js.map +1 -0
  17. package/dist/db/migrate.d.ts +4 -0
  18. package/dist/db/migrate.d.ts.map +1 -0
  19. package/dist/db/migrate.js +34 -0
  20. package/dist/db/migrate.js.map +1 -0
  21. package/dist/db/migrations/schema.d.ts +1074 -0
  22. package/dist/db/migrations/schema.d.ts.map +1 -0
  23. package/dist/db/migrations/schema.js +160 -0
  24. package/dist/db/migrations/schema.js.map +1 -0
  25. package/dist/db/schema.d.ts +1213 -0
  26. package/dist/db/schema.d.ts.map +1 -0
  27. package/dist/db/schema.js +157 -0
  28. package/dist/db/schema.js.map +1 -0
  29. package/dist/db/seed.d.ts +4 -0
  30. package/dist/db/seed.d.ts.map +1 -0
  31. package/dist/db/seed.js +57 -0
  32. package/dist/db/seed.js.map +1 -0
  33. package/dist/db/seedOAuth.d.ts +4 -0
  34. package/dist/db/seedOAuth.d.ts.map +1 -0
  35. package/dist/db/seedOAuth.js +76 -0
  36. package/dist/db/seedOAuth.js.map +1 -0
  37. package/dist/index.d.ts +3 -0
  38. package/dist/index.d.ts.map +1 -0
  39. package/dist/index.js +93 -0
  40. package/dist/index.js.map +1 -0
  41. package/dist/resources/index.d.ts +11 -0
  42. package/dist/resources/index.d.ts.map +1 -0
  43. package/dist/resources/index.js +56 -0
  44. package/dist/resources/index.js.map +1 -0
  45. package/dist/resources/journey-status.d.ts +2 -0
  46. package/dist/resources/journey-status.d.ts.map +1 -0
  47. package/dist/resources/journey-status.js +42 -0
  48. package/dist/resources/journey-status.js.map +1 -0
  49. package/dist/resources/session-summary.d.ts +2 -0
  50. package/dist/resources/session-summary.d.ts.map +1 -0
  51. package/dist/resources/session-summary.js +85 -0
  52. package/dist/resources/session-summary.js.map +1 -0
  53. package/dist/resources/user-context.d.ts +2 -0
  54. package/dist/resources/user-context.d.ts.map +1 -0
  55. package/dist/resources/user-context.js +79 -0
  56. package/dist/resources/user-context.js.map +1 -0
  57. package/dist/server/index.d.ts +3 -0
  58. package/dist/server/index.d.ts.map +1 -0
  59. package/dist/server/index.js +385 -0
  60. package/dist/server/index.js.map +1 -0
  61. package/dist/server/middleware/auth.d.ts +30 -0
  62. package/dist/server/middleware/auth.d.ts.map +1 -0
  63. package/dist/server/middleware/auth.js +157 -0
  64. package/dist/server/middleware/auth.js.map +1 -0
  65. package/dist/server/oauth/anomalyDetection.d.ts +146 -0
  66. package/dist/server/oauth/anomalyDetection.d.ts.map +1 -0
  67. package/dist/server/oauth/anomalyDetection.js +405 -0
  68. package/dist/server/oauth/anomalyDetection.js.map +1 -0
  69. package/dist/server/oauth/authServer.d.ts +61 -0
  70. package/dist/server/oauth/authServer.d.ts.map +1 -0
  71. package/dist/server/oauth/authServer.js +283 -0
  72. package/dist/server/oauth/authServer.js.map +1 -0
  73. package/dist/server/oauth/dpop.d.ts +135 -0
  74. package/dist/server/oauth/dpop.d.ts.map +1 -0
  75. package/dist/server/oauth/dpop.js +338 -0
  76. package/dist/server/oauth/dpop.js.map +1 -0
  77. package/dist/server/oauth/gdpr/consent.d.ts +173 -0
  78. package/dist/server/oauth/gdpr/consent.d.ts.map +1 -0
  79. package/dist/server/oauth/gdpr/consent.js +388 -0
  80. package/dist/server/oauth/gdpr/consent.js.map +1 -0
  81. package/dist/server/oauth/gdpr/dataPortability.d.ts +214 -0
  82. package/dist/server/oauth/gdpr/dataPortability.d.ts.map +1 -0
  83. package/dist/server/oauth/gdpr/dataPortability.js +486 -0
  84. package/dist/server/oauth/gdpr/dataPortability.js.map +1 -0
  85. package/dist/server/oauth/gdpr/index.d.ts +103 -0
  86. package/dist/server/oauth/gdpr/index.d.ts.map +1 -0
  87. package/dist/server/oauth/gdpr/index.js +273 -0
  88. package/dist/server/oauth/gdpr/index.js.map +1 -0
  89. package/dist/server/oauth/gdpr/rightToErasure.d.ts +184 -0
  90. package/dist/server/oauth/gdpr/rightToErasure.d.ts.map +1 -0
  91. package/dist/server/oauth/gdpr/rightToErasure.js +527 -0
  92. package/dist/server/oauth/gdpr/rightToErasure.js.map +1 -0
  93. package/dist/server/oauth/monitoring/securityMonitor.d.ts +218 -0
  94. package/dist/server/oauth/monitoring/securityMonitor.d.ts.map +1 -0
  95. package/dist/server/oauth/monitoring/securityMonitor.js +615 -0
  96. package/dist/server/oauth/monitoring/securityMonitor.js.map +1 -0
  97. package/dist/server/oauth/pkce.d.ts +61 -0
  98. package/dist/server/oauth/pkce.d.ts.map +1 -0
  99. package/dist/server/oauth/pkce.js +157 -0
  100. package/dist/server/oauth/pkce.js.map +1 -0
  101. package/dist/server/oauth/providers/base.d.ts +147 -0
  102. package/dist/server/oauth/providers/base.d.ts.map +1 -0
  103. package/dist/server/oauth/providers/base.js +312 -0
  104. package/dist/server/oauth/providers/base.js.map +1 -0
  105. package/dist/server/oauth/providers/github.d.ts +55 -0
  106. package/dist/server/oauth/providers/github.d.ts.map +1 -0
  107. package/dist/server/oauth/providers/github.js +225 -0
  108. package/dist/server/oauth/providers/github.js.map +1 -0
  109. package/dist/server/oauth/providers/google.d.ts +49 -0
  110. package/dist/server/oauth/providers/google.d.ts.map +1 -0
  111. package/dist/server/oauth/providers/google.js +153 -0
  112. package/dist/server/oauth/providers/google.js.map +1 -0
  113. package/dist/server/oauth/providers/index.d.ts +9 -0
  114. package/dist/server/oauth/providers/index.d.ts.map +1 -0
  115. package/dist/server/oauth/providers/index.js +24 -0
  116. package/dist/server/oauth/providers/index.js.map +1 -0
  117. package/dist/server/oauth/refreshTokenRotation.d.ts +114 -0
  118. package/dist/server/oauth/refreshTokenRotation.d.ts.map +1 -0
  119. package/dist/server/oauth/refreshTokenRotation.js +344 -0
  120. package/dist/server/oauth/refreshTokenRotation.js.map +1 -0
  121. package/dist/server/oauth/security.d.ts +101 -0
  122. package/dist/server/oauth/security.d.ts.map +1 -0
  123. package/dist/server/oauth/security.js +268 -0
  124. package/dist/server/oauth/security.js.map +1 -0
  125. package/dist/server/oauth/tokenEncryption.d.ts +80 -0
  126. package/dist/server/oauth/tokenEncryption.d.ts.map +1 -0
  127. package/dist/server/oauth/tokenEncryption.js +218 -0
  128. package/dist/server/oauth/tokenEncryption.js.map +1 -0
  129. package/dist/tools/checkpoint.d.ts +35 -0
  130. package/dist/tools/checkpoint.d.ts.map +1 -0
  131. package/dist/tools/checkpoint.js +125 -0
  132. package/dist/tools/checkpoint.js.map +1 -0
  133. package/dist/tools/index.d.ts +412 -0
  134. package/dist/tools/index.d.ts.map +1 -0
  135. package/dist/tools/index.js +262 -0
  136. package/dist/tools/index.js.map +1 -0
  137. package/dist/tools/insight.d.ts +65 -0
  138. package/dist/tools/insight.d.ts.map +1 -0
  139. package/dist/tools/insight.js +190 -0
  140. package/dist/tools/insight.js.map +1 -0
  141. package/dist/tools/journey.d.ts +45 -0
  142. package/dist/tools/journey.d.ts.map +1 -0
  143. package/dist/tools/journey.js +115 -0
  144. package/dist/tools/journey.js.map +1 -0
  145. package/dist/tools/sendMessage.d.ts +6 -0
  146. package/dist/tools/sendMessage.d.ts.map +1 -0
  147. package/dist/tools/sendMessage.js +278 -0
  148. package/dist/tools/sendMessage.js.map +1 -0
  149. package/dist/tools/session.d.ts +106 -0
  150. package/dist/tools/session.d.ts.map +1 -0
  151. package/dist/tools/session.js +161 -0
  152. package/dist/tools/session.js.map +1 -0
  153. package/dist/types/auth.d.ts +37 -0
  154. package/dist/types/auth.d.ts.map +1 -0
  155. package/dist/types/auth.js +44 -0
  156. package/dist/types/auth.js.map +1 -0
  157. package/dist/types/checkpoint.d.ts +25 -0
  158. package/dist/types/checkpoint.d.ts.map +1 -0
  159. package/dist/types/checkpoint.js +8 -0
  160. package/dist/types/checkpoint.js.map +1 -0
  161. package/dist/types/insight.d.ts +83 -0
  162. package/dist/types/insight.d.ts.map +1 -0
  163. package/dist/types/insight.js +14 -0
  164. package/dist/types/insight.js.map +1 -0
  165. package/dist/types/journey.d.ts +155 -0
  166. package/dist/types/journey.d.ts.map +1 -0
  167. package/dist/types/journey.js +29 -0
  168. package/dist/types/journey.js.map +1 -0
  169. package/dist/types/session.d.ts +82 -0
  170. package/dist/types/session.d.ts.map +1 -0
  171. package/dist/types/session.js +13 -0
  172. package/dist/types/session.js.map +1 -0
  173. package/dist/utils/circuitBreaker.d.ts +86 -0
  174. package/dist/utils/circuitBreaker.d.ts.map +1 -0
  175. package/dist/utils/circuitBreaker.js +234 -0
  176. package/dist/utils/circuitBreaker.js.map +1 -0
  177. package/dist/utils/errorHandler.d.ts +101 -0
  178. package/dist/utils/errorHandler.d.ts.map +1 -0
  179. package/dist/utils/errorHandler.js +348 -0
  180. package/dist/utils/errorHandler.js.map +1 -0
  181. package/dist/utils/errors.d.ts +36 -0
  182. package/dist/utils/errors.d.ts.map +1 -0
  183. package/dist/utils/errors.js +77 -0
  184. package/dist/utils/errors.js.map +1 -0
  185. package/dist/utils/logger.d.ts +13 -0
  186. package/dist/utils/logger.d.ts.map +1 -0
  187. package/dist/utils/logger.js +49 -0
  188. package/dist/utils/logger.js.map +1 -0
  189. package/dist/utils/performanceMonitor.d.ts +106 -0
  190. package/dist/utils/performanceMonitor.d.ts.map +1 -0
  191. package/dist/utils/performanceMonitor.js +312 -0
  192. package/dist/utils/performanceMonitor.js.map +1 -0
  193. package/dist/utils/responseCache.d.ts +88 -0
  194. package/dist/utils/responseCache.d.ts.map +1 -0
  195. package/dist/utils/responseCache.js +245 -0
  196. package/dist/utils/responseCache.js.map +1 -0
  197. package/dist/utils/retryStrategy.d.ts +49 -0
  198. package/dist/utils/retryStrategy.d.ts.map +1 -0
  199. package/dist/utils/retryStrategy.js +167 -0
  200. package/dist/utils/retryStrategy.js.map +1 -0
  201. package/dist/workflows/definitions/daily-reflection.d.ts +3 -0
  202. package/dist/workflows/definitions/daily-reflection.d.ts.map +1 -0
  203. package/dist/workflows/definitions/daily-reflection.js +52 -0
  204. package/dist/workflows/definitions/daily-reflection.js.map +1 -0
  205. package/dist/workflows/definitions/gratitude-practice.d.ts +3 -0
  206. package/dist/workflows/definitions/gratitude-practice.d.ts.map +1 -0
  207. package/dist/workflows/definitions/gratitude-practice.js +52 -0
  208. package/dist/workflows/definitions/gratitude-practice.js.map +1 -0
  209. package/dist/workflows/definitions/weekly-review.d.ts +3 -0
  210. package/dist/workflows/definitions/weekly-review.d.ts.map +1 -0
  211. package/dist/workflows/definitions/weekly-review.js +74 -0
  212. package/dist/workflows/definitions/weekly-review.js.map +1 -0
  213. package/dist/workflows/engine.d.ts +21 -0
  214. package/dist/workflows/engine.d.ts.map +1 -0
  215. package/dist/workflows/engine.js +149 -0
  216. package/dist/workflows/engine.js.map +1 -0
  217. package/dist/workflows/index.d.ts +26 -0
  218. package/dist/workflows/index.d.ts.map +1 -0
  219. package/dist/workflows/index.js +14 -0
  220. package/dist/workflows/index.js.map +1 -0
  221. package/package.json +98 -0
  222. package/run-mcp-server.sh +16 -0
@@ -0,0 +1,218 @@
1
+ import { EventEmitter } from 'events';
2
+ /**
3
+ * Security event types
4
+ */
5
+ export declare enum SecurityEventType {
6
+ LOGIN_SUCCESS = "login_success",
7
+ LOGIN_FAILURE = "login_failure",
8
+ LOGOUT = "logout",
9
+ SESSION_CREATED = "session_created",
10
+ SESSION_EXPIRED = "session_expired",
11
+ TOKEN_ISSUED = "token_issued",
12
+ TOKEN_REFRESHED = "token_refreshed",
13
+ TOKEN_REVOKED = "token_revoked",
14
+ TOKEN_REUSE_DETECTED = "token_reuse_detected",
15
+ TOKEN_THEFT_SUSPECTED = "token_theft_suspected",
16
+ CSRF_ATTACK = "csrf_attack",
17
+ XSS_ATTEMPT = "xss_attempt",
18
+ SQL_INJECTION_ATTEMPT = "sql_injection_attempt",
19
+ PATH_TRAVERSAL_ATTEMPT = "path_traversal_attempt",
20
+ BRUTE_FORCE_DETECTED = "brute_force_detected",
21
+ RATE_LIMIT_EXCEEDED = "rate_limit_exceeded",
22
+ ANOMALY_DETECTED = "anomaly_detected",
23
+ IMPOSSIBLE_TRAVEL = "impossible_travel",
24
+ SUSPICIOUS_ACTIVITY = "suspicious_activity",
25
+ NEW_DEVICE = "new_device",
26
+ UNUSUAL_LOCATION = "unusual_location",
27
+ DATA_EXPORT_REQUESTED = "data_export_requested",
28
+ DATA_DELETION_REQUESTED = "data_deletion_requested",
29
+ CONSENT_CHANGED = "consent_changed",
30
+ DATA_BREACH = "data_breach",
31
+ SERVICE_STARTED = "service_started",
32
+ SERVICE_STOPPED = "service_stopped",
33
+ CONFIG_CHANGED = "config_changed",
34
+ CERTIFICATE_EXPIRY = "certificate_expiry",
35
+ WEBHOOK_FAILURE = "webhook_failure"
36
+ }
37
+ /**
38
+ * Security event severity levels
39
+ */
40
+ export declare enum SecuritySeverity {
41
+ INFO = "info",
42
+ LOW = "low",
43
+ MEDIUM = "medium",
44
+ HIGH = "high",
45
+ CRITICAL = "critical"
46
+ }
47
+ /**
48
+ * Security event structure
49
+ */
50
+ export interface SecurityEvent {
51
+ id: string;
52
+ timestamp: Date;
53
+ type: SecurityEventType;
54
+ severity: SecuritySeverity;
55
+ userId?: string;
56
+ clientId?: string;
57
+ ipAddress?: string;
58
+ userAgent?: string;
59
+ resource?: string;
60
+ action?: string;
61
+ result: 'success' | 'failure' | 'blocked';
62
+ details: Record<string, any>;
63
+ riskScore?: number;
64
+ mitigationActions?: string[];
65
+ correlationId?: string;
66
+ sessionId?: string;
67
+ }
68
+ /**
69
+ * Alert configuration
70
+ */
71
+ export interface AlertConfig {
72
+ type: SecurityEventType;
73
+ severity: SecuritySeverity;
74
+ threshold?: number;
75
+ timeWindow?: number;
76
+ channels: AlertChannel[];
77
+ template?: string;
78
+ cooldown?: number;
79
+ }
80
+ /**
81
+ * Alert channels
82
+ */
83
+ export declare enum AlertChannel {
84
+ EMAIL = "email",
85
+ SLACK = "slack",
86
+ WEBHOOK = "webhook",
87
+ SMS = "sms",
88
+ PAGERDUTY = "pagerduty",
89
+ LOG = "log"
90
+ }
91
+ /**
92
+ * Security metrics
93
+ */
94
+ export interface SecurityMetrics {
95
+ totalEvents: number;
96
+ eventsByType: Map<SecurityEventType, number>;
97
+ eventsBySeverity: Map<SecuritySeverity, number>;
98
+ failedLogins: number;
99
+ successfulLogins: number;
100
+ tokensIssued: number;
101
+ tokensRevoked: number;
102
+ anomaliesDetected: number;
103
+ blockedRequests: number;
104
+ averageRiskScore: number;
105
+ alertsSent: number;
106
+ }
107
+ /**
108
+ * Security Monitoring System
109
+ * Real-time monitoring, alerting, and incident response
110
+ */
111
+ export declare class SecurityMonitor extends EventEmitter {
112
+ private events;
113
+ private metrics;
114
+ private alertConfigs;
115
+ private alertCooldowns;
116
+ private correlations;
117
+ private readonly MAX_EVENTS;
118
+ private readonly CORRELATION_WINDOW;
119
+ constructor();
120
+ /**
121
+ * Log a security event
122
+ */
123
+ logEvent(event: Omit<SecurityEvent, 'id' | 'timestamp'>): Promise<void>;
124
+ /**
125
+ * Configure alert
126
+ */
127
+ configureAlert(config: AlertConfig): void;
128
+ /**
129
+ * Get security metrics
130
+ */
131
+ getMetrics(timeRange?: {
132
+ start: Date;
133
+ end: Date;
134
+ }): SecurityMetrics;
135
+ /**
136
+ * Get recent security events
137
+ */
138
+ getRecentEvents(limit?: number, filters?: {
139
+ type?: SecurityEventType;
140
+ severity?: SecuritySeverity;
141
+ userId?: string;
142
+ startTime?: Date;
143
+ }): SecurityEvent[];
144
+ /**
145
+ * Get security report
146
+ */
147
+ generateSecurityReport(startDate: Date, endDate: Date): Promise<{
148
+ summary: SecurityMetrics;
149
+ topThreats: Array<{
150
+ type: string;
151
+ count: number;
152
+ }>;
153
+ topUsers: Array<{
154
+ userId: string;
155
+ riskScore: number;
156
+ }>;
157
+ incidents: SecurityEvent[];
158
+ recommendations: string[];
159
+ }>;
160
+ /**
161
+ * Trigger immediate alert
162
+ */
163
+ triggerAlert(type: SecurityEventType, severity: SecuritySeverity, details: Record<string, any>, channels?: AlertChannel[]): Promise<void>;
164
+ /**
165
+ * Handle incident response
166
+ */
167
+ handleIncident(event: SecurityEvent, autoRespond?: boolean): Promise<{
168
+ incidentId: string;
169
+ actions: string[];
170
+ status: 'resolved' | 'escalated' | 'monitoring';
171
+ }>;
172
+ /**
173
+ * Setup webhook for external monitoring
174
+ */
175
+ setupWebhook(url: string, secret: string): void;
176
+ /**
177
+ * Process alerts for event
178
+ */
179
+ private processAlerts;
180
+ /**
181
+ * Send alert through channels
182
+ */
183
+ private sendAlert;
184
+ /**
185
+ * Correlate events to detect patterns
186
+ */
187
+ private correlateEvent;
188
+ /**
189
+ * Detect patterns in correlated events
190
+ */
191
+ private detectPatterns;
192
+ /**
193
+ * Check event for anomalies
194
+ */
195
+ private checkEventAnomaly;
196
+ /**
197
+ * Generate security recommendations
198
+ */
199
+ private generateRecommendations;
200
+ private initializeMetrics;
201
+ private updateMetrics;
202
+ private calculateMetrics;
203
+ private setupDefaultAlerts;
204
+ private startMetricsAggregation;
205
+ private generateEventId;
206
+ private compareSeverity;
207
+ private mapEventToMethod;
208
+ private persistEvent;
209
+ private sendEmailAlert;
210
+ private sendSlackAlert;
211
+ private sendWebhookAlert;
212
+ private sendSMSAlert;
213
+ private sendPagerDutyAlert;
214
+ private sendWebhook;
215
+ private sendIncidentNotification;
216
+ }
217
+ export declare const securityMonitor: SecurityMonitor;
218
+ //# sourceMappingURL=securityMonitor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"securityMonitor.d.ts","sourceRoot":"","sources":["../../../../src/server/oauth/monitoring/securityMonitor.ts"],"names":[],"mappings":"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"}