mozaic-mcp-server 1.0.2 → 1.1.0

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/SKILLS.md CHANGED
@@ -1,24 +1,24 @@
1
1
  # Mozaic Design System Skills
2
2
 
3
- This document describes the Claude Code skills created for the Mozaic Design System. These skills work in conjunction with the Mozaic MCP server to provide interactive, guided workflows for building applications with Mozaic.
3
+ Self-contained Claude Code skills for working with the Mozaic Design System. No MCP server configuration required - everything runs locally with bash scripts and a SQLite database.
4
4
 
5
5
  ## Overview
6
6
 
7
- **5 Claude Skills** that use the **Mozaic MCP Server** (11 tools) to provide procedural knowledge and workflows.
7
+ **5 Self-Contained Skills** that use **local shell scripts** (~15 scripts total) to query a SQLite database.
8
8
 
9
- **Architecture Pattern**: Skills provide the "how" (workflows), MCP provides the "what" (data access)
9
+ **Architecture Pattern**: Skills provide workflows + data access through bash scripts local database
10
10
 
11
11
  ## Skills Summary
12
12
 
13
- | Skill | Type | Description | MCP Tools Used |
14
- |-------|------|-------------|----------------|
15
- | `mozaic-vue-builder` | Framework | Interactive Vue 3 component generator | 4 tools |
16
- | `mozaic-react-builder` | Framework | Interactive React/TSX component generator | 4 tools |
17
- | `mozaic-design-tokens` | Agnostic | Design tokens and styling expert | 2 tools |
18
- | `mozaic-css-utilities` | Agnostic | CSS utility classes and layouts | 3 tools |
19
- | `mozaic-icons` | Both | Icon search and integration | 2 tools |
13
+ | Skill | Type | Description | Shell Scripts |
14
+ |-------|------|-------------|---------------|
15
+ | `mozaic-vue-builder` | Framework | Interactive Vue 3 component generator | 4 scripts |
16
+ | `mozaic-react-builder` | Framework | Interactive React/TSX component generator | 4 scripts |
17
+ | `mozaic-design-tokens` | Agnostic | Design tokens and styling expert | 2 scripts |
18
+ | `mozaic-css-utilities` | Agnostic | CSS utility classes and layouts | 2 scripts |
19
+ | `mozaic-icons` | Both | Icon search and integration | 2 scripts |
20
20
 
21
- **Total**: 5 skills covering all 11 MCP tools
21
+ **Total**: 5 skills with 14 shell scripts querying `~/.claude/mozaic.db`
22
22
 
23
23
  ---
24
24
 
@@ -29,11 +29,11 @@ This document describes the Claude Code skills created for the Mozaic Design Sys
29
29
  ### Purpose
30
30
  Interactive assistant for building Vue 3 applications with Mozaic Design System.
31
31
 
32
- ### MCP Tools
33
- - `mcp__mozaic__list_components`
34
- - `mcp__mozaic__get_component_info` (framework: vue)
35
- - `mcp__mozaic__generate_vue_component`
36
- - `mcp__mozaic__get_install_info` (framework: vue)
32
+ ### Shell Scripts
33
+ - `list-components.sh` - Browse Vue components by category
34
+ - `get-component.sh` - Get component props, slots, events
35
+ - `generate-component.sh` - Generate Vue 3 SFC code
36
+ - `get-install-info.sh` - Get installation commands
37
37
 
38
38
  ### Key Features
39
39
  - Browse components by category (forms, navigation, feedback, layout, etc.)
@@ -63,11 +63,11 @@ Skill: Proposes TextInput + Button combinations → Generates Vue code
63
63
  ### Purpose
64
64
  Interactive assistant for building React applications with Mozaic Design System and full TypeScript support.
65
65
 
66
- ### MCP Tools
67
- - `mcp__mozaic__list_components`
68
- - `mcp__mozaic__get_component_info` (framework: react)
69
- - `mcp__mozaic__generate_react_component`
70
- - `mcp__mozaic__get_install_info` (framework: react)
66
+ ### Shell Scripts
67
+ - `list-components.sh` - Browse React components by category
68
+ - `get-component.sh` - Get component props, events, TypeScript types
69
+ - `generate-component.sh` - Generate React/TSX code
70
+ - `get-install-info.sh` - Get installation commands with TypeScript config
71
71
 
72
72
  ### Key Features
73
73
  - Browse React components by category
@@ -97,9 +97,9 @@ Skill: Proposes components with TypeScript interfaces → Generates typed React
97
97
  ### Purpose
98
98
  Expert for working with Mozaic design tokens (colors, typography, spacing, shadows, borders, breakpoints, grid).
99
99
 
100
- ### MCP Tools
101
- - `mcp__mozaic__get_design_tokens`
102
- - `mcp__mozaic__search_documentation`
100
+ ### Shell Scripts
101
+ - `get-tokens.sh` - Get tokens by category and format (JSON, SCSS, CSS, JS)
102
+ - `search-docs.sh` - Search Mozaic documentation
103
103
 
104
104
  ### Key Features
105
105
  - Browse tokens by category
@@ -139,10 +139,9 @@ Skill: Returns colors in requested format (SCSS/CSS/JS) with usage examples
139
139
  ### Purpose
140
140
  Expert for Mozaic CSS-only utility classes (no framework needed).
141
141
 
142
- ### MCP Tools
143
- - `mcp__mozaic__list_css_utilities`
144
- - `mcp__mozaic__get_css_utility`
145
- - `mcp__mozaic__search_documentation`
142
+ ### Shell Scripts
143
+ - `list-utilities.sh` - Browse CSS utilities by category
144
+ - `get-utility.sh` - Get utility classes, examples, documentation
146
145
 
147
146
  ### Key Features
148
147
  - Flexy grid system (flexbox-based)
@@ -183,8 +182,9 @@ Skill: Returns Flexy grid HTML with responsive breakpoints
183
182
  Icon search and integration for Vue & React applications.
184
183
 
185
184
  ### MCP Tools
186
- - `mcp__mozaic__search_icons`
187
- - `mcp__mozaic__get_icon`
185
+ ### Shell Scripts
186
+ - `search-icons.sh` - Search icons by name, type, or size
187
+ - `get-icon.sh` - Get icon SVG and framework code (Vue/React)
188
188
 
189
189
  ### Key Features
190
190
  - Search icons by keyword
@@ -218,27 +218,29 @@ Skill: Shows cart icons → User selects size/framework → Generates code
218
218
 
219
219
  ---
220
220
 
221
- ## How Skills Use MCP Tools
221
+ ## How Skills Work
222
+
223
+ ### Architecture
222
224
 
223
- ### Best Practice Pattern
225
+ Skills are **self-contained** and use bash scripts to query the local database:
224
226
 
225
- Skills **do not duplicate** database logic. Instead, they:
226
- 1. Use MCP tools via fully qualified names (e.g., `mcp__mozaic__list_components`)
227
- 2. Provide procedural workflows and guidance
228
- 3. Teach **how** to use the tools effectively
229
- 4. Offer interactive, guided experiences
227
+ 1. Each skill has a `skill.md` file (instructions) and `scripts/` folder (bash scripts)
228
+ 2. Scripts query `~/.claude/mozaic.db` (SQLite database)
229
+ 3. Scripts return JSON data for processing
230
+ 4. Skills provide guided workflows and interactive experiences
231
+ 5. No MCP server or external services needed
230
232
 
231
233
  ### Example: mozaic-vue-builder Workflow
232
234
 
233
235
  ```
234
236
  1. User: "I need a form"
235
- 2. Skill uses mcp__mozaic__list_components → Shows form components
237
+ 2. Skill runs `list-components.sh form` → Shows form components
236
238
  3. User selects components
237
- 4. Skill uses mcp__mozaic__get_component_info → Gets props/details
239
+ 4. Skill runs `get-component.sh TextInput` → Gets props/details
238
240
  5. Skill proposes 2-3 combinations
239
241
  6. User refines selection
240
- 7. Skill uses mcp__mozaic__generate_vue_component → Generates code
241
- 8. Skill uses mcp__mozaic__get_install_info → Installation commands
242
+ 7. Skill runs `generate-component.sh TextInput` → Generates Vue code
243
+ 8. Skill runs `get-install-info.sh TextInput` → Installation commands
242
244
  ```
243
245
 
244
246
  ---
@@ -270,10 +272,13 @@ Install the latest skills directly from npm:
270
272
 
271
273
  ```bash
272
274
  # Install skills
273
- npx mozaic-mcp-server install
275
+ npx mozaic-mcp-server install-skills
274
276
 
275
277
  # Uninstall skills
276
- npx mozaic-mcp-server uninstall
278
+ npx mozaic-mcp-server uninstall-skills
279
+
280
+ # View all commands
281
+ npx mozaic-mcp-server install
277
282
  ```
278
283
 
279
284
  This method:
@@ -306,8 +311,21 @@ cp -r skills/* ~/.claude/skills/
306
311
 
307
312
  ### MCP Server Configuration
308
313
 
309
- Ensure the Mozaic MCP server is configured in Claude Code settings:
314
+ **IMPORTANT**: Skills require the Mozaic MCP server to be running. Configure it in Claude Code settings:
315
+
316
+ **Option 1: Using npx (Recommended)**
317
+ ```json
318
+ {
319
+ "mcpServers": {
320
+ "mozaic": {
321
+ "command": "npx",
322
+ "args": ["mozaic-mcp-server"]
323
+ }
324
+ }
325
+ }
326
+ ```
310
327
 
328
+ **Option 2: Local development**
311
329
  ```json
312
330
  {
313
331
  "mcpServers": {
@@ -319,6 +337,8 @@ Ensure the Mozaic MCP server is configured in Claude Code settings:
319
337
  }
320
338
  ```
321
339
 
340
+ Without the MCP server configured, skills cannot access the Mozaic database (components, tokens, icons, etc.).
341
+
322
342
  ---
323
343
 
324
344
  ## Skill Activation
@@ -11,6 +11,8 @@ const __dirname = dirname(__filename);
11
11
 
12
12
  const SKILLS_DEST = join(homedir(), '.claude', 'skills');
13
13
  const SKILLS_SOURCE = join(__dirname, '..', 'skills');
14
+ const DB_SOURCE = join(__dirname, '..', 'data', 'mozaic.db');
15
+ const DB_DEST = join(homedir(), '.claude', 'mozaic.db');
14
16
 
15
17
  const SKILLS = [
16
18
  'mozaic-vue-builder',
@@ -74,16 +76,43 @@ async function installSkills() {
74
76
  process.exit(1);
75
77
  }
76
78
 
79
+ // Check if database source exists
80
+ if (!existsSync(DB_SOURCE)) {
81
+ log('❌ Error: Database not found', 'red');
82
+ log(` Expected at: ${DB_SOURCE}`, 'red');
83
+ process.exit(1);
84
+ }
85
+
77
86
  log(`Installing skills from: ${SKILLS_SOURCE}`, 'blue');
78
87
  log(`Installing skills to: ${SKILLS_DEST}`, 'blue');
88
+ log(`Installing database to: ${DB_DEST}`, 'blue');
79
89
  console.log('');
80
90
 
81
91
  // Create destination directory if needed
92
+ const claudeDir = join(homedir(), '.claude');
93
+ if (!existsSync(claudeDir)) {
94
+ log('📁 Creating .claude directory...', 'yellow');
95
+ mkdirSync(claudeDir, { recursive: true });
96
+ }
97
+
82
98
  if (!existsSync(SKILLS_DEST)) {
83
99
  log('📁 Creating skills directory...', 'yellow');
84
100
  mkdirSync(SKILLS_DEST, { recursive: true });
85
101
  }
86
102
 
103
+ // Install database
104
+ try {
105
+ if (existsSync(DB_DEST)) {
106
+ log('🔄 Updating database...', 'yellow');
107
+ } else {
108
+ log('💾 Installing database...', 'green');
109
+ }
110
+ cpSync(DB_SOURCE, DB_DEST);
111
+ } catch (error) {
112
+ log(`❌ Failed to install database: ${error.message}`, 'red');
113
+ process.exit(1);
114
+ }
115
+
87
116
  let installed = 0;
88
117
 
89
118
  // Install each skill
@@ -114,6 +143,12 @@ async function installSkills() {
114
143
  }
115
144
 
116
145
  printFooter(installed);
146
+
147
+ console.log('');
148
+ log('📊 Database Info:', 'bright');
149
+ log(` Location: ${DB_DEST}`, 'cyan');
150
+ log(' Contains: Components, Icons, Design Tokens, CSS Utilities', 'cyan');
151
+ console.log('');
117
152
  }
118
153
 
119
154
  // Handle command line arguments
@@ -152,12 +187,23 @@ if (command === 'uninstall') {
152
187
  }
153
188
  }
154
189
 
190
+ // Remove database
191
+ if (existsSync(DB_DEST)) {
192
+ try {
193
+ log('🗑️ Removing database...', 'yellow');
194
+ rmSync(DB_DEST, { force: true });
195
+ } catch (error) {
196
+ log(`❌ Failed to remove database: ${error.message}`, 'red');
197
+ }
198
+ }
199
+
155
200
  console.log('');
156
201
  log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━', 'cyan');
157
202
  log(' Uninstallation Complete!', 'bright');
158
203
  log('━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━', 'cyan');
159
204
  console.log('');
160
205
  log(`✅ Removed ${removed} skills successfully`, 'green');
206
+ log('✅ Removed database', 'green');
161
207
  console.log('');
162
208
  } else {
163
209
  // Default: install
package/data/mozaic.db CHANGED
Binary file
package/dist/index.js CHANGED
@@ -1,4 +1,153 @@
1
1
  #!/usr/bin/env node
2
+ // Handle CLI commands before importing MCP server
3
+ const args = process.argv.slice(2);
4
+ const command = args[0];
5
+ if (command === "install" && args.length === 1) {
6
+ // Show help menu
7
+ showHelpMenu();
8
+ process.exit(0);
9
+ }
10
+ if (command === "install-skills" || command === "uninstall-skills") {
11
+ // Delegate to skills installer
12
+ const { execSync } = await import("child_process");
13
+ const { fileURLToPath } = await import("url");
14
+ const { dirname, join } = await import("path");
15
+ const __filename = fileURLToPath(import.meta.url);
16
+ const __dirname = dirname(__filename);
17
+ const installerPath = join(__dirname, "..", "bin", "install-skills.js");
18
+ try {
19
+ execSync(`node "${installerPath}" ${command}`, {
20
+ stdio: "inherit",
21
+ cwd: process.cwd(),
22
+ });
23
+ process.exit(0);
24
+ }
25
+ catch {
26
+ process.exit(1);
27
+ }
28
+ }
29
+ if (command === "install-mcp") {
30
+ await installMcpConfig();
31
+ process.exit(0);
32
+ }
33
+ if (command === "uninstall-mcp") {
34
+ await uninstallMcpConfig();
35
+ process.exit(0);
36
+ }
37
+ function showHelpMenu() {
38
+ console.log(`
39
+ ╭─────────────────────────────────────────────────────────────────╮
40
+ │ │
41
+ │ Mozaic Design System MCP Server & Skills │
42
+ │ Self-contained Claude Code skills for Mozaic Design System │
43
+ │ │
44
+ ╰─────────────────────────────────────────────────────────────────╯
45
+
46
+ Usage:
47
+ npx mozaic-mcp-server [command]
48
+
49
+ Commands:
50
+ (no args) Start MCP server for use in Claude Desktop
51
+ install Show this help menu
52
+ install-skills Install Claude Code skills and database
53
+ uninstall-skills Remove Claude Code skills and database
54
+ install-mcp Add MCP server to Claude Desktop config
55
+ uninstall-mcp Remove MCP server from Claude Desktop config
56
+
57
+ Examples:
58
+ # Install skills (recommended for most users)
59
+ npx mozaic-mcp-server install-skills
60
+
61
+ # Install MCP server for Claude Desktop
62
+ npx mozaic-mcp-server install-mcp
63
+
64
+ # Start MCP server manually (for testing)
65
+ npx mozaic-mcp-server
66
+
67
+ Documentation:
68
+ Skills Guide: https://github.com/MerzoukeMansouri/adeo-mozaic-mcp#skills
69
+ MCP Guide: https://github.com/MerzoukeMansouri/adeo-mozaic-mcp#mcp-server
70
+ `);
71
+ }
72
+ async function installMcpConfig() {
73
+ const { homedir } = await import("os");
74
+ const { readFileSync, writeFileSync, existsSync, mkdirSync } = await import("fs");
75
+ const { join } = await import("path");
76
+ const { fileURLToPath } = await import("url");
77
+ const { dirname } = await import("path");
78
+ const configPath = join(homedir(), ".claude", "config.json");
79
+ const __filename = fileURLToPath(import.meta.url);
80
+ const __dirname = dirname(__filename);
81
+ const serverPath = join(__dirname, "index.js");
82
+ console.log("📦 Installing MCP server to Claude Desktop config...\n");
83
+ // Ensure .claude directory exists
84
+ const claudeDir = join(homedir(), ".claude");
85
+ if (!existsSync(claudeDir)) {
86
+ mkdirSync(claudeDir, { recursive: true });
87
+ }
88
+ // Read existing config or create new one
89
+ let config = { mcpServers: {} };
90
+ if (existsSync(configPath)) {
91
+ try {
92
+ const configContent = readFileSync(configPath, "utf-8");
93
+ config = JSON.parse(configContent);
94
+ if (!config.mcpServers) {
95
+ config.mcpServers = {};
96
+ }
97
+ }
98
+ catch {
99
+ console.error("⚠️ Failed to parse existing config, creating new one");
100
+ config = { mcpServers: {} };
101
+ }
102
+ }
103
+ // Add Mozaic MCP server configuration
104
+ config.mcpServers.mozaic = {
105
+ command: "node",
106
+ args: [serverPath],
107
+ };
108
+ // Write updated config
109
+ try {
110
+ writeFileSync(configPath, JSON.stringify(config, null, 2) + "\n");
111
+ console.log("✅ MCP server installed successfully!\n");
112
+ console.log("Configuration added to:", configPath);
113
+ console.log("\n📝 Next steps:");
114
+ console.log(" 1. Restart Claude Desktop");
115
+ console.log(" 2. Look for the 🔌 icon to verify MCP server is connected");
116
+ console.log(" 3. Use Mozaic tools in your conversations\n");
117
+ }
118
+ catch (error) {
119
+ console.error("❌ Failed to write config:", error);
120
+ process.exit(1);
121
+ }
122
+ }
123
+ async function uninstallMcpConfig() {
124
+ const { homedir } = await import("os");
125
+ const { readFileSync, writeFileSync, existsSync } = await import("fs");
126
+ const { join } = await import("path");
127
+ const configPath = join(homedir(), ".claude", "config.json");
128
+ console.log("🗑️ Removing MCP server from Claude Desktop config...\n");
129
+ if (!existsSync(configPath)) {
130
+ console.log("⚠️ No Claude Desktop config found");
131
+ return;
132
+ }
133
+ try {
134
+ const configContent = readFileSync(configPath, "utf-8");
135
+ const config = JSON.parse(configContent);
136
+ if (config.mcpServers && config.mcpServers.mozaic) {
137
+ delete config.mcpServers.mozaic;
138
+ writeFileSync(configPath, JSON.stringify(config, null, 2) + "\n");
139
+ console.log("✅ MCP server removed successfully!\n");
140
+ console.log(" Restart Claude Desktop for changes to take effect\n");
141
+ }
142
+ else {
143
+ console.log("ℹ️ Mozaic MCP server not found in config\n");
144
+ }
145
+ }
146
+ catch (error) {
147
+ console.error("❌ Failed to update config:", error);
148
+ process.exit(1);
149
+ }
150
+ }
2
151
  import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js";
3
152
  import { StdioServerTransport } from "@modelcontextprotocol/sdk/server/stdio.js";
4
153
  import Database from "better-sqlite3";
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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"}
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "mozaic-mcp-server",
3
- "version": "1.0.2",
4
- "description": "MCP server for Mozaic Design System by ADEO",
3
+ "version": "1.1.0",
4
+ "description": "Self-contained Claude Code skills for Mozaic Design System by ADEO",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
7
7
  "bin": {
@@ -67,15 +67,23 @@
67
67
  },
68
68
  "devDependencies": {
69
69
  "@eslint/js": "^9.17.0",
70
+ "@semantic-release/changelog": "^6.0.3",
71
+ "@semantic-release/commit-analyzer": "^11.1.0",
72
+ "@semantic-release/git": "^10.0.1",
73
+ "@semantic-release/github": "^9.2.6",
74
+ "@semantic-release/npm": "^11.0.2",
75
+ "@semantic-release/release-notes-generator": "^12.1.0",
70
76
  "@types/better-sqlite3": "^7.6.0",
71
77
  "@types/node": "^20.0.0",
72
78
  "@vitest/coverage-v8": "^4.0.15",
79
+ "conventional-changelog-conventionalcommits": "^7.0.2",
73
80
  "eslint": "^9.17.0",
74
81
  "eslint-config-prettier": "^10.0.1",
75
82
  "husky": "^9.1.7",
76
83
  "lint-staged": "^15.3.0",
77
84
  "prettier": "^3.4.2",
78
85
  "puppeteer": "^24.33.0",
86
+ "semantic-release": "^23.0.0",
79
87
  "tsx": "^4.0.0",
80
88
  "typescript": "^5.0.0",
81
89
  "typescript-eslint": "^8.18.1",
@@ -0,0 +1,77 @@
1
+ #!/bin/bash
2
+ # Get CSS utility details including classes and examples
3
+ # Usage: ./get-utility.sh <utility-name> [include-classes]
4
+
5
+ UTILITY_NAME="$1"
6
+ INCLUDE_CLASSES="${2:-true}"
7
+ DB_PATH="${HOME}/.claude/mozaic.db"
8
+
9
+ if [ -z "$UTILITY_NAME" ]; then
10
+ echo "Error: Utility name required"
11
+ echo "Usage: $0 <utility-name> [true|false]"
12
+ echo "Utilities: flexy, container, margin, padding, ratio, scroll"
13
+ exit 1
14
+ fi
15
+
16
+ if [ ! -f "$DB_PATH" ]; then
17
+ echo "Error: Database not found at $DB_PATH"
18
+ echo "Please run: npx mozaic-mcp-server install"
19
+ exit 1
20
+ fi
21
+
22
+ # Get utility basic info
23
+ UTILITY_INFO=$(sqlite3 "$DB_PATH" <<EOF
24
+ .mode json
25
+ SELECT * FROM css_utilities
26
+ WHERE LOWER(name) = LOWER('$UTILITY_NAME')
27
+ LIMIT 1;
28
+ EOF
29
+ )
30
+
31
+ if [ "$UTILITY_INFO" = "[]" ]; then
32
+ echo "Error: Utility '$UTILITY_NAME' not found"
33
+ exit 1
34
+ fi
35
+
36
+ # Get CSS classes if requested
37
+ if [ "$INCLUDE_CLASSES" = "true" ]; then
38
+ CSS_CLASSES=$(sqlite3 "$DB_PATH" <<EOF
39
+ .mode json
40
+ SELECT
41
+ class_name
42
+ FROM css_utility_classes
43
+ WHERE utility_id = (
44
+ SELECT id FROM css_utilities
45
+ WHERE LOWER(name) = LOWER('$UTILITY_NAME')
46
+ )
47
+ ORDER BY class_name;
48
+ EOF
49
+ )
50
+ else
51
+ CSS_CLASSES="[]"
52
+ fi
53
+
54
+ # Get examples
55
+ EXAMPLES=$(sqlite3 "$DB_PATH" <<EOF
56
+ .mode json
57
+ SELECT
58
+ title,
59
+ code,
60
+ description
61
+ FROM css_utility_examples
62
+ WHERE utility_id = (
63
+ SELECT id FROM css_utilities
64
+ WHERE LOWER(name) = LOWER('$UTILITY_NAME')
65
+ )
66
+ ORDER BY id;
67
+ EOF
68
+ )
69
+
70
+ # Combine all information
71
+ cat <<EOF
72
+ {
73
+ "utility": $UTILITY_INFO,
74
+ "classes": $CSS_CLASSES,
75
+ "examples": $EXAMPLES
76
+ }
77
+ EOF
@@ -0,0 +1,37 @@
1
+ #!/bin/bash
2
+ # List CSS utilities by category
3
+ # Usage: ./list-utilities.sh [category]
4
+ # Categories: layout, utility, all (default)
5
+
6
+ CATEGORY="${1:-all}"
7
+ DB_PATH="${HOME}/.claude/mozaic.db"
8
+
9
+ if [ ! -f "$DB_PATH" ]; then
10
+ echo "Error: Database not found at $DB_PATH"
11
+ echo "Please run: npx mozaic-mcp-server install"
12
+ exit 1
13
+ fi
14
+
15
+ # Query utilities by category
16
+ if [ "$CATEGORY" = "all" ]; then
17
+ sqlite3 "$DB_PATH" <<EOF
18
+ .mode json
19
+ SELECT
20
+ name,
21
+ category,
22
+ description
23
+ FROM css_utilities
24
+ ORDER BY category, name;
25
+ EOF
26
+ else
27
+ sqlite3 "$DB_PATH" <<EOF
28
+ .mode json
29
+ SELECT
30
+ name,
31
+ category,
32
+ description
33
+ FROM css_utilities
34
+ WHERE category = '$CATEGORY'
35
+ ORDER BY name;
36
+ EOF
37
+ fi