UNPKG

mcp-cve-intelligence-server-lite-test

Version:

Lite Model Context Protocol server for comprehensive CVE intelligence gathering with multi-source exploit discovery, designed for security professionals and cybersecurity researchers - Alpha Release

77 lines 2.35 kB
import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js'; import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js'; import type { AppConfig } from '../config/index.js'; import type { TransportConfig } from '../types/cve.js'; import { HttpTransportServer } from './http-transport-server.js'; import { StdioTransportServer } from './stdio-transport-server.js'; import { TransportSessionManager } from './transport-session-manager.js'; import { HealthService } from '../services/health-service.js'; type TransportInstance = StdioServerTransport | HttpTransportServer; export type TransportType = 'stdio' | 'http'; export declare class TransportManager { private config; private httpTransportServer?; private stdioTransportServer?; private sessionManager; private mcpServerFactory; private healthService?; constructor(config: AppConfig, mcpServerFactory: () => McpServer, healthService?: HealthService); /** * Start transport based on configuration */ startTransport(transportConfig?: TransportConfig): Promise<TransportInstance>; /** * Start stdio transport */ private startStdioTransport; /** * Start HTTP transport */ private startHttpTransport; /** * Stop all transports */ stopTransports(): Promise<void>; /** * Get transport status */ getTransportStatus(): { stdio: { active: boolean; sessionCount?: number; }; http: { active: boolean; sessionCount?: number; port?: number; }; }; /** * Get session manager */ getSessionManager(): TransportSessionManager; /** * Get HTTP transport server (if running) */ getHttpTransportServer(): HttpTransportServer | undefined; /** * Get stdio transport server (if running) */ getStdioTransportServer(): StdioTransportServer | undefined; /** * Get active session count */ getActiveSessionCount(): number; /** * Get session statistics */ getSessionStats(): { total: number; byType: Record<string, number>; oldestSession?: Date; newestSession?: Date; averageAge: number; }; } export {}; //# sourceMappingURL=transport-manager.d.ts.map