@classic-homes/theme-mcp 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,153 @@
1
+ import { McpServer } from '@modelcontextprotocol/sdk/server/mcp.js';
2
+
3
+ /**
4
+ * Classic Theme MCP Server
5
+ *
6
+ * Provides AI models with comprehensive design system knowledge including
7
+ * components, design tokens, layout patterns, and validation schemas.
8
+ */
9
+
10
+ /**
11
+ * Creates and configures the MCP server
12
+ */
13
+ declare function createServer(): McpServer;
14
+
15
+ /**
16
+ * Types for the Classic Theme MCP Server
17
+ */
18
+ /** Component prop definition */
19
+ interface PropDefinition {
20
+ name: string;
21
+ type: string;
22
+ default?: string;
23
+ required: boolean;
24
+ description: string;
25
+ }
26
+ /** Component variant definition */
27
+ interface VariantDefinition {
28
+ name: string;
29
+ values: string[];
30
+ default?: string;
31
+ }
32
+ /** Component slot definition */
33
+ interface SlotDefinition {
34
+ name: string;
35
+ description: string;
36
+ required: boolean;
37
+ }
38
+ /** Component event definition */
39
+ interface EventDefinition {
40
+ name: string;
41
+ type: string;
42
+ description: string;
43
+ }
44
+ /** Code example */
45
+ interface CodeExample {
46
+ title: string;
47
+ description?: string;
48
+ code: string;
49
+ }
50
+ /** Component category */
51
+ type ComponentCategory = 'core' | 'form' | 'layout' | 'feedback' | 'data' | 'overlay' | 'navigation' | 'branding';
52
+ /** Component definition in the catalog */
53
+ interface ComponentDefinition {
54
+ name: string;
55
+ description: string;
56
+ category: ComponentCategory;
57
+ importPath: string;
58
+ props: PropDefinition[];
59
+ variants: VariantDefinition[];
60
+ slots: SlotDefinition[];
61
+ events: EventDefinition[];
62
+ examples: CodeExample[];
63
+ relatedComponents: string[];
64
+ accessibility?: {
65
+ keyboard?: string;
66
+ ariaAttributes?: string[];
67
+ };
68
+ documentation?: string;
69
+ }
70
+ /** Component catalog */
71
+ interface ComponentCatalog {
72
+ version: string;
73
+ generated: string;
74
+ components: ComponentDefinition[];
75
+ }
76
+ /** Color token with shades */
77
+ interface ColorToken {
78
+ name: string;
79
+ description: string;
80
+ shades: Record<string, string>;
81
+ foreground?: string;
82
+ }
83
+ /** Spacing token */
84
+ interface SpacingToken {
85
+ key: string;
86
+ value: string;
87
+ pixels: string;
88
+ }
89
+ /** Typography token */
90
+ interface TypographyToken {
91
+ fontFamilies: Record<string, string>;
92
+ fontSizes: Record<string, {
93
+ size: string;
94
+ lineHeight: string;
95
+ }>;
96
+ fontWeights: Record<string, number>;
97
+ }
98
+ /** Design tokens */
99
+ interface TokenDefinitions {
100
+ version: string;
101
+ colors: {
102
+ brand: ColorToken[];
103
+ semantic: Record<string, {
104
+ light: string;
105
+ dark: string;
106
+ }>;
107
+ };
108
+ spacing: SpacingToken[];
109
+ typography: TypographyToken;
110
+ borderRadius: Record<string, string>;
111
+ boxShadow: Record<string, string>;
112
+ }
113
+ /** Layout pattern definition */
114
+ interface LayoutPattern {
115
+ id: string;
116
+ name: string;
117
+ description: string;
118
+ useCase: string;
119
+ components: string[];
120
+ example: string;
121
+ props: Record<string, string>;
122
+ }
123
+ /** Form pattern definition */
124
+ interface FormPattern {
125
+ id: string;
126
+ name: string;
127
+ description: string;
128
+ schema?: string;
129
+ components: string[];
130
+ example: string;
131
+ }
132
+ /** Pattern library */
133
+ interface PatternLibrary {
134
+ version: string;
135
+ layouts: LayoutPattern[];
136
+ forms: FormPattern[];
137
+ }
138
+ /** Validation schema info */
139
+ interface SchemaInfo {
140
+ name: string;
141
+ description: string;
142
+ importPath: string;
143
+ example?: string;
144
+ }
145
+ /** Validation schemas catalog */
146
+ interface SchemaCatalog {
147
+ auth: SchemaInfo[];
148
+ common: SchemaInfo[];
149
+ file: SchemaInfo[];
150
+ api: SchemaInfo[];
151
+ }
152
+
153
+ export { type CodeExample, type ColorToken, type ComponentCatalog, type ComponentCategory, type ComponentDefinition, type EventDefinition, type FormPattern, type LayoutPattern, type PatternLibrary, type PropDefinition, type SchemaCatalog, type SchemaInfo, type SlotDefinition, type SpacingToken, type TokenDefinitions, type TypographyToken, type VariantDefinition, createServer };