codemesh
Version:
Execute TypeScript code against multiple MCP servers, weaving them together into powerful workflows
38 lines (37 loc) • 1.12 kB
TypeScript
import type { McpServerConfig } from './config.js';
export interface DiscoveredTool {
name: string;
description?: string;
inputSchema: unknown;
outputSchema?: unknown;
serverId: string;
serverName: string;
}
export interface DiscoveryResult {
serverId: string;
serverName: string;
success: boolean;
tools: DiscoveredTool[];
error?: string;
}
export declare class ToolDiscoveryService {
private static instance;
private constructor();
static getInstance(): ToolDiscoveryService;
/**
* Discover tools from HTTP-based MCP servers
*/
discoverFromHttpServer(server: McpServerConfig): Promise<DiscoveryResult>;
/**
* Discover tools from stdio-based MCP servers
*/
discoverFromStdioServer(server: McpServerConfig): Promise<DiscoveryResult>;
/**
* Discover tools from all configured MCP servers
*/
discoverAllTools(servers: McpServerConfig[]): Promise<DiscoveryResult[]>;
/**
* Generate a summary of discovered tools for display
*/
generateDiscoverySummary(results: DiscoveryResult[]): string;
}