wavemaker-dev-mcp 0.1.0 → 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.
package/README.md CHANGED
@@ -4,6 +4,7 @@ An MCP (Model Context Protocol) server that exposes **read-only** tools to searc
4
4
 
5
5
  - **`@wavemaker/react-runtime`** — component sources, `props.js` / `props.ts`, and references to widget names
6
6
  - **`@wavemaker/foundation-css`** or **`@wavemaker-ai/foundation-css`** — tokens, LESS, and CSS
7
+ - **Layout helpers** — rule-based suggestions (component choice, spacing tokens, layout checks), plus a placeholder DOM analysis tool (replaceable with Playwright later)
7
8
 
8
9
  There are **no embeddings** and **no vector DB**. Search uses [ripgrep](https://github.com/BurntSushi/ripgrep) when available, with a Node.js fallback.
9
10
 
@@ -56,6 +57,11 @@ Point the server at your WaveMaker app or source clones by adding an `env` block
56
57
  | `search_foundation_css` | Search inside foundation-css. |
57
58
  | `read_foundation_css_file` | Read a file relative to foundation-css. |
58
59
  | `find_wavemaker_component` | Given a name like `WmSelect` or `select`, list matching `props` paths and sample references under `components/`. |
60
+ | `suggest_component` | Map layout intent (`layout`, `repeat`, `grouped`) to a component name (e.g. `WmGrid`, `WmList`, `WmCard`, `WmFlex`). |
61
+ | `map_spacing` | Map a pixel value (`px`) to the nearest spacing token (`xs`–`xl`) and numeric value. |
62
+ | `validate_layout` | Check a `layout` string and `code` snippet for common issues (e.g. row direction, `Wm*` components). |
63
+ | `analyze_dom` | Returns mock header height, spacing, and alignment; intended as a stub until real DOM analysis is added. |
64
+ | `enforce_spacing` | Given optional `type` (e.g. `card-group`, `section`) and `layout` (`row` / `column`), returns rule-based `gap` and `padding` tokens. |
59
65
 
60
66
  ## Cursor
61
67
 
package/dist/index.js CHANGED
@@ -11,6 +11,7 @@ const zod_1 = require("zod");
11
11
  const components_js_1 = require("./components.js");
12
12
  const paths_js_1 = require("./paths.js");
13
13
  const search_js_1 = require("./search.js");
14
+ const layout_tools_js_1 = require("./layout-tools.js");
14
15
  function resolveProjectRoot(workingDirectory) {
15
16
  return workingDirectory ?? process.env.WM_PROJECT_ROOT?.trim() ?? process.cwd();
16
17
  }
@@ -207,6 +208,61 @@ async function main() {
207
208
  ];
208
209
  return { content: [{ type: "text", text: lines.join("\n") }] };
209
210
  });
211
+ mcp.registerTool("suggest_component", {
212
+ title: "Suggest WaveMaker layout component",
213
+ description: "Rule-based mapping from layout intent (grid, horizontal, vertical, repeat, grouped) to a component name (e.g. WmGrid, WmList, WmCard, WmFlex).",
214
+ inputSchema: {
215
+ layout: zod_1.z.string().optional().describe('e.g. "grid", "horizontal", "vertical"'),
216
+ repeat: zod_1.z.boolean().optional().describe("Prefer WmList when true."),
217
+ grouped: zod_1.z.boolean().optional().describe("Prefer WmCard when true."),
218
+ },
219
+ }, async ({ layout, repeat, grouped }) => {
220
+ const out = (0, layout_tools_js_1.suggestComponent)({ layout, repeat, grouped });
221
+ return { content: [{ type: "text", text: JSON.stringify(out, null, 2) }] };
222
+ });
223
+ mcp.registerTool("map_spacing", {
224
+ title: "Map pixel spacing to design token",
225
+ description: "Maps a pixel value to the nearest xs/sm/md/lg/xl spacing token and numeric value.",
226
+ inputSchema: {
227
+ px: zod_1.z.number().describe("Spacing in pixels."),
228
+ },
229
+ }, async ({ px }) => {
230
+ const out = (0, layout_tools_js_1.mapSpacing)(px);
231
+ return { content: [{ type: "text", text: JSON.stringify(out, null, 2) }] };
232
+ });
233
+ mcp.registerTool("validate_layout", {
234
+ title: "Validate layout snippet",
235
+ description: "Checks layout string vs markup for common issues (e.g. row direction, WaveMaker component prefix).",
236
+ inputSchema: {
237
+ layout: zod_1.z.string().describe("Layout description or role string to check."),
238
+ code: zod_1.z.string().describe("JSX or markup to validate."),
239
+ },
240
+ }, async ({ layout, code }) => {
241
+ const out = (0, layout_tools_js_1.validateLayout)({ layout, code });
242
+ return { content: [{ type: "text", text: JSON.stringify(out, null, 2) }] };
243
+ });
244
+ mcp.registerTool("analyze_dom", {
245
+ title: "Analyze DOM (mock)",
246
+ description: "Returns placeholder header height, spacing, and alignment. Replace with Playwright-backed analysis later.",
247
+ inputSchema: {},
248
+ }, async () => {
249
+ const out = (0, layout_tools_js_1.analyzeDomMock)();
250
+ return { content: [{ type: "text", text: JSON.stringify(out, null, 2) }] };
251
+ });
252
+ mcp.registerTool("enforce_spacing", {
253
+ title: "Enforce spacing rules",
254
+ description: "Returns recommended gap and padding tokens from container type (e.g. card-group, section) and layout (row vs column).",
255
+ inputSchema: {
256
+ type: zod_1.z
257
+ .string()
258
+ .optional()
259
+ .describe('Container kind, e.g. "card-group", "section".'),
260
+ layout: zod_1.z.string().optional().describe('Flex direction hint, e.g. "row" or "column".'),
261
+ },
262
+ }, async ({ type, layout }) => {
263
+ const out = (0, layout_tools_js_1.enforceSpacing)({ type, layout });
264
+ return { content: [{ type: "text", text: JSON.stringify(out, null, 2) }] };
265
+ });
210
266
  const transport = new stdio_js_1.StdioServerTransport();
211
267
  await mcp.connect(transport);
212
268
  }
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,37 @@
1
+ /** Rule-based layout helpers used by MCP tools. */
2
+ export interface SuggestComponentInput {
3
+ layout?: string;
4
+ repeat?: boolean;
5
+ grouped?: boolean;
6
+ }
7
+ export declare function suggestComponent(input: SuggestComponentInput): {
8
+ component: string;
9
+ reason: string;
10
+ };
11
+ export declare function mapSpacing(px: number): {
12
+ token: string;
13
+ value: number;
14
+ };
15
+ export interface ValidateLayoutInput {
16
+ layout: string;
17
+ code: string;
18
+ }
19
+ export declare function validateLayout(input: ValidateLayoutInput): {
20
+ errors: string[];
21
+ };
22
+ export interface EnforceSpacingInput {
23
+ type?: string;
24
+ layout?: string;
25
+ }
26
+ /** Rule-based gap/padding tokens from container type and flex direction. */
27
+ export declare function enforceSpacing(input: EnforceSpacingInput): {
28
+ gap: string;
29
+ padding: string;
30
+ };
31
+ /** Placeholder until Playwright-based DOM analysis is wired. */
32
+ export declare function analyzeDomMock(): {
33
+ header_height: number;
34
+ spacing: number;
35
+ alignment: string;
36
+ };
37
+ //# sourceMappingURL=layout-tools.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout-tools.d.ts","sourceRoot":"","sources":["../src/layout-tools.ts"],"names":[],"mappings":"AAAA,mDAAmD;AAEnD,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,qBAAqB,GAAG;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAcpG;AAKD,wBAAgB,UAAU,CAAC,EAAE,EAAE,MAAM,GAAG;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAYvE;AAED,MAAM,WAAW,mBAAmB;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;CACd;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG;IAAE,MAAM,EAAE,MAAM,EAAE,CAAA;CAAE,CAa/E;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,4EAA4E;AAC5E,wBAAgB,cAAc,CAAC,KAAK,EAAE,mBAAmB,GAAG;IAAE,GAAG,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAY3F;AAED,gEAAgE;AAChE,wBAAgB,cAAc,IAAI;IAAE,aAAa,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,CAM9F"}
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ /** Rule-based layout helpers used by MCP tools. */
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.suggestComponent = suggestComponent;
5
+ exports.mapSpacing = mapSpacing;
6
+ exports.validateLayout = validateLayout;
7
+ exports.enforceSpacing = enforceSpacing;
8
+ exports.analyzeDomMock = analyzeDomMock;
9
+ function suggestComponent(input) {
10
+ const { layout, repeat, grouped } = input;
11
+ let component = "WmFlex";
12
+ if (layout === "grid")
13
+ component = "WmGrid";
14
+ else if (repeat)
15
+ component = "WmList";
16
+ else if (grouped)
17
+ component = "WmCard";
18
+ else if (layout === "horizontal")
19
+ component = "WmFlex";
20
+ else if (layout === "vertical")
21
+ component = "WmFlex";
22
+ return {
23
+ component,
24
+ reason: "Rule-based mapping",
25
+ };
26
+ }
27
+ const TOKENS = [4, 8, 16, 24, 32];
28
+ const TOKEN_NAMES = ["xs", "sm", "md", "lg", "xl"];
29
+ function mapSpacing(px) {
30
+ let closest = TOKENS[0];
31
+ for (const t of TOKENS) {
32
+ if (Math.abs(t - px) < Math.abs(closest - px)) {
33
+ closest = t;
34
+ }
35
+ }
36
+ const index = TOKENS.indexOf(closest);
37
+ return {
38
+ token: TOKEN_NAMES[index],
39
+ value: closest,
40
+ };
41
+ }
42
+ function validateLayout(input) {
43
+ const { layout, code } = input;
44
+ const errors = [];
45
+ if (layout.includes("row") && !code.includes('direction="row"')) {
46
+ errors.push("Missing row direction");
47
+ }
48
+ if (!code.includes("Wm")) {
49
+ errors.push("Non-WaveMaker components used");
50
+ }
51
+ return { errors };
52
+ }
53
+ /** Rule-based gap/padding tokens from container type and flex direction. */
54
+ function enforceSpacing(input) {
55
+ const { type, layout } = input;
56
+ let gap = "md";
57
+ let padding = "md";
58
+ if (type === "card-group")
59
+ gap = "lg";
60
+ if (type === "section")
61
+ gap = "xl";
62
+ if (layout === "row")
63
+ gap = "lg";
64
+ if (layout === "column")
65
+ gap = "md";
66
+ return { gap, padding };
67
+ }
68
+ /** Placeholder until Playwright-based DOM analysis is wired. */
69
+ function analyzeDomMock() {
70
+ return {
71
+ header_height: 50,
72
+ spacing: 20,
73
+ alignment: "left",
74
+ };
75
+ }
76
+ //# sourceMappingURL=layout-tools.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout-tools.js","sourceRoot":"","sources":["../src/layout-tools.ts"],"names":[],"mappings":";AAAA,mDAAmD;;AAQnD,4CAcC;AAKD,gCAYC;AAOD,wCAaC;AAQD,wCAYC;AAGD,wCAMC;AAhFD,SAAgB,gBAAgB,CAAC,KAA4B;IAC3D,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAC1C,IAAI,SAAS,GAAG,QAAQ,CAAC;IAEzB,IAAI,MAAM,KAAK,MAAM;QAAE,SAAS,GAAG,QAAQ,CAAC;SACvC,IAAI,MAAM;QAAE,SAAS,GAAG,QAAQ,CAAC;SACjC,IAAI,OAAO;QAAE,SAAS,GAAG,QAAQ,CAAC;SAClC,IAAI,MAAM,KAAK,YAAY;QAAE,SAAS,GAAG,QAAQ,CAAC;SAClD,IAAI,MAAM,KAAK,UAAU;QAAE,SAAS,GAAG,QAAQ,CAAC;IAErD,OAAO;QACL,SAAS;QACT,MAAM,EAAE,oBAAoB;KAC7B,CAAC;AACJ,CAAC;AAED,MAAM,MAAM,GAAG,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AAClC,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;AAEnD,SAAgB,UAAU,CAAC,EAAU;IACnC,IAAI,OAAO,GAAG,MAAM,CAAC,CAAC,CAAE,CAAC;IACzB,KAAK,MAAM,CAAC,IAAI,MAAM,EAAE,CAAC;QACvB,IAAI,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,GAAG,EAAE,CAAC,EAAE,CAAC;YAC9C,OAAO,GAAG,CAAC,CAAC;QACd,CAAC;IACH,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;IACtC,OAAO;QACL,KAAK,EAAE,WAAW,CAAC,KAAK,CAAE;QAC1B,KAAK,EAAE,OAAO;KACf,CAAC;AACJ,CAAC;AAOD,SAAgB,cAAc,CAAC,KAA0B;IACvD,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,KAAK,CAAC;IAC/B,MAAM,MAAM,GAAa,EAAE,CAAC;IAE5B,IAAI,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;QAChE,MAAM,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAC;IACvC,CAAC;IAED,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACzB,MAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,EAAE,MAAM,EAAE,CAAC;AACpB,CAAC;AAOD,4EAA4E;AAC5E,SAAgB,cAAc,CAAC,KAA0B;IACvD,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,KAAK,CAAC;IAC/B,IAAI,GAAG,GAAG,IAAI,CAAC;IACf,IAAI,OAAO,GAAG,IAAI,CAAC;IAEnB,IAAI,IAAI,KAAK,YAAY;QAAE,GAAG,GAAG,IAAI,CAAC;IACtC,IAAI,IAAI,KAAK,SAAS;QAAE,GAAG,GAAG,IAAI,CAAC;IAEnC,IAAI,MAAM,KAAK,KAAK;QAAE,GAAG,GAAG,IAAI,CAAC;IACjC,IAAI,MAAM,KAAK,QAAQ;QAAE,GAAG,GAAG,IAAI,CAAC;IAEpC,OAAO,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC;AAC1B,CAAC;AAED,gEAAgE;AAChE,SAAgB,cAAc;IAC5B,OAAO;QACL,aAAa,EAAE,EAAE;QACjB,OAAO,EAAE,EAAE;QACX,SAAS,EAAE,MAAM;KAClB,CAAC;AACJ,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "wavemaker-dev-mcp",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "MCP server for WaveMaker React runtime and foundation-css: search, read props, and tokens from node_modules",
5
5
  "keywords": [
6
6
  "mcp",