28 lines · 905 B · TypeScript
RawDownload
import type { EnvironmentId, ProviderInstanceId, ThreadId } from "@t3tools/contracts"; export interface McpProviderSessionConfig {  readonly environmentId: EnvironmentId;  readonly threadId: ThreadId;  readonly providerSessionId: string;  readonly providerInstanceId: ProviderInstanceId;  readonly endpoint: string;  readonly authorizationHeader: string;} const sessionsByThread = new Map<ThreadId, McpProviderSessionConfig>(); export function setMcpProviderSession(config: McpProviderSessionConfig): void {  sessionsByThread.set(config.threadId, config);} export function readMcpProviderSession(threadId: ThreadId): McpProviderSessionConfig | undefined {  return sessionsByThread.get(threadId);} export function clearMcpProviderSession(threadId: ThreadId): void {  sessionsByThread.delete(threadId);} export function clearAllMcpProviderSessions(): void {  sessionsByThread.clear();}