UNPKG

@danielsogl/lighthouse-mcp

Version:

A comprehensive Model Context Protocol (MCP) server that provides web performance auditing, accessibility testing, SEO analysis, security assessment, and Core Web Vitals monitoring using Google Lighthouse. Enables LLMs and AI agents to perform detailed we

97 lines (96 loc) 4.29 kB
import { z } from "zod"; export declare const baseSchemas: { url: z.ZodEffects<z.ZodString, string, string>; device: z.ZodDefault<z.ZodEnum<["desktop", "mobile"]>>; throttling: z.ZodDefault<z.ZodBoolean>; categories: z.ZodOptional<z.ZodArray<z.ZodEnum<["performance", "accessibility", "best-practices", "seo", "pwa"]>, "many">>; includeDetails: z.ZodDefault<z.ZodBoolean>; threshold: z.ZodOptional<z.ZodNumber>; }; export declare const auditParamsSchema: { url: z.ZodEffects<z.ZodString, string, string>; categories: z.ZodOptional<z.ZodArray<z.ZodEnum<["performance", "accessibility", "best-practices", "seo", "pwa"]>, "many">>; device: z.ZodDefault<z.ZodEnum<["desktop", "mobile"]>>; throttling: z.ZodDefault<z.ZodBoolean>; }; export declare const basicAuditSchema: { url: z.ZodEffects<z.ZodString, string, string>; device: z.ZodDefault<z.ZodEnum<["desktop", "mobile"]>>; }; export declare const detailedAuditSchema: { url: z.ZodEffects<z.ZodString, string, string>; device: z.ZodDefault<z.ZodEnum<["desktop", "mobile"]>>; includeDetails: z.ZodDefault<z.ZodBoolean>; }; export declare const coreWebVitalsSchema: { url: z.ZodEffects<z.ZodString, string, string>; device: z.ZodDefault<z.ZodEnum<["desktop", "mobile"]>>; includeDetails: z.ZodDefault<z.ZodBoolean>; threshold: z.ZodOptional<z.ZodObject<{ lcp: z.ZodOptional<z.ZodNumber>; fid: z.ZodOptional<z.ZodNumber>; cls: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { lcp?: number | undefined; fid?: number | undefined; cls?: number | undefined; }, { lcp?: number | undefined; fid?: number | undefined; cls?: number | undefined; }>>; }; export declare const performanceBudgetSchema: { url: z.ZodEffects<z.ZodString, string, string>; device: z.ZodDefault<z.ZodEnum<["desktop", "mobile"]>>; budget: z.ZodObject<{ performanceScore: z.ZodOptional<z.ZodNumber>; firstContentfulPaint: z.ZodOptional<z.ZodNumber>; largestContentfulPaint: z.ZodOptional<z.ZodNumber>; totalBlockingTime: z.ZodOptional<z.ZodNumber>; cumulativeLayoutShift: z.ZodOptional<z.ZodNumber>; speedIndex: z.ZodOptional<z.ZodNumber>; }, "strip", z.ZodTypeAny, { firstContentfulPaint?: number | undefined; largestContentfulPaint?: number | undefined; totalBlockingTime?: number | undefined; cumulativeLayoutShift?: number | undefined; speedIndex?: number | undefined; performanceScore?: number | undefined; }, { firstContentfulPaint?: number | undefined; largestContentfulPaint?: number | undefined; totalBlockingTime?: number | undefined; cumulativeLayoutShift?: number | undefined; speedIndex?: number | undefined; performanceScore?: number | undefined; }>; }; export declare const compareDevicesSchema: { url: z.ZodEffects<z.ZodString, string, string>; categories: z.ZodOptional<z.ZodArray<z.ZodEnum<["performance", "accessibility", "best-practices", "seo", "pwa"]>, "many">>; throttling: z.ZodDefault<z.ZodBoolean>; includeDetails: z.ZodDefault<z.ZodBoolean>; }; export declare const resourceAnalysisSchema: { url: z.ZodEffects<z.ZodString, string, string>; device: z.ZodDefault<z.ZodEnum<["desktop", "mobile"]>>; resourceTypes: z.ZodOptional<z.ZodArray<z.ZodEnum<["images", "javascript", "css", "fonts", "other"]>, "many">>; minSize: z.ZodOptional<z.ZodNumber>; }; export declare const lcpOpportunitiesSchema: { url: z.ZodEffects<z.ZodString, string, string>; device: z.ZodDefault<z.ZodEnum<["desktop", "mobile"]>>; includeDetails: z.ZodDefault<z.ZodBoolean>; threshold: z.ZodOptional<z.ZodNumber>; }; export declare const unusedJavaScriptSchema: { url: z.ZodEffects<z.ZodString, string, string>; device: z.ZodDefault<z.ZodEnum<["desktop", "mobile"]>>; minBytes: z.ZodDefault<z.ZodNumber>; }; export declare const securityAuditSchema: { url: z.ZodEffects<z.ZodString, string, string>; device: z.ZodDefault<z.ZodEnum<["desktop", "mobile"]>>; checks: z.ZodOptional<z.ZodArray<z.ZodEnum<["https", "mixed-content", "csp", "hsts", "vulnerabilities"]>, "many">>; };