McpSessionManager
Class: McpSessionManager
Defined in: packages/mcp/src/sessions.ts:37
In-memory MCP sessions with idle eviction
Constructors
Constructor
new McpSessionManager(
timeoutMs,now?):McpSessionManager
Defined in: packages/mcp/src/sessions.ts:44
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:46
clock (injectable for tests)
Returns
number
sessions
protectedsessions:Map<string,McpSessionEntry>
Defined in: packages/mcp/src/sessions.ts:38
timeoutMs
protectedtimeoutMs:number
Defined in: packages/mcp/src/sessions.ts:45
idle time before eviction
Methods
add()
add(
entry):void
Defined in: packages/mcp/src/sessions.ts:52
Parameters
entry
session to track
Returns
void
all()
all():
McpSessionEntry[]
Defined in: packages/mcp/src/sessions.ts:80
Returns
all sessions
close()
protectedclose(entry):Promise<void>
Defined in: packages/mcp/src/sessions.ts:127
Parameters
entry
session to close and remove
Returns
Promise<void>
closeAll()
closeAll():
Promise<void>
Defined in: packages/mcp/src/sessions.ts:118
Close every session
Returns
Promise<void>
evictIdle()
evictIdle():
Promise<number>
Defined in: packages/mcp/src/sessions.ts:88
Close and remove sessions idle longer than the timeout
Returns
Promise<number>
number of evicted sessions
evictOldest()
evictOldest():
Promise<string|undefined>
Defined in: packages/mcp/src/sessions.ts:101
Close and remove the least recently used session
Returns
Promise<string | undefined>
the evicted session id, or undefined when there is none
get()
get(
id):McpSessionEntry|undefined
Defined in: packages/mcp/src/sessions.ts:62
Find a session and refresh its activity
Parameters
id
string
session id
Returns
McpSessionEntry | undefined
the session or undefined
remove()
remove(
id):void
Defined in: packages/mcp/src/sessions.ts:73
Parameters
id
string
session id to forget (does not close it)
Returns
void