mcp-framework
Version:
Framework for building Model Context Protocol (MCP) servers in Typescript
58 lines (57 loc) • 1.54 kB
TypeScript
import { SSETransportConfig } from "../transports/sse/types.js";
import { HttpStreamTransportConfig } from "../transports/http/types.js";
import { AuthConfig } from "../auth/types.js";
export type TransportType = "stdio" | "sse" | "http-stream";
export interface TransportConfig {
type: TransportType;
options?: SSETransportConfig | HttpStreamTransportConfig;
auth?: AuthConfig;
}
export interface MCPServerConfig {
name?: string;
version?: string;
basePath?: string;
transport?: TransportConfig;
}
export type ServerCapabilities = {
tools?: {
listChanged?: true;
};
prompts?: {
listChanged?: true;
};
resources?: {
listChanged?: true;
subscribe?: true;
};
};
export declare class MCPServer {
private server;
private toolsMap;
private promptsMap;
private resourcesMap;
private toolLoader;
private promptLoader;
private resourceLoader;
private serverName;
private serverVersion;
private basePath;
private transportConfig;
private capabilities;
private isRunning;
private transport?;
private shutdownPromise?;
private shutdownResolve?;
constructor(config?: MCPServerConfig);
private resolveBasePath;
private createTransport;
private readPackageJson;
private getDefaultName;
private getDefaultVersion;
private setupHandlers;
private detectCapabilities;
private getSdkVersion;
start(): Promise<void>;
stop(): Promise<void>;
get IsRunning(): boolean;
}