stellar-cyber-mcp-agents
Version:
Model Context Protocol (MCP) server for Stellar Cyber security operations with specialized multi-agent analysis capabilities
112 lines • 3.85 kB
TypeScript
import { EventEmitter } from 'eventemitter3';
export interface OrchestratorConfig {
stellar: {
apiUrl: string;
apiToken: string;
};
agents: {
hub: {
enabled: boolean;
config?: any;
};
investigation: {
enabled: boolean;
config?: any;
};
correlation: {
enabled: boolean;
config?: any;
};
network: {
enabled: boolean;
config?: any;
};
};
logging: {
level: 'debug' | 'info' | 'warn' | 'error';
enableConsole: boolean;
enableFile: boolean;
filePath?: string;
};
metrics: {
enabled: boolean;
endpoint?: string;
interval?: number;
};
}
export interface OrchestratorStatus {
status: 'initializing' | 'running' | 'stopping' | 'stopped' | 'error';
uptime: number;
agents: {
total: number;
running: number;
healthy: number;
degraded: number;
unhealthy: number;
};
performance: {
totalRequests: number;
successfulRequests: number;
failedRequests: number;
averageResponseTime: number;
};
lastUpdate: string;
}
export declare class MultiAgentOrchestrator extends EventEmitter {
private config;
private registry;
private channel;
private logger;
private metrics;
private agents;
private hubAgent;
private status;
private startTime;
constructor(config: OrchestratorConfig);
start(): Promise<void>;
stop(): Promise<void>;
getStatus(): Promise<OrchestratorStatus>;
executeWorkflow(workflowId: string, input: any): Promise<string>;
investigateCase(caseId: string, options?: any): Promise<any>;
correlateCase(caseId: string, method?: string): Promise<any>;
analyzeNetwork(caseId: string, timeRange: any, options?: any): Promise<any>;
getAgentMetrics(): Promise<any>;
searchCases(query: string, filters?: any): Promise<any>;
getCaseActivities(caseId: string): Promise<any>;
getCaseObservables(caseId: string): Promise<any>;
getCaseAlerts(caseId: string): Promise<any>;
getCaseComments(caseId: string): Promise<any>;
getCaseDetailedSummary(caseId: string): Promise<any>;
getCaseScores(caseId: string): Promise<any>;
analyzeCaseObservables(caseId: string): Promise<any>;
getCaseTimeline(caseId: string): Promise<any>;
getCaseArtifacts(caseId: string): Promise<any>;
suggestWorkflow(caseId: string): Promise<any>;
updateCaseStatus(caseId: string, status: string, comment?: string): Promise<any>;
addCaseComment(caseId: string, comment: string): Promise<any>;
getRelatedCases(caseId: string, method?: string): Promise<any>;
getThreatIntelligence(caseId: string): Promise<any>;
detectCampaigns(criteria?: any): Promise<any>;
analyzeCaseSimilarity(caseId1: string, caseId2: string): Promise<any>;
detectLateralMovement(caseId: string, timeRange: any): Promise<any>;
detectC2Communication(caseId: string, timeRange: any): Promise<any>;
huntNetworkThreats(query: any, timeRange: any): Promise<any>;
getWorkflowStatus(workflowId: string): Promise<any>;
cancelWorkflow(workflowId: string): Promise<any>;
private initializeAgents;
private createHubAgent;
private createInvestigationAgent;
private createCorrelationAgent;
private createNetworkAgent;
private startAgents;
private stopAgents;
private setupMonitoring;
private performHealthCheck;
private collectMetrics;
private getAgentSpecificMetrics;
private findAgentByType;
private getAgentKey;
}
export declare function createDefaultConfig(): OrchestratorConfig;
export declare function main(): Promise<void>;
//# sourceMappingURL=orchestrator.d.ts.map