@toolprint/hypertool-mcp
Version:
HyperTool MCP proxy server for routing requests between clients and multiple underlying MCP servers
71 lines • 1.82 kB
TypeScript
/**
* Express.js HTTP server for streamable MCP transport
*/
import { Express } from "express";
import { Server as HttpServer } from "http";
import { Server } from "@modelcontextprotocol/sdk/server/index.js";
import { Notification } from "@modelcontextprotocol/sdk/types.js";
/**
* Express.js-based HTTP server for MCP protocol with streamable transport
* Implements /mcp endpoint for bidirectional communication
*/
export declare class McpHttpServer {
private app;
private httpServer;
private mcpServer;
private port;
private host;
private transports;
private connectionString;
private sessionTimers;
constructor(mcpServer: Server, port?: number, host?: string);
/**
* Setup Express middleware
*/
private setupMiddleware;
/**
* Setup Express routes
*/
private setupRoutes;
/**
* Handle MCP protocol requests over HTTP using Streamable HTTP Transport
*/
private handleMcpRequest;
/**
* Start the HTTP server
*/
start(): Promise<void>;
/**
* Stop the HTTP server
*/
/**
* Reset session timeout timer
*/
private resetSessionTimer;
/**
* Clear session timeout timer
*/
private clearSessionTimer;
/**
* Clean up session and transport
*/
private cleanupSession;
stop(): Promise<void>;
/**
* Get server instance for testing or advanced configuration
*/
getApp(): Express;
/**
* Get the HTTP server instance
*/
getHttpServer(): HttpServer | null;
/**
* Check if server is running
*/
isRunning(): boolean;
/**
* Broadcast notification to all connected clients
*/
broadcastNotification(notification: Notification): Promise<void>;
}
//# sourceMappingURL=http-server.d.ts.map