@carbonvoice/cv-mcp-server 1.1.3 → 2.1.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.
- package/dist/auth/auth.service.js +79 -0
- package/dist/auth/auth.service.js.map +1 -0
- package/dist/auth/index.js +15 -0
- package/dist/auth/index.js.map +1 -1
- package/dist/auth/interfaces/auth.types.js +3 -0
- package/dist/auth/interfaces/auth.types.js.map +1 -0
- package/dist/auth/interfaces/index.js +1 -0
- package/dist/auth/interfaces/index.js.map +1 -1
- package/dist/cv-api.js +13 -5
- package/dist/cv-api.js.map +1 -1
- package/dist/server.js +143 -31
- package/dist/server.js.map +1 -1
- package/dist/transports/http/interfaces/index.js +3 -0
- package/dist/transports/http/interfaces/index.js.map +1 -0
- package/dist/transports/http/middleware/add-mcp-session-id.middleware.js +20 -13
- package/dist/transports/http/middleware/add-mcp-session-id.middleware.js.map +1 -1
- package/dist/transports/http/middleware/add-request-id.middlware.js +13 -4
- package/dist/transports/http/middleware/add-request-id.middlware.js.map +1 -1
- package/dist/transports/http/middleware/log-request.middlware.js +27 -11
- package/dist/transports/http/middleware/log-request.middlware.js.map +1 -1
- package/dist/transports/http/session/index.js +34 -0
- package/dist/transports/http/session/index.js.map +1 -0
- package/dist/transports/http/session/session-cleanup.js +60 -0
- package/dist/transports/http/session/session-cleanup.js.map +1 -0
- package/dist/transports/http/session/session-manager.js +52 -0
- package/dist/transports/http/session/session-manager.js.map +1 -0
- package/dist/transports/http/session/session.config.js +29 -0
- package/dist/transports/http/session/session.config.js.map +1 -0
- package/dist/transports/http/session/session.logger.js +68 -0
- package/dist/transports/http/session/session.logger.js.map +1 -0
- package/dist/transports/http/session/session.service.js +196 -0
- package/dist/transports/http/session/session.service.js.map +1 -0
- package/dist/transports/http/session/session.types.js +31 -0
- package/dist/transports/http/session/session.types.js.map +1 -0
- package/dist/transports/http/streamable.js +184 -427
- package/dist/transports/http/streamable.js.map +1 -1
- package/dist/transports/http/utils/request-context.js +78 -0
- package/dist/transports/http/utils/request-context.js.map +1 -0
- package/dist/utils/axios-instance.js +34 -22
- package/dist/utils/axios-instance.js.map +1 -1
- package/dist/utils/get-process-uptime.js +13 -0
- package/dist/utils/get-process-uptime.js.map +1 -0
- package/dist/utils/index.js +2 -2
- package/dist/utils/index.js.map +1 -1
- package/dist/utils/logger.js +34 -11
- package/dist/utils/logger.js.map +1 -1
- package/dist/utils/{format-time-to-human.js → time-to-human.js} +17 -7
- package/dist/utils/time-to-human.js.map +1 -0
- package/package.json +1 -1
- package/dist/auth/auth-middleware.js +0 -203
- package/dist/auth/auth-middleware.js.map +0 -1
- package/dist/utils/format-time-to-human.js.map +0 -1
- package/dist/utils/format-uptime.js +0 -13
- package/dist/utils/format-uptime.js.map +0 -1
|
@@ -0,0 +1,196 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.sessionService = exports.SessionService = void 0;
|
|
4
|
+
const session_config_1 = require("./session.config");
|
|
5
|
+
const session_logger_1 = require("./session.logger");
|
|
6
|
+
const session_types_1 = require("./session.types");
|
|
7
|
+
const session_manager_1 = require("./session-manager");
|
|
8
|
+
class SessionService {
|
|
9
|
+
constructor(sessionManager, config = new session_config_1.SessionConfig()) {
|
|
10
|
+
this.sessionManager = sessionManager;
|
|
11
|
+
this.config = config;
|
|
12
|
+
this.logger = new session_logger_1.SessionLogger();
|
|
13
|
+
this.config.validate();
|
|
14
|
+
}
|
|
15
|
+
createSession(transport, req, sessionId) {
|
|
16
|
+
var _a, _b;
|
|
17
|
+
// Validate inputs
|
|
18
|
+
if (!((_b = (_a = req.auth) === null || _a === void 0 ? void 0 : _a.extra) === null || _b === void 0 ? void 0 : _b.user)) {
|
|
19
|
+
throw new session_types_1.UserNotFoundError();
|
|
20
|
+
}
|
|
21
|
+
if (!sessionId) {
|
|
22
|
+
throw new Error('Session ID cannot be empty');
|
|
23
|
+
}
|
|
24
|
+
if (!transport) {
|
|
25
|
+
throw new Error('Transport cannot be null or undefined');
|
|
26
|
+
}
|
|
27
|
+
// Check if session already exists
|
|
28
|
+
if (this.sessionManager.hasSession(sessionId)) {
|
|
29
|
+
throw new Error(`Session already exists: ${sessionId}`);
|
|
30
|
+
}
|
|
31
|
+
// Check session limits
|
|
32
|
+
if (this.sessionManager.getSessionCount() >= this.config.maxSessions) {
|
|
33
|
+
throw new Error(`Maximum sessions limit reached: ${this.config.maxSessions}`);
|
|
34
|
+
}
|
|
35
|
+
const userId = req.auth.extra.user.id;
|
|
36
|
+
const now = new Date();
|
|
37
|
+
const expiresAt = new Date(now.getTime() + this.config.ttlMs);
|
|
38
|
+
// Create enhanced metrics
|
|
39
|
+
const metrics = {
|
|
40
|
+
sessionId,
|
|
41
|
+
userId,
|
|
42
|
+
createdAt: now,
|
|
43
|
+
expiresAt,
|
|
44
|
+
totalInteractions: 0,
|
|
45
|
+
totalToolCalls: 0,
|
|
46
|
+
lastActivityAt: now,
|
|
47
|
+
errorCount: 0,
|
|
48
|
+
averageResponseTime: 0,
|
|
49
|
+
};
|
|
50
|
+
// Create session with timeout
|
|
51
|
+
const timeout = setTimeout(() => {
|
|
52
|
+
this.logger.logSessionTimeout();
|
|
53
|
+
this.destroySession(sessionId);
|
|
54
|
+
}, this.config.ttlMs);
|
|
55
|
+
const session = {
|
|
56
|
+
transport,
|
|
57
|
+
timeout,
|
|
58
|
+
userId,
|
|
59
|
+
metrics,
|
|
60
|
+
};
|
|
61
|
+
// Store session
|
|
62
|
+
this.sessionManager.setSession(sessionId, session);
|
|
63
|
+
// Log session creation
|
|
64
|
+
this.logger.logSessionCreated();
|
|
65
|
+
return sessionId;
|
|
66
|
+
}
|
|
67
|
+
destroySession(sessionId) {
|
|
68
|
+
if (!sessionId) {
|
|
69
|
+
return;
|
|
70
|
+
}
|
|
71
|
+
const session = this.sessionManager.getSession(sessionId);
|
|
72
|
+
if (!session) {
|
|
73
|
+
return; // Session doesn't exist, nothing to destroy
|
|
74
|
+
}
|
|
75
|
+
if (session.destroying) {
|
|
76
|
+
this.logger.logSessionDebug(`Session already being destroyed: ${sessionId}`);
|
|
77
|
+
return;
|
|
78
|
+
}
|
|
79
|
+
try {
|
|
80
|
+
// Mark session as being destroyed to prevent recursive calls
|
|
81
|
+
session.destroying = true;
|
|
82
|
+
// Clear timeout
|
|
83
|
+
clearTimeout(session.timeout);
|
|
84
|
+
// Close transport
|
|
85
|
+
session.transport.close();
|
|
86
|
+
// Calculate duration
|
|
87
|
+
const durationInSeconds = (new Date().getTime() - session.metrics.createdAt.getTime()) / 1000;
|
|
88
|
+
// Log session destruction
|
|
89
|
+
this.logger.logSessionDestroyed(durationInSeconds, session.metrics);
|
|
90
|
+
// Remove from manager
|
|
91
|
+
this.sessionManager.deleteSession(sessionId);
|
|
92
|
+
}
|
|
93
|
+
catch (error) {
|
|
94
|
+
this.logger.logSessionError(error, {
|
|
95
|
+
action: 'destroySession',
|
|
96
|
+
sessionId,
|
|
97
|
+
});
|
|
98
|
+
// Still try to remove from manager even if cleanup fails
|
|
99
|
+
this.sessionManager.deleteSession(sessionId);
|
|
100
|
+
}
|
|
101
|
+
}
|
|
102
|
+
getSession(sessionId) {
|
|
103
|
+
if (!sessionId) {
|
|
104
|
+
return undefined;
|
|
105
|
+
}
|
|
106
|
+
return this.sessionManager.getSession(sessionId);
|
|
107
|
+
}
|
|
108
|
+
hasSession(sessionId) {
|
|
109
|
+
if (!sessionId) {
|
|
110
|
+
return false;
|
|
111
|
+
}
|
|
112
|
+
return this.sessionManager.hasSession(sessionId);
|
|
113
|
+
}
|
|
114
|
+
getAllSessions() {
|
|
115
|
+
return this.sessionManager.getAllSessions();
|
|
116
|
+
}
|
|
117
|
+
getAllSessionIds() {
|
|
118
|
+
return this.sessionManager.getAllSessionIds();
|
|
119
|
+
}
|
|
120
|
+
getSessionCount() {
|
|
121
|
+
return this.sessionManager.getSessionCount();
|
|
122
|
+
}
|
|
123
|
+
clearAllSessions() {
|
|
124
|
+
const sessions = this.sessionManager.getAllSessions();
|
|
125
|
+
for (const [sessionId] of sessions) {
|
|
126
|
+
this.destroySession(sessionId);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
// Enhanced metrics tracking
|
|
130
|
+
recordInteraction(sessionId) {
|
|
131
|
+
const session = this.getSession(sessionId);
|
|
132
|
+
if (session) {
|
|
133
|
+
session.metrics.totalInteractions++;
|
|
134
|
+
session.metrics.lastActivityAt = new Date();
|
|
135
|
+
// Don't log automatically - let the request handler decide when to log
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
recordToolCall(sessionId) {
|
|
139
|
+
const session = this.getSession(sessionId);
|
|
140
|
+
if (session) {
|
|
141
|
+
session.metrics.totalToolCalls++;
|
|
142
|
+
session.metrics.totalInteractions++; // Tool calls are also interactions
|
|
143
|
+
session.metrics.lastActivityAt = new Date();
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
recordError(sessionId) {
|
|
147
|
+
const session = this.getSession(sessionId);
|
|
148
|
+
if (session) {
|
|
149
|
+
session.metrics.errorCount++;
|
|
150
|
+
// Log metrics on every error since these are important for debugging
|
|
151
|
+
this.logger.logSessionMetrics(session.metrics);
|
|
152
|
+
}
|
|
153
|
+
}
|
|
154
|
+
// Additional utility methods
|
|
155
|
+
getSessionMetrics(sessionId) {
|
|
156
|
+
const session = this.getSession(sessionId);
|
|
157
|
+
return session === null || session === void 0 ? void 0 : session.metrics;
|
|
158
|
+
}
|
|
159
|
+
isSessionExpired(sessionId) {
|
|
160
|
+
const session = this.getSession(sessionId);
|
|
161
|
+
if (!session) {
|
|
162
|
+
return true;
|
|
163
|
+
}
|
|
164
|
+
return session.metrics.expiresAt < new Date();
|
|
165
|
+
}
|
|
166
|
+
extendSession(sessionId, additionalTtlMs = this.config.ttlMs) {
|
|
167
|
+
const session = this.getSession(sessionId);
|
|
168
|
+
if (!session) {
|
|
169
|
+
return false;
|
|
170
|
+
}
|
|
171
|
+
// Clear existing timeout
|
|
172
|
+
clearTimeout(session.timeout);
|
|
173
|
+
// Extend expiration
|
|
174
|
+
const newExpiresAt = new Date(Date.now() + additionalTtlMs);
|
|
175
|
+
session.metrics.expiresAt = newExpiresAt;
|
|
176
|
+
session.metrics.lastActivityAt = new Date();
|
|
177
|
+
// Set new timeout
|
|
178
|
+
session.timeout = setTimeout(() => {
|
|
179
|
+
this.logger.logSessionTimeout();
|
|
180
|
+
this.destroySession(sessionId);
|
|
181
|
+
}, additionalTtlMs);
|
|
182
|
+
this.logger.logSessionMetrics(session.metrics);
|
|
183
|
+
return true;
|
|
184
|
+
}
|
|
185
|
+
// Public method to log session metrics
|
|
186
|
+
logSessionMetrics(sessionId) {
|
|
187
|
+
const session = this.getSession(sessionId);
|
|
188
|
+
if (session) {
|
|
189
|
+
this.logger.logSessionMetrics(session.metrics);
|
|
190
|
+
}
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
exports.SessionService = SessionService;
|
|
194
|
+
// Singleton instance
|
|
195
|
+
exports.sessionService = new SessionService(session_manager_1.sessionManager);
|
|
196
|
+
//# sourceMappingURL=session.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.service.js","sourceRoot":"","sources":["../../../../src/transports/http/session/session.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.SessionAlreadyDestroyingError = exports.SessionNotFoundError = exports.UserNotFoundError = exports.SessionError = void 0;
|
|
4
|
+
// Error classes
|
|
5
|
+
class SessionError extends Error {
|
|
6
|
+
constructor(message, code) {
|
|
7
|
+
super(message);
|
|
8
|
+
this.code = code;
|
|
9
|
+
this.name = 'SessionError';
|
|
10
|
+
}
|
|
11
|
+
}
|
|
12
|
+
exports.SessionError = SessionError;
|
|
13
|
+
class UserNotFoundError extends SessionError {
|
|
14
|
+
constructor() {
|
|
15
|
+
super('User not found in session creation', 'USER_NOT_FOUND');
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
exports.UserNotFoundError = UserNotFoundError;
|
|
19
|
+
class SessionNotFoundError extends SessionError {
|
|
20
|
+
constructor(sessionId) {
|
|
21
|
+
super(`Session not found: ${sessionId}`, 'SESSION_NOT_FOUND');
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
exports.SessionNotFoundError = SessionNotFoundError;
|
|
25
|
+
class SessionAlreadyDestroyingError extends SessionError {
|
|
26
|
+
constructor(sessionId) {
|
|
27
|
+
super(`Session already being destroyed: ${sessionId}`, 'SESSION_ALREADY_DESTROYING');
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
exports.SessionAlreadyDestroyingError = SessionAlreadyDestroyingError;
|
|
31
|
+
//# sourceMappingURL=session.types.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.types.js","sourceRoot":"","sources":["../../../../src/transports/http/session/session.types.ts"],"names":[],"mappings":";;;AA8DA,gBAAgB;AAChB,MAAa,YAAa,SAAQ,KAAK;IACrC,YACE,OAAe,EACR,IAAY;QAEnB,KAAK,CAAC,OAAO,CAAC,CAAC;QAFR,SAAI,GAAJ,IAAI,CAAQ;QAGnB,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;IAC7B,CAAC;CACF;AARD,oCAQC;AAED,MAAa,iBAAkB,SAAQ,YAAY;IACjD;QACE,KAAK,CAAC,oCAAoC,EAAE,gBAAgB,CAAC,CAAC;IAChE,CAAC;CACF;AAJD,8CAIC;AAED,MAAa,oBAAqB,SAAQ,YAAY;IACpD,YAAY,SAAiB;QAC3B,KAAK,CAAC,sBAAsB,SAAS,EAAE,EAAE,mBAAmB,CAAC,CAAC;IAChE,CAAC;CACF;AAJD,oDAIC;AAED,MAAa,6BAA8B,SAAQ,YAAY;IAC7D,YAAY,SAAiB;QAC3B,KAAK,CACH,oCAAoC,SAAS,EAAE,EAC/C,4BAA4B,CAC7B,CAAC;IACJ,CAAC;CACF;AAPD,sEAOC"}
|