McpSessionManager
Class: McpSessionManager
Defined in: packages/mcp/src/sessions.ts:33
In-memory MCP sessions with idle eviction
Constructors
Constructor
new McpSessionManager(
timeoutMs,now?):McpSessionManager
Defined in: packages/mcp/src/sessions.ts:40
Parameters
timeoutMs
number
idle time before eviction
now?
() => number
clock (injectable for tests)
Returns
McpSessionManager
Properties
now
protectednow: () =>number
Defined in: packages/mcp/src/sessions.ts:42
clock (injectable for tests)
Returns
number
sessions
protectedsessions:Map<string,McpSessionEntry>
Defined in: packages/mcp/src/sessions.ts:34
timeoutMs
protectedtimeoutMs:number
Defined in: packages/mcp/src/sessions.ts:41
idle time before eviction
Methods
add()
add(
entry):void
Defined in: packages/mcp/src/sessions.ts:48
Parameters
entry
session to track
Returns
void
all()
all():
McpSessionEntry[]
Defined in: packages/mcp/src/sessions.ts:76
Returns
all sessions
close()
protectedclose(entry):Promise<void>
Defined in: packages/mcp/src/sessions.ts:123
Parameters
entry
session to close and remove
Returns
Promise<void>
closeAll()
closeAll():
Promise<void>
Defined in: packages/mcp/src/sessions.ts:114
Close every session
Returns
Promise<void>
evictIdle()
evictIdle():
Promise<number>
Defined in: packages/mcp/src/sessions.ts:84
Close and remove sessions idle longer than the timeout
Returns
Promise<number>
number of evicted sessions
evictOldest()
evictOldest():
Promise<string>
Defined in: packages/mcp/src/sessions.ts:97
Close and remove the least recently used session
Returns
Promise<string>
the evicted session id, or undefined when there is none
get()
get(
id):McpSessionEntry
Defined in: packages/mcp/src/sessions.ts:58
Find a session and refresh its activity
Parameters
id
string
session id
Returns
the session or undefined
remove()
remove(
id):void
Defined in: packages/mcp/src/sessions.ts:69
Parameters
id
string
session id to forget (does not close it)
Returns
void