pagespeed-insights-mcp
Version:
MCP server for Google PageSpeed Insights API - analyze web performance with Claude
79 lines (78 loc) • 3.47 kB
TypeScript
import { z } from "zod";
export declare const UrlSchema: z.ZodString;
export declare const StrategySchema: z.ZodDefault<z.ZodEnum<["mobile", "desktop"]>>;
export declare const CategorySchema: z.ZodEnum<["performance", "accessibility", "best-practices", "seo", "pwa"]>;
export declare const LocaleSchema: z.ZodDefault<z.ZodString>;
export declare const AnalyzePageSpeedSchema: z.ZodObject<{
url: z.ZodString;
strategy: z.ZodDefault<z.ZodEnum<["mobile", "desktop"]>>;
category: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["performance", "accessibility", "best-practices", "seo", "pwa"]>, "many">>>;
locale: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
url: string;
strategy: "mobile" | "desktop";
locale: string;
category: ("performance" | "accessibility" | "best-practices" | "seo" | "pwa")[];
}, {
url: string;
strategy?: "mobile" | "desktop" | undefined;
locale?: string | undefined;
category?: ("performance" | "accessibility" | "best-practices" | "seo" | "pwa")[] | undefined;
}>;
export declare const PerformanceSummarySchema: z.ZodObject<{
url: z.ZodString;
strategy: z.ZodDefault<z.ZodEnum<["mobile", "desktop"]>>;
}, "strip", z.ZodTypeAny, {
url: string;
strategy: "mobile" | "desktop";
}, {
url: string;
strategy?: "mobile" | "desktop" | undefined;
}>;
export declare const CruxSummarySchema: z.ZodObject<{
url: z.ZodString;
formFactor: z.ZodOptional<z.ZodEnum<["PHONE", "DESKTOP", "TABLET"]>>;
}, "strip", z.ZodTypeAny, {
url: string;
formFactor?: "PHONE" | "DESKTOP" | "TABLET" | undefined;
}, {
url: string;
formFactor?: "PHONE" | "DESKTOP" | "TABLET" | undefined;
}>;
export declare const CompareUrlsSchema: z.ZodObject<{
urlA: z.ZodString;
urlB: z.ZodString;
strategy: z.ZodDefault<z.ZodEnum<["mobile", "desktop"]>>;
categories: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["performance", "accessibility", "best-practices", "seo", "pwa"]>, "many">>>;
}, "strip", z.ZodTypeAny, {
strategy: "mobile" | "desktop";
urlA: string;
urlB: string;
categories: ("performance" | "accessibility" | "best-practices" | "seo" | "pwa")[];
}, {
urlA: string;
urlB: string;
strategy?: "mobile" | "desktop" | undefined;
categories?: ("performance" | "accessibility" | "best-practices" | "seo" | "pwa")[] | undefined;
}>;
export declare const BatchAnalyzeSchema: z.ZodObject<{
urls: z.ZodArray<z.ZodString, "many">;
strategy: z.ZodDefault<z.ZodEnum<["mobile", "desktop"]>>;
category: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodEnum<["performance", "accessibility", "best-practices", "seo", "pwa"]>, "many">>>;
locale: z.ZodDefault<z.ZodString>;
}, "strip", z.ZodTypeAny, {
strategy: "mobile" | "desktop";
locale: string;
category: ("performance" | "accessibility" | "best-practices" | "seo" | "pwa")[];
urls: string[];
}, {
urls: string[];
strategy?: "mobile" | "desktop" | undefined;
locale?: string | undefined;
category?: ("performance" | "accessibility" | "best-practices" | "seo" | "pwa")[] | undefined;
}>;
export type AnalyzePageSpeedInput = z.infer<typeof AnalyzePageSpeedSchema>;
export type PerformanceSummaryInput = z.infer<typeof PerformanceSummarySchema>;
export type CruxSummaryInput = z.infer<typeof CruxSummarySchema>;
export type CompareUrlsInput = z.infer<typeof CompareUrlsSchema>;
export type BatchAnalyzeInput = z.infer<typeof BatchAnalyzeSchema>;