gemini-design-mcp 3.12.2 → 3.12.3

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.
@@ -2,7 +2,6 @@ import { z } from "zod";
2
2
  import { type Scale } from "../lib/scale.js";
3
3
  export declare const createFrontendSchema: {
4
4
  request: z.ZodString;
5
- filePath: z.ZodString;
6
5
  techStack: z.ZodString;
7
6
  context: z.ZodOptional<z.ZodString>;
8
7
  designSystem: z.ZodOptional<z.ZodObject<{
@@ -41,7 +40,6 @@ export declare const createFrontendSchema: {
41
40
  };
42
41
  export declare function createFrontend(params: {
43
42
  request: string;
44
- filePath: string;
45
43
  techStack: string;
46
44
  context?: string;
47
45
  designSystem?: {
@@ -7,8 +7,6 @@ export const createFrontendSchema = {
7
7
  request: z.string().describe("What to create: describe the page, component, or section. " +
8
8
  "Be specific about functionality and content. " +
9
9
  "Example: 'A pricing page with 3 tiers (Basic, Pro, Enterprise) with feature comparison table'"),
10
- filePath: z.string().describe("The path where this file will be created. " +
11
- "Example: 'src/components/PricingPage.tsx' or 'app/dashboard/page.tsx'"),
12
10
  techStack: z.string().describe("The tech stack to use. Be specific. " +
13
11
  "Examples: 'React + TypeScript + Tailwind CSS', 'Next.js 14 App Router + shadcn/ui', 'Vue 3 + Composition API + CSS Modules'"),
14
12
  context: z.string().optional().describe("CRITICAL FOR EXISTING PROJECTS: Pass the styling files (CSS, SCSS, theme config, etc.). " +
@@ -35,7 +33,7 @@ export const createFrontendSchema = {
35
33
  ),
36
34
  };
37
35
  export async function createFrontend(params) {
38
- const { request, filePath, techStack, context, designSystem, generateDesignSystem, projectRoot } = params;
36
+ const { request, techStack, context, designSystem, generateDesignSystem, projectRoot } = params;
39
37
 
40
38
  // Auto-load design system if exists
41
39
  const autoDesignSystem = loadDesignSystemIfExists(projectRoot);
@@ -98,7 +96,6 @@ ${CREATE_FRONTEND_PROMPT}
98
96
  ${designSystemInstructions}
99
97
  ${contextInstructions}
100
98
  TECH STACK: ${techStack}
101
- FILE PATH: ${filePath}
102
99
 
103
100
  RAPPEL CRITIQUE: Tu DOIS utiliser le format avec les markers <!-- CODE_START/END --> et <!-- DESIGN_SYSTEM_START/END -->. Ne retourne JAMAIS juste le code.`.trim();
104
101
  } else {
@@ -107,9 +104,8 @@ ${designSystemRules}
107
104
  ${designSystemInstructions}
108
105
  ${contextInstructions}
109
106
  TECH STACK: ${techStack}
110
- FILE PATH: ${filePath}
111
107
 
112
- Remember: Return a COMPLETE file ready to save at ${filePath}`.trim();
108
+ Remember: Return a COMPLETE, functional file ready to use.`.trim();
113
109
  }
114
110
  const rawResult = await generateWithGemini(systemPrompt, request, undefined, "high", "create_frontend");
115
111
  // Handle design system generation mode
@@ -3,7 +3,6 @@ import { type Scale } from "../lib/scale.js";
3
3
  export declare const modifyFrontendSchema: {
4
4
  modification: z.ZodString;
5
5
  targetCode: z.ZodString;
6
- filePath: z.ZodString;
7
6
  context: z.ZodOptional<z.ZodString>;
8
7
  scale: z.ZodOptional<z.ZodEnum<["refined", "balanced", "zoomed"]>>;
9
8
  writeFile: z.ZodDefault<z.ZodBoolean>;
@@ -11,7 +10,6 @@ export declare const modifyFrontendSchema: {
11
10
  export declare function modifyFrontend(params: {
12
11
  modification: string;
13
12
  targetCode: string;
14
- filePath: string;
15
13
  context?: string;
16
14
  scale?: Scale;
17
15
  writeFile?: boolean;
@@ -12,8 +12,6 @@ export const modifyFrontendSchema = {
12
12
  targetCode: z.string().describe("The specific code section to modify (NOT the full file). " +
13
13
  "Pass only the relevant component/element that needs redesigning. " +
14
14
  "This helps Gemini focus on exactly what to change."),
15
- filePath: z.string().describe("The path of the file being modified. " +
16
- "Example: 'src/components/Sidebar.tsx'"),
17
15
  context: z.string().optional().describe("CRITICAL: Pass the styling files (CSS, SCSS, theme config, etc.) with design tokens. " +
18
16
  "Include: variables, tokens, classes from your project. " +
19
17
  "Without this, Gemini may introduce styles that don't match your design system. " +
@@ -24,7 +22,7 @@ export const modifyFrontendSchema = {
24
22
  "If not provided, uses current working directory."),
25
23
  };
26
24
  export async function modifyFrontend(params) {
27
- const { modification, targetCode, filePath, context, scale, projectRoot } = params;
25
+ const { modification, targetCode, context, scale, projectRoot } = params;
28
26
  // Auto-load design system if exists
29
27
  const autoDesignSystem = loadDesignSystemIfExists(projectRoot);
30
28
  // Build context instructions with design system merged
@@ -59,8 +57,6 @@ ${context}
59
57
  ${designSystemRules}
60
58
  ${scaleInstructions}
61
59
  ${contextInstructions}
62
- FILE: ${filePath}
63
-
64
60
  CODE TO MODIFY:
65
61
  \`\`\`
66
62
  ${targetCode}
@@ -2,7 +2,6 @@ import { z } from "zod";
2
2
  import { type Scale } from "../lib/scale.js";
3
3
  export declare const snippetFrontendSchema: {
4
4
  request: z.ZodString;
5
- targetFile: z.ZodString;
6
5
  techStack: z.ZodString;
7
6
  insertionContext: z.ZodString;
8
7
  context: z.ZodOptional<z.ZodString>;
@@ -13,7 +12,6 @@ export declare const snippetFrontendSchema: {
13
12
  };
14
13
  export declare function snippetFrontend(params: {
15
14
  request: string;
16
- targetFile: string;
17
15
  techStack: string;
18
16
  insertionContext: string;
19
17
  context?: string;
@@ -10,8 +10,6 @@ export const snippetFrontendSchema = {
10
10
  "'A data table with sorting, filtering, and pagination', " +
11
11
  "'A form validation function for email and password', " +
12
12
  "'A custom hook for handling API requests with loading/error states'"),
13
- targetFile: z.string().describe("The file where this snippet will be inserted. " +
14
- "Example: 'src/components/Dashboard.tsx' - helps Gemini match the file's patterns"),
15
13
  techStack: z.string().describe("The tech stack being used. " +
16
14
  "Examples: 'React + TypeScript + Tailwind CSS', 'Vue 3 + Composition API'"),
17
15
  insertionContext: z.string().describe("WHERE in the file this snippet will go AND the design tokens to use. " +
@@ -27,7 +25,7 @@ export const snippetFrontendSchema = {
27
25
  "If not provided, uses current working directory."),
28
26
  };
29
27
  export async function snippetFrontend(params) {
30
- const { request, targetFile, techStack, insertionContext, context, scale, projectRoot } = params;
28
+ const { request, techStack, insertionContext, context, scale, projectRoot } = params;
31
29
  // Auto-load design system if exists
32
30
  const autoDesignSystem = loadDesignSystemIfExists(projectRoot);
33
31
  // Build context instructions with design system merged
@@ -63,7 +61,6 @@ ${designSystemRules}
63
61
  ${scaleInstructions}
64
62
  ${contextInstructions}
65
63
  TECH STACK: ${techStack}
66
- TARGET FILE: ${targetFile}
67
64
 
68
65
  INSERTION CONTEXT:
69
66
  ${insertionContext}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "gemini-design-mcp",
3
- "version": "3.12.2",
3
+ "version": "3.12.3",
4
4
  "description": "MCP server that uses Gemini 3 Pro for frontend/design code generation",
5
5
  "main": "build/index.js",
6
6
  "bin": {