UNPKG

smartlead-mcp-server

Version:

MCP server for Smartlead campaign management integration. Features include creating campaigns, updating campaign settings, and managing campaign sequences.

51 lines (50 loc) 1.59 kB
import { CategoryTool } from '../types/common.js'; /** * Tool Registry manages the registration and querying of all available tools. * It provides a central place to register, filter, and retrieve tools by various criteria. */ export declare class ToolRegistry { private tools; private cachedEnabledTools; private lastCacheTime; private readonly CACHE_TTL; /** * Register a single tool in the registry */ register(tool: CategoryTool): void; /** * Register multiple tools at once */ registerMany(tools: CategoryTool[]): void; /** * Get a tool by its name */ getByName(name: string): CategoryTool | undefined; /** * Get all tools that belong to a specific category */ getByCategory(category: string): CategoryTool[]; /** * Get all registered tools */ getAllTools(): CategoryTool[]; /** * Get all tools that are enabled based on the license and configuration * This method now returns a subset based on the current license */ getEnabledToolsAsync(): Promise<CategoryTool[]>; /** * Get enabled tools (synchronous version, falls back to configuration) * This is used for backward compatibility */ getEnabledTools(): CategoryTool[]; /** * Check if a tool with the given name exists in the registry */ hasToolWithName(name: string): boolean; /** * Check if a tool belongs to the specified category */ isToolInCategory(name: string, category: string): boolean; } export declare const toolRegistry: ToolRegistry;