mcp-ai-agent-guidelines
Version:
A comprehensive Model Context Protocol server providing advanced tools, resources, and prompts for implementing AI agent best practices
495 lines • 22.4 kB
TypeScript
/**
* Coverage Dashboard Design Prompt Builder
*
* Generates comprehensive UI/UX design prompts for coverage reporting dashboards.
* Inspired by design iteration methodology and Nielsen's usability heuristics,
* this tool helps create intuitive, accessible, and responsive coverage dashboards.
*/
import { z } from "zod";
declare const CoverageDashboardDesignSchema: z.ZodObject<{
title: z.ZodDefault<z.ZodString>;
projectContext: z.ZodOptional<z.ZodString>;
targetUsers: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
dashboardStyle: z.ZodDefault<z.ZodOptional<z.ZodEnum<["card-based", "table-heavy", "hybrid", "minimal"]>>>;
primaryMetrics: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
sections: z.ZodOptional<z.ZodArray<z.ZodObject<{
sectionId: z.ZodString;
title: z.ZodString;
description: z.ZodOptional<z.ZodString>;
collapsible: z.ZodOptional<z.ZodBoolean>;
defaultExpanded: z.ZodOptional<z.ZodBoolean>;
metrics: z.ZodOptional<z.ZodArray<z.ZodObject<{
metricName: z.ZodString;
displayFormat: z.ZodOptional<z.ZodEnum<["percentage", "ratio", "trend", "badge"]>>;
thresholds: z.ZodOptional<z.ZodObject<{
critical: z.ZodOptional<z.ZodNumber>;
warning: z.ZodOptional<z.ZodNumber>;
good: z.ZodOptional<z.ZodNumber>;
}, "strip", z.ZodTypeAny, {
critical?: number | undefined;
warning?: number | undefined;
good?: number | undefined;
}, {
critical?: number | undefined;
warning?: number | undefined;
good?: number | undefined;
}>>;
showTrend: z.ZodOptional<z.ZodBoolean>;
priority: z.ZodOptional<z.ZodEnum<["high", "medium", "low"]>>;
}, "strip", z.ZodTypeAny, {
metricName: string;
thresholds?: {
critical?: number | undefined;
warning?: number | undefined;
good?: number | undefined;
} | undefined;
priority?: "low" | "medium" | "high" | undefined;
displayFormat?: "ratio" | "percentage" | "trend" | "badge" | undefined;
showTrend?: boolean | undefined;
}, {
metricName: string;
thresholds?: {
critical?: number | undefined;
warning?: number | undefined;
good?: number | undefined;
} | undefined;
priority?: "low" | "medium" | "high" | undefined;
displayFormat?: "ratio" | "percentage" | "trend" | "badge" | undefined;
showTrend?: boolean | undefined;
}>, "many">>;
}, "strip", z.ZodTypeAny, {
title: string;
sectionId: string;
description?: string | undefined;
metrics?: {
metricName: string;
thresholds?: {
critical?: number | undefined;
warning?: number | undefined;
good?: number | undefined;
} | undefined;
priority?: "low" | "medium" | "high" | undefined;
displayFormat?: "ratio" | "percentage" | "trend" | "badge" | undefined;
showTrend?: boolean | undefined;
}[] | undefined;
collapsible?: boolean | undefined;
defaultExpanded?: boolean | undefined;
}, {
title: string;
sectionId: string;
description?: string | undefined;
metrics?: {
metricName: string;
thresholds?: {
critical?: number | undefined;
warning?: number | undefined;
good?: number | undefined;
} | undefined;
priority?: "low" | "medium" | "high" | undefined;
displayFormat?: "ratio" | "percentage" | "trend" | "badge" | undefined;
showTrend?: boolean | undefined;
}[] | undefined;
collapsible?: boolean | undefined;
defaultExpanded?: boolean | undefined;
}>, "many">>;
colorScheme: z.ZodDefault<z.ZodOptional<z.ZodEnum<["light", "dark", "auto", "high-contrast", "colorblind-safe", "custom"]>>>;
primaryColor: z.ZodDefault<z.ZodOptional<z.ZodString>>;
successColor: z.ZodDefault<z.ZodOptional<z.ZodString>>;
warningColor: z.ZodDefault<z.ZodOptional<z.ZodString>>;
dangerColor: z.ZodDefault<z.ZodOptional<z.ZodString>>;
useGradients: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
visualIndicators: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
fontFamily: z.ZodDefault<z.ZodOptional<z.ZodString>>;
codeFont: z.ZodDefault<z.ZodOptional<z.ZodString>>;
accessibility: z.ZodOptional<z.ZodObject<{
wcagLevel: z.ZodDefault<z.ZodOptional<z.ZodEnum<["A", "AA", "AAA"]>>>;
colorBlindSafe: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
keyboardNavigation: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
screenReaderOptimized: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
focusIndicators: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
highContrastMode: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
}, "strip", z.ZodTypeAny, {
wcagLevel: "A" | "AA" | "AAA";
colorBlindSafe: boolean;
keyboardNavigation: boolean;
screenReaderOptimized: boolean;
focusIndicators: boolean;
highContrastMode: boolean;
}, {
wcagLevel?: "A" | "AA" | "AAA" | undefined;
colorBlindSafe?: boolean | undefined;
keyboardNavigation?: boolean | undefined;
screenReaderOptimized?: boolean | undefined;
focusIndicators?: boolean | undefined;
highContrastMode?: boolean | undefined;
}>>;
responsive: z.ZodOptional<z.ZodObject<{
mobileFirst: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
breakpoints: z.ZodOptional<z.ZodObject<{
mobile: z.ZodDefault<z.ZodOptional<z.ZodString>>;
tablet: z.ZodDefault<z.ZodOptional<z.ZodString>>;
desktop: z.ZodDefault<z.ZodOptional<z.ZodString>>;
largeDesktop: z.ZodDefault<z.ZodOptional<z.ZodString>>;
}, "strip", z.ZodTypeAny, {
mobile: string;
tablet: string;
desktop: string;
largeDesktop: string;
}, {
mobile?: string | undefined;
tablet?: string | undefined;
desktop?: string | undefined;
largeDesktop?: string | undefined;
}>>;
touchOptimized: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
collapsibleNavigation: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
}, "strip", z.ZodTypeAny, {
mobileFirst: boolean;
touchOptimized: boolean;
collapsibleNavigation: boolean;
breakpoints?: {
mobile: string;
tablet: string;
desktop: string;
largeDesktop: string;
} | undefined;
}, {
mobileFirst?: boolean | undefined;
breakpoints?: {
mobile?: string | undefined;
tablet?: string | undefined;
desktop?: string | undefined;
largeDesktop?: string | undefined;
} | undefined;
touchOptimized?: boolean | undefined;
collapsibleNavigation?: boolean | undefined;
}>>;
interactiveFeatures: z.ZodOptional<z.ZodObject<{
filters: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
sorting: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
search: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
tooltips: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
expandCollapse: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
drillDown: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
exportOptions: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
realTimeUpdates: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
}, "strip", z.ZodTypeAny, {
search: boolean;
filters: boolean;
sorting: boolean;
tooltips: boolean;
expandCollapse: boolean;
drillDown: boolean;
exportOptions: string[];
realTimeUpdates: boolean;
}, {
search?: boolean | undefined;
filters?: boolean | undefined;
sorting?: boolean | undefined;
tooltips?: boolean | undefined;
expandCollapse?: boolean | undefined;
drillDown?: boolean | undefined;
exportOptions?: string[] | undefined;
realTimeUpdates?: boolean | undefined;
}>>;
performance: z.ZodOptional<z.ZodObject<{
lazyLoading: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
virtualScrolling: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
dataCaching: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
skeletonLoaders: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
progressiveEnhancement: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
}, "strip", z.ZodTypeAny, {
lazyLoading: boolean;
virtualScrolling: boolean;
dataCaching: boolean;
skeletonLoaders: boolean;
progressiveEnhancement: boolean;
}, {
lazyLoading?: boolean | undefined;
virtualScrolling?: boolean | undefined;
dataCaching?: boolean | undefined;
skeletonLoaders?: boolean | undefined;
progressiveEnhancement?: boolean | undefined;
}>>;
heuristicsCompliance: z.ZodOptional<z.ZodObject<{
visibilityOfSystemStatus: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
matchWithRealWorld: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
userControlAndFreedom: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
consistencyAndStandards: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
errorPrevention: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
recognitionOverRecall: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
flexibilityAndEfficiency: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
aestheticAndMinimalist: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
helpUsersRecognizeErrors: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
helpAndDocumentation: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
}, "strip", z.ZodTypeAny, {
visibilityOfSystemStatus: boolean;
matchWithRealWorld: boolean;
userControlAndFreedom: boolean;
consistencyAndStandards: boolean;
errorPrevention: boolean;
recognitionOverRecall: boolean;
flexibilityAndEfficiency: boolean;
aestheticAndMinimalist: boolean;
helpUsersRecognizeErrors: boolean;
helpAndDocumentation: boolean;
}, {
visibilityOfSystemStatus?: boolean | undefined;
matchWithRealWorld?: boolean | undefined;
userControlAndFreedom?: boolean | undefined;
consistencyAndStandards?: boolean | undefined;
errorPrevention?: boolean | undefined;
recognitionOverRecall?: boolean | undefined;
flexibilityAndEfficiency?: boolean | undefined;
aestheticAndMinimalist?: boolean | undefined;
helpUsersRecognizeErrors?: boolean | undefined;
helpAndDocumentation?: boolean | undefined;
}>>;
iterationCycle: z.ZodOptional<z.ZodObject<{
includeABTesting: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
includeAnalytics: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
includeFeedbackWidget: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
includeUsabilityMetrics: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
}, "strip", z.ZodTypeAny, {
includeABTesting: boolean;
includeAnalytics: boolean;
includeFeedbackWidget: boolean;
includeUsabilityMetrics: boolean;
}, {
includeABTesting?: boolean | undefined;
includeAnalytics?: boolean | undefined;
includeFeedbackWidget?: boolean | undefined;
includeUsabilityMetrics?: boolean | undefined;
}>>;
framework: z.ZodDefault<z.ZodOptional<z.ZodEnum<["react", "vue", "angular", "svelte", "static", "any"]>>>;
componentLibrary: z.ZodOptional<z.ZodString>;
mode: z.ZodDefault<z.ZodOptional<z.ZodString>>;
model: z.ZodDefault<z.ZodOptional<z.ZodString>>;
tools: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString, "many">>>;
includeFrontmatter: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
includeDisclaimer: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
includeReferences: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
includeMetadata: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
inputFile: z.ZodOptional<z.ZodString>;
forcePromptMdStyle: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
techniques: z.ZodOptional<z.ZodArray<z.ZodEnum<["zero-shot", "few-shot", "chain-of-thought", "self-consistency", "in-context-learning", "generate-knowledge", "prompt-chaining", "tree-of-thoughts", "meta-prompting", "rag", "react", "art"]>, "many">>;
includeTechniqueHints: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
autoSelectTechniques: z.ZodDefault<z.ZodOptional<z.ZodBoolean>>;
provider: z.ZodDefault<z.ZodOptional<z.ZodEnum<["gpt-4.1", "gpt-5", "gpt-5.1", "gpt-5.2", "gpt-5-codex", "gpt-5.1-codex", "gpt-5.1-codex-mini", "gpt-5-mini", "claude-opus-4.1", "claude-haiku-4.5", "claude-sonnet-4.5", "claude-sonnet-4", "gemini-2.5-pro", "gemini-2.0-flash", "grok-code-fast-1", "qwen2.5", "raptor-mini", "other"]>>>;
style: z.ZodOptional<z.ZodEnum<["markdown", "xml"]>>;
}, "strip", z.ZodTypeAny, {
title: string;
includeFrontmatter: boolean;
mode: string;
model: string;
tools: string[];
includeReferences: boolean;
includeMetadata: boolean;
forcePromptMdStyle: boolean;
includeDisclaimer: boolean;
includeTechniqueHints: boolean;
autoSelectTechniques: boolean;
provider: "gpt-4.1" | "gpt-5" | "gpt-5.1" | "gpt-5.2" | "gpt-5-codex" | "gpt-5.1-codex" | "gpt-5.1-codex-mini" | "gpt-5-mini" | "claude-opus-4.1" | "claude-haiku-4.5" | "claude-sonnet-4.5" | "claude-sonnet-4" | "gemini-2.5-pro" | "gemini-2.0-flash" | "grok-code-fast-1" | "qwen2.5" | "raptor-mini" | "other";
framework: "react" | "angular" | "vue" | "any" | "svelte" | "static";
primaryColor: string;
fontFamily: string;
targetUsers: string[];
dashboardStyle: "minimal" | "card-based" | "table-heavy" | "hybrid";
primaryMetrics: string[];
colorScheme: "custom" | "dark" | "auto" | "light" | "high-contrast" | "colorblind-safe";
successColor: string;
warningColor: string;
dangerColor: string;
useGradients: boolean;
visualIndicators: string[];
codeFont: string;
inputFile?: string | undefined;
performance?: {
lazyLoading: boolean;
virtualScrolling: boolean;
dataCaching: boolean;
skeletonLoaders: boolean;
progressiveEnhancement: boolean;
} | undefined;
techniques?: ("zero-shot" | "few-shot" | "chain-of-thought" | "self-consistency" | "in-context-learning" | "generate-knowledge" | "prompt-chaining" | "tree-of-thoughts" | "meta-prompting" | "rag" | "react" | "art")[] | undefined;
style?: "markdown" | "xml" | undefined;
responsive?: {
mobileFirst: boolean;
touchOptimized: boolean;
collapsibleNavigation: boolean;
breakpoints?: {
mobile: string;
tablet: string;
desktop: string;
largeDesktop: string;
} | undefined;
} | undefined;
sections?: {
title: string;
sectionId: string;
description?: string | undefined;
metrics?: {
metricName: string;
thresholds?: {
critical?: number | undefined;
warning?: number | undefined;
good?: number | undefined;
} | undefined;
priority?: "low" | "medium" | "high" | undefined;
displayFormat?: "ratio" | "percentage" | "trend" | "badge" | undefined;
showTrend?: boolean | undefined;
}[] | undefined;
collapsible?: boolean | undefined;
defaultExpanded?: boolean | undefined;
}[] | undefined;
accessibility?: {
wcagLevel: "A" | "AA" | "AAA";
colorBlindSafe: boolean;
keyboardNavigation: boolean;
screenReaderOptimized: boolean;
focusIndicators: boolean;
highContrastMode: boolean;
} | undefined;
projectContext?: string | undefined;
interactiveFeatures?: {
search: boolean;
filters: boolean;
sorting: boolean;
tooltips: boolean;
expandCollapse: boolean;
drillDown: boolean;
exportOptions: string[];
realTimeUpdates: boolean;
} | undefined;
heuristicsCompliance?: {
visibilityOfSystemStatus: boolean;
matchWithRealWorld: boolean;
userControlAndFreedom: boolean;
consistencyAndStandards: boolean;
errorPrevention: boolean;
recognitionOverRecall: boolean;
flexibilityAndEfficiency: boolean;
aestheticAndMinimalist: boolean;
helpUsersRecognizeErrors: boolean;
helpAndDocumentation: boolean;
} | undefined;
iterationCycle?: {
includeABTesting: boolean;
includeAnalytics: boolean;
includeFeedbackWidget: boolean;
includeUsabilityMetrics: boolean;
} | undefined;
componentLibrary?: string | undefined;
}, {
title?: string | undefined;
includeFrontmatter?: boolean | undefined;
mode?: string | undefined;
model?: string | undefined;
tools?: string[] | undefined;
includeReferences?: boolean | undefined;
includeMetadata?: boolean | undefined;
inputFile?: string | undefined;
forcePromptMdStyle?: boolean | undefined;
performance?: {
lazyLoading?: boolean | undefined;
virtualScrolling?: boolean | undefined;
dataCaching?: boolean | undefined;
skeletonLoaders?: boolean | undefined;
progressiveEnhancement?: boolean | undefined;
} | undefined;
includeDisclaimer?: boolean | undefined;
techniques?: ("zero-shot" | "few-shot" | "chain-of-thought" | "self-consistency" | "in-context-learning" | "generate-knowledge" | "prompt-chaining" | "tree-of-thoughts" | "meta-prompting" | "rag" | "react" | "art")[] | undefined;
includeTechniqueHints?: boolean | undefined;
autoSelectTechniques?: boolean | undefined;
provider?: "gpt-4.1" | "gpt-5" | "gpt-5.1" | "gpt-5.2" | "gpt-5-codex" | "gpt-5.1-codex" | "gpt-5.1-codex-mini" | "gpt-5-mini" | "claude-opus-4.1" | "claude-haiku-4.5" | "claude-sonnet-4.5" | "claude-sonnet-4" | "gemini-2.5-pro" | "gemini-2.0-flash" | "grok-code-fast-1" | "qwen2.5" | "raptor-mini" | "other" | undefined;
style?: "markdown" | "xml" | undefined;
framework?: "react" | "angular" | "vue" | "any" | "svelte" | "static" | undefined;
primaryColor?: string | undefined;
fontFamily?: string | undefined;
responsive?: {
mobileFirst?: boolean | undefined;
breakpoints?: {
mobile?: string | undefined;
tablet?: string | undefined;
desktop?: string | undefined;
largeDesktop?: string | undefined;
} | undefined;
touchOptimized?: boolean | undefined;
collapsibleNavigation?: boolean | undefined;
} | undefined;
sections?: {
title: string;
sectionId: string;
description?: string | undefined;
metrics?: {
metricName: string;
thresholds?: {
critical?: number | undefined;
warning?: number | undefined;
good?: number | undefined;
} | undefined;
priority?: "low" | "medium" | "high" | undefined;
displayFormat?: "ratio" | "percentage" | "trend" | "badge" | undefined;
showTrend?: boolean | undefined;
}[] | undefined;
collapsible?: boolean | undefined;
defaultExpanded?: boolean | undefined;
}[] | undefined;
accessibility?: {
wcagLevel?: "A" | "AA" | "AAA" | undefined;
colorBlindSafe?: boolean | undefined;
keyboardNavigation?: boolean | undefined;
screenReaderOptimized?: boolean | undefined;
focusIndicators?: boolean | undefined;
highContrastMode?: boolean | undefined;
} | undefined;
projectContext?: string | undefined;
targetUsers?: string[] | undefined;
dashboardStyle?: "minimal" | "card-based" | "table-heavy" | "hybrid" | undefined;
primaryMetrics?: string[] | undefined;
colorScheme?: "custom" | "dark" | "auto" | "light" | "high-contrast" | "colorblind-safe" | undefined;
successColor?: string | undefined;
warningColor?: string | undefined;
dangerColor?: string | undefined;
useGradients?: boolean | undefined;
visualIndicators?: string[] | undefined;
codeFont?: string | undefined;
interactiveFeatures?: {
search?: boolean | undefined;
filters?: boolean | undefined;
sorting?: boolean | undefined;
tooltips?: boolean | undefined;
expandCollapse?: boolean | undefined;
drillDown?: boolean | undefined;
exportOptions?: string[] | undefined;
realTimeUpdates?: boolean | undefined;
} | undefined;
heuristicsCompliance?: {
visibilityOfSystemStatus?: boolean | undefined;
matchWithRealWorld?: boolean | undefined;
userControlAndFreedom?: boolean | undefined;
consistencyAndStandards?: boolean | undefined;
errorPrevention?: boolean | undefined;
recognitionOverRecall?: boolean | undefined;
flexibilityAndEfficiency?: boolean | undefined;
aestheticAndMinimalist?: boolean | undefined;
helpUsersRecognizeErrors?: boolean | undefined;
helpAndDocumentation?: boolean | undefined;
} | undefined;
iterationCycle?: {
includeABTesting?: boolean | undefined;
includeAnalytics?: boolean | undefined;
includeFeedbackWidget?: boolean | undefined;
includeUsabilityMetrics?: boolean | undefined;
} | undefined;
componentLibrary?: string | undefined;
}>;
export type CoverageDashboardDesignInput = z.infer<typeof CoverageDashboardDesignSchema>;
export declare function coverageDashboardDesignPromptBuilder(args: unknown): Promise<{
content: {
type: string;
text: string;
}[];
}>;
export {};
//# sourceMappingURL=coverage-dashboard-design-prompt-builder.d.ts.map