 d7ad321176
			
		
	
	d7ad321176
	
	
	
		
			
			This comprehensive implementation includes: - FastAPI backend with MCP server integration - React/TypeScript frontend with Vite - PostgreSQL database with Redis caching - Grafana/Prometheus monitoring stack - Docker Compose orchestration - Full MCP protocol support for Claude Code integration Features: - Agent discovery and management across network - Visual workflow editor and execution engine - Real-time task coordination and monitoring - Multi-model support with specialized agents - Distributed development task allocation 🤖 Generated with [Claude Code](https://claude.ai/code) Co-Authored-By: Claude <noreply@anthropic.com>
		
			
				
	
	
		
			75 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			75 lines
		
	
	
		
			2.8 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import { IncomingMessage, ServerResponse } from "node:http";
 | |
| import { Transport } from "../shared/transport.js";
 | |
| import { JSONRPCMessage, MessageExtraInfo } from "../types.js";
 | |
| import { AuthInfo } from "./auth/types.js";
 | |
| /**
 | |
|  * Configuration options for SSEServerTransport.
 | |
|  */
 | |
| export interface SSEServerTransportOptions {
 | |
|     /**
 | |
|      * List of allowed host header values for DNS rebinding protection.
 | |
|      * If not specified, host validation is disabled.
 | |
|      */
 | |
|     allowedHosts?: string[];
 | |
|     /**
 | |
|      * List of allowed origin header values for DNS rebinding protection.
 | |
|      * If not specified, origin validation is disabled.
 | |
|      */
 | |
|     allowedOrigins?: string[];
 | |
|     /**
 | |
|      * Enable DNS rebinding protection (requires allowedHosts and/or allowedOrigins to be configured).
 | |
|      * Default is false for backwards compatibility.
 | |
|      */
 | |
|     enableDnsRebindingProtection?: boolean;
 | |
| }
 | |
| /**
 | |
|  * Server transport for SSE: this will send messages over an SSE connection and receive messages from HTTP POST requests.
 | |
|  *
 | |
|  * This transport is only available in Node.js environments.
 | |
|  */
 | |
| export declare class SSEServerTransport implements Transport {
 | |
|     private _endpoint;
 | |
|     private res;
 | |
|     private _sseResponse?;
 | |
|     private _sessionId;
 | |
|     private _options;
 | |
|     onclose?: () => void;
 | |
|     onerror?: (error: Error) => void;
 | |
|     onmessage?: (message: JSONRPCMessage, extra?: MessageExtraInfo) => void;
 | |
|     /**
 | |
|      * Creates a new SSE server transport, which will direct the client to POST messages to the relative or absolute URL identified by `_endpoint`.
 | |
|      */
 | |
|     constructor(_endpoint: string, res: ServerResponse, options?: SSEServerTransportOptions);
 | |
|     /**
 | |
|      * Validates request headers for DNS rebinding protection.
 | |
|      * @returns Error message if validation fails, undefined if validation passes.
 | |
|      */
 | |
|     private validateRequestHeaders;
 | |
|     /**
 | |
|      * Handles the initial SSE connection request.
 | |
|      *
 | |
|      * This should be called when a GET request is made to establish the SSE stream.
 | |
|      */
 | |
|     start(): Promise<void>;
 | |
|     /**
 | |
|      * Handles incoming POST messages.
 | |
|      *
 | |
|      * This should be called when a POST request is made to send a message to the server.
 | |
|      */
 | |
|     handlePostMessage(req: IncomingMessage & {
 | |
|         auth?: AuthInfo;
 | |
|     }, res: ServerResponse, parsedBody?: unknown): Promise<void>;
 | |
|     /**
 | |
|      * Handle a client message, regardless of how it arrived. This can be used to inform the server of messages that arrive via a means different than HTTP POST.
 | |
|      */
 | |
|     handleMessage(message: unknown, extra?: MessageExtraInfo): Promise<void>;
 | |
|     close(): Promise<void>;
 | |
|     send(message: JSONRPCMessage): Promise<void>;
 | |
|     /**
 | |
|      * Returns the session ID for this transport.
 | |
|      *
 | |
|      * This can be used to route incoming POST requests.
 | |
|      */
 | |
|     get sessionId(): string;
 | |
| }
 | |
| //# sourceMappingURL=sse.d.ts.map
 |