UNPKG

marketing-post-generator-mcp

Version:

A powerful MCP server for AI-powered marketing blog post generation with Claude integration

70 lines 2.35 kB
import { ISearchAdapter } from './ISearchAdapter.js'; import { SearchOptions, SearchResult, DomainSampleResult } from './types.js'; import winston from 'winston'; /** * Main search service that provides a unified interface to search adapters * with fallback support and error handling. */ export declare class SearchService { private readonly logger; private adapter; private readonly fallbackAdapters; constructor(primaryAdapter: ISearchAdapter, fallbacks?: ISearchAdapter[], logger?: winston.Logger); /** * Set a new primary adapter * @param adapter The new primary adapter to use */ setAdapter(adapter: ISearchAdapter): void; /** * Add a fallback adapter * @param adapter The fallback adapter to add */ addFallbackAdapter(adapter: ISearchAdapter): void; /** * Get the current primary adapter name * @returns The name of the primary adapter */ getPrimaryAdapterName(): string; /** * Get the names of all fallback adapters * @returns Array of fallback adapter names */ getFallbackAdapterNames(): string[]; /** * Fetch content from a URL with fallback support * @param url The URL to fetch content from * @returns Promise resolving to the content */ fetchContent(url: string): Promise<string>; /** * Sample domain with fallback support * @param domain The domain to sample from * @param count Number of samples to collect * @returns Promise resolving to array of sampled content */ sampleDomain(domain: string, count: number): Promise<DomainSampleResult[]>; /** * Search with fallback support * @param query The search query * @param options Optional search parameters * @returns Promise resolving to search results */ search(query: string, options?: SearchOptions): Promise<SearchResult[]>; /** * Check health of all adapters * @returns Promise resolving to health status of primary and fallback adapters */ healthCheck(): Promise<{ primary: { name: string; healthy: boolean; error?: string; }; fallbacks: Array<{ name: string; healthy: boolean; error?: string; }>; }>; } //# sourceMappingURL=SearchService.d.ts.map