@sethdouglasford/claude-flow
Version:
Claude Code Flow - Advanced AI-powered development workflows with SPARC methodology
73 lines • 2.52 kB
TypeScript
/**
* MCP (Model Context Protocol) server implementation
*/
import { MCPConfig, MCPTool, MCPSession, MCPMetrics } from "../utils/types.js";
import { IEventBus } from "../core/event-bus.js";
import { ILogger } from "../core/logger.js";
export interface IMCPServer {
start(): Promise<void>;
stop(): Promise<void>;
registerTool(tool: MCPTool): void;
getHealthStatus(): Promise<{
healthy: boolean;
error?: string;
metrics?: Record<string, number>;
}>;
getMetrics(): MCPMetrics;
getSessions(): MCPSession[];
getSession(sessionId: string): MCPSession | undefined;
terminateSession(sessionId: string): void;
}
/**
* MCP server implementation
*/
export declare class MCPServer implements IMCPServer {
private config;
private eventBus;
private logger;
private orchestrator?;
private swarmCoordinator?;
private agentManager?;
private resourceManager?;
private messagebus?;
private monitor?;
private transport;
private toolRegistry;
private promptRegistry;
private router;
private sessionManager;
private authManager;
private loadBalancer?;
private requestQueue?;
private running;
private currentSession?;
private readonly serverInfo;
private readonly supportedProtocolVersion;
private readonly serverCapabilities;
constructor(config: MCPConfig, eventBus: IEventBus, logger: ILogger, orchestrator?: unknown | undefined, // Reference to orchestrator instance
swarmCoordinator?: unknown | undefined, // Reference to swarm coordinator instance
agentManager?: unknown | undefined, // Reference to agent manager instance
resourceManager?: unknown | undefined, // Reference to resource manager instance
messagebus?: unknown | undefined, // Reference to message bus instance
monitor?: unknown | undefined);
start(): Promise<void>;
stop(): Promise<void>;
registerTool(tool: MCPTool): void;
getHealthStatus(): Promise<{
healthy: boolean;
error?: string;
metrics?: Record<string, number>;
}>;
getMetrics(): MCPMetrics;
getSessions(): MCPSession[];
getSession(sessionId: string): MCPSession | undefined;
terminateSession(sessionId: string): void;
private handleRequest;
private handleInitialize;
private getOrCreateSession;
private createTransport;
private registerBuiltInTools;
private registerClaudeFlowTools;
private errorToMCPError;
}
//# sourceMappingURL=server.d.ts.map