UNPKG

@kyaniiii/google-search-mcp

Version:
90 lines 3.43 kB
import { z } from 'zod'; import type { TextContent, ToolAnnotations } from '@modelcontextprotocol/sdk/types.js'; export interface SearchResult { title: string; link: string; snippet: string; displayLink: string; } export interface SearchParams { query: string; num?: number; start?: number; safe?: string; lr?: string; gl?: string; dateRestrict?: string; fileType?: string; siteSearch?: string; siteSearchFilter?: string; cr?: string; exactTerms?: string; excludeTerms?: string; orTerms?: string; rights?: string; sort?: string; searchType?: string; } export declare const name = "google_search"; export declare const annotations: ToolAnnotations; export declare const description = "\nPerforms Google searches using the official API with automatic API key rotation.\n\nFeatures:\n- Official Google Web Search\n- Automatic API key rotation\n- Intelligent quota management\n- Multi-language and geolocation support\n\nParameters:\n- query: Search query (required)\n- num: Number of results (1-10, default: 5)\n- start: Starting index (default: 1)\n- safe: SafeSearch (off/active, default: off)\n- lr: Language (ex: lang_fr, lang_en)\n- gl: Country (ex: fr, us, uk)\n\nReturns a JSON list of results with title, link, description and domain.\n"; export declare const inputSchema: z.ZodObject<{ query: z.ZodString; num: z.ZodOptional<z.ZodNumber>; start: z.ZodOptional<z.ZodNumber>; safe: z.ZodOptional<z.ZodEnum<["off", "active"]>>; lr: z.ZodOptional<z.ZodString>; gl: z.ZodOptional<z.ZodString>; dateRestrict: z.ZodOptional<z.ZodString>; fileType: z.ZodOptional<z.ZodString>; siteSearch: z.ZodOptional<z.ZodString>; siteSearchFilter: z.ZodOptional<z.ZodEnum<["i", "e"]>>; cr: z.ZodOptional<z.ZodString>; exactTerms: z.ZodOptional<z.ZodString>; excludeTerms: z.ZodOptional<z.ZodString>; orTerms: z.ZodOptional<z.ZodString>; rights: z.ZodOptional<z.ZodString>; sort: z.ZodOptional<z.ZodString>; searchType: z.ZodOptional<z.ZodString>; }, "strip", z.ZodTypeAny, { query: string; sort?: string | undefined; num?: number | undefined; start?: number | undefined; safe?: "off" | "active" | undefined; lr?: string | undefined; gl?: string | undefined; dateRestrict?: string | undefined; fileType?: string | undefined; siteSearch?: string | undefined; siteSearchFilter?: "i" | "e" | undefined; cr?: string | undefined; exactTerms?: string | undefined; excludeTerms?: string | undefined; orTerms?: string | undefined; rights?: string | undefined; searchType?: string | undefined; }, { query: string; sort?: string | undefined; num?: number | undefined; start?: number | undefined; safe?: "off" | "active" | undefined; lr?: string | undefined; gl?: string | undefined; dateRestrict?: string | undefined; fileType?: string | undefined; siteSearch?: string | undefined; siteSearchFilter?: "i" | "e" | undefined; cr?: string | undefined; exactTerms?: string | undefined; excludeTerms?: string | undefined; orTerms?: string | undefined; rights?: string | undefined; searchType?: string | undefined; }>; export declare const execute: (params: SearchParams) => Promise<{ content: TextContent[]; isError: boolean; }>; //# sourceMappingURL=search.d.ts.map