UNPKG

@nanocollective/nanocoder

Version:

A local-first CLI coding agent that brings the power of agentic coding tools like Claude Code and Gemini CLI to local models or controlled APIs like OpenRouter

62 lines 2.26 kB
import type { AISDKCoreTool, MCPInitResult, MCPServer, MCPTool, Tool } from '../types/index.js'; export declare class MCPClient { private clients; private transports; private serverTools; private serverConfigs; private isConnected; private logger; private isToolAutoApproved; constructor(); /** * Ensures backward compatibility for old MCP server configurations * by adding default transport type for existing configurations */ private normalizeServerConfig; connectToServer(server: MCPServer): Promise<void>; connectToServers(servers: MCPServer[], onProgress?: (result: MCPInitResult) => void): Promise<MCPInitResult[]>; getAllTools(): Tool[]; /** * Get all MCP tools as AI SDK native CoreTool format * Converts MCP tool schemas to AI SDK's tool() format */ getNativeToolsRegistry(): Record<string, AISDKCoreTool>; getToolMapping(): Map<string, { serverName: string; originalName: string; }>; /** * Get all MCP tools as entries with handlers for easy registration * Each entry contains the native AI SDK tool and its handler function * * the AI SDK tool definition and the corresponding handler function. * This enables cleaner integration with ToolManager. * * @returns Array of tool entries with name, AI SDK tool, and handler function */ getToolEntries(): Array<{ name: string; tool: AISDKCoreTool; handler: (args: Record<string, unknown>) => Promise<string>; }>; callTool(toolName: string, args: Record<string, unknown>): Promise<string>; private executeToolCall; disconnect(): Promise<void>; getConnectedServers(): string[]; isServerConnected(serverName: string): boolean; getServerTools(serverName: string): MCPTool[]; /** * Gets server information including transport type and URL for remote servers */ getServerInfo(serverName: string): { name: string; transport: string; url?: string; toolCount: number; connected: boolean; description?: string; tags?: string[]; autoApprovedCommands?: string[]; } | undefined; } //# sourceMappingURL=mcp-client.d.ts.map