@forgespace/branding-mcp 0.6.2 → 0.7.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.
Files changed (79) hide show
  1. package/README.md +41 -5
  2. package/dist/index.js +1 -1
  3. package/package.json +27 -9
  4. package/server.json +29 -0
  5. package/.env.example +0 -3
  6. package/.github/PULL_REQUEST_TEMPLATE.md +0 -22
  7. package/.github/workflows/ci.yml +0 -73
  8. package/.github/workflows/release-automation.yml +0 -56
  9. package/.github/workflows/security-scan.yml +0 -37
  10. package/.gitleaks.toml +0 -14
  11. package/.prettierrc.json +0 -10
  12. package/CHANGELOG.md +0 -92
  13. package/CONTRIBUTING.md +0 -203
  14. package/data/README.md +0 -13
  15. package/docs/API.md +0 -110
  16. package/docs/DATA_SOURCES.md +0 -69
  17. package/docs/INTEGRATION.md +0 -58
  18. package/eslint.config.js +0 -52
  19. package/jest.config.js +0 -40
  20. package/src/__tests__/integration/brand-generation.test.ts +0 -84
  21. package/src/__tests__/integration/mcp-server.test.ts +0 -18
  22. package/src/__tests__/unit/ai-interpreter.test.ts +0 -172
  23. package/src/__tests__/unit/border-system.test.ts +0 -77
  24. package/src/__tests__/unit/color-palette.test.ts +0 -161
  25. package/src/__tests__/unit/contrast-checker.test.ts +0 -124
  26. package/src/__tests__/unit/design-system-tool.test.ts +0 -176
  27. package/src/__tests__/unit/design-tokens.test.ts +0 -184
  28. package/src/__tests__/unit/favicon-generator.test.ts +0 -80
  29. package/src/__tests__/unit/gradient-system.test.ts +0 -122
  30. package/src/__tests__/unit/logo-generator.test.ts +0 -146
  31. package/src/__tests__/unit/motion-system.test.ts +0 -91
  32. package/src/__tests__/unit/og-image-generator.test.ts +0 -115
  33. package/src/__tests__/unit/shadow-system.test.ts +0 -63
  34. package/src/__tests__/unit/spacing-scale.test.ts +0 -60
  35. package/src/__tests__/unit/typography-system.test.ts +0 -71
  36. package/src/index.ts +0 -76
  37. package/src/lib/branding-core/ai/brand-interpreter.ts +0 -30
  38. package/src/lib/branding-core/ai/claude-interpreter.ts +0 -76
  39. package/src/lib/branding-core/ai/intent-applier.ts +0 -59
  40. package/src/lib/branding-core/ai/keyword-interpreter.ts +0 -95
  41. package/src/lib/branding-core/ai/prompts.ts +0 -93
  42. package/src/lib/branding-core/ai/types.ts +0 -36
  43. package/src/lib/branding-core/documents/html-generator.ts +0 -32
  44. package/src/lib/branding-core/documents/pdf-generator.ts +0 -21
  45. package/src/lib/branding-core/exporters/css-variables.ts +0 -71
  46. package/src/lib/branding-core/exporters/design-tokens.ts +0 -86
  47. package/src/lib/branding-core/exporters/figma-tokens.ts +0 -87
  48. package/src/lib/branding-core/exporters/react-theme.ts +0 -69
  49. package/src/lib/branding-core/exporters/sass-variables.ts +0 -74
  50. package/src/lib/branding-core/exporters/tailwind-preset.ts +0 -67
  51. package/src/lib/branding-core/generators/border-system.ts +0 -41
  52. package/src/lib/branding-core/generators/color-palette.ts +0 -147
  53. package/src/lib/branding-core/generators/favicon-generator.ts +0 -33
  54. package/src/lib/branding-core/generators/gradient-system.ts +0 -120
  55. package/src/lib/branding-core/generators/logo-generator.ts +0 -152
  56. package/src/lib/branding-core/generators/motion-system.ts +0 -98
  57. package/src/lib/branding-core/generators/og-image-generator.ts +0 -97
  58. package/src/lib/branding-core/generators/shadow-system.ts +0 -66
  59. package/src/lib/branding-core/generators/spacing-scale.ts +0 -29
  60. package/src/lib/branding-core/generators/typography-system.ts +0 -128
  61. package/src/lib/branding-core/index.ts +0 -28
  62. package/src/lib/branding-core/validators/brand-consistency.ts +0 -79
  63. package/src/lib/branding-core/validators/contrast-checker.ts +0 -37
  64. package/src/lib/branding-core/validators/token-schema.ts +0 -50
  65. package/src/lib/config.ts +0 -13
  66. package/src/lib/logger.ts +0 -12
  67. package/src/lib/types.ts +0 -236
  68. package/src/resources/brand-knowledge.ts +0 -60
  69. package/src/resources/brand-templates.ts +0 -385
  70. package/src/tools/create-brand-guidelines.ts +0 -94
  71. package/src/tools/export-design-tokens.ts +0 -52
  72. package/src/tools/generate-brand-assets.ts +0 -48
  73. package/src/tools/generate-brand-identity.ts +0 -115
  74. package/src/tools/generate-color-palette.ts +0 -43
  75. package/src/tools/generate-design-system.ts +0 -163
  76. package/src/tools/generate-typography-system.ts +0 -42
  77. package/src/tools/refine-brand-element.ts +0 -65
  78. package/src/tools/validate-brand-consistency.ts +0 -32
  79. package/tsconfig.json +0 -21
package/README.md CHANGED
@@ -7,6 +7,7 @@
7
7
  </div>
8
8
 
9
9
  [![CI](https://github.com/Forge-Space/branding-mcp/actions/workflows/ci.yml/badge.svg)](https://github.com/Forge-Space/branding-mcp/actions/workflows/ci.yml)
10
+ [![npm version](https://img.shields.io/npm/v/@forgespace/branding-mcp)](https://www.npmjs.com/package/@forgespace/branding-mcp)
10
11
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
11
12
 
12
13
  Generate complete design systems — colors, typography, spacing, shadows, borders, motion tokens, gradients, multi-variant logos, favicons, and OG images with multi-format export. 9 MCP tools, zero API dependencies, algorithmic-first generation.
@@ -34,19 +35,35 @@ npm install
34
35
  npm run build
35
36
  ```
36
37
 
37
- ### As MCP Server (stdio)
38
+ ### Run from npm (stdio)
39
+
40
+ ```bash
41
+ npx -y @forgespace/branding-mcp@latest
42
+ ```
43
+
44
+ ### Install globally
45
+
46
+ ```bash
47
+ npm install -g @forgespace/branding-mcp
48
+ forgespace-branding-mcp
49
+ ```
50
+
51
+ ### IDE / client config
38
52
 
39
53
  ```json
40
54
  {
41
55
  "mcpServers": {
42
- "branding": {
43
- "command": "node",
44
- "args": ["path/to/branding-mcp/dist/index.js"]
56
+ "forgespace-branding": {
57
+ "command": "npx",
58
+ "args": ["-y", "@forgespace/branding-mcp@latest"]
45
59
  }
46
60
  }
47
61
  }
48
62
  ```
49
63
 
64
+ Set `ANTHROPIC_API_KEY` when you want AI-assisted refinement. The server also
65
+ works in algorithmic-only mode without external APIs.
66
+
50
67
  ### MCP Tools
51
68
 
52
69
  | Tool | Description |
@@ -78,6 +95,19 @@ npm run test:coverage # Coverage report
78
95
  npm run build # Build TypeScript
79
96
  ```
80
97
 
98
+ ## Distribution
99
+
100
+ - **npm** — installable as
101
+ [`@forgespace/branding-mcp`](https://www.npmjs.com/package/@forgespace/branding-mcp)
102
+ - **MCP Registry metadata** — `server.json` and `mcpName` are included for
103
+ registry submission
104
+ - **Tag release automation** — pushing `v*` runs npm publish with provenance,
105
+ then publishes the same version to the MCP Registry via GitHub OIDC
106
+ - **Weekly registry ops** — `.github/workflows/mcp-registry-status.yml` refreshes
107
+ one issue with npm and MCP Registry drift, visibility, and next actions
108
+ - **GitHub** —
109
+ [Forge-Space/branding-mcp](https://github.com/Forge-Space/branding-mcp)
110
+
81
111
  ## Architecture
82
112
 
83
113
  ```
@@ -101,10 +131,16 @@ src/
101
131
  Part of the [Forge Space](https://github.com/Forge-Space) ecosystem:
102
132
 
103
133
  - **mcp-gateway** — Register as MCP server (port 8033)
104
- - **uiforge-mcp** — Consumes brand tokens via `brandId` parameter
134
+ - **ui-mcp** — Consumes brand tokens via `brandId` parameter
105
135
  - **uiforge-webapp** — Brand management UI at `/branding/*`
106
136
  - **forge-patterns** — Shared configs and conventions
107
137
 
138
+ ## Community
139
+
140
+ - [Documentation](https://docs.forgespace.co/docs)
141
+ - [GitHub Discussions](https://github.com/orgs/Forge-Space/discussions)
142
+ - [Issue tracker](https://github.com/Forge-Space/branding-mcp/issues)
143
+
108
144
  ## License
109
145
 
110
146
  MIT
package/dist/index.js CHANGED
@@ -19,7 +19,7 @@ async function main() {
19
19
  logger.info({ env: config.nodeEnv }, 'Starting branding-mcp server');
20
20
  const server = new McpServer({
21
21
  name: '@forgespace/branding-mcp',
22
- version: '0.1.0',
22
+ version: '0.7.1',
23
23
  });
24
24
  registerGenerateBrandIdentity(server);
25
25
  registerGenerateColorPalette(server);
package/package.json CHANGED
@@ -1,6 +1,7 @@
1
1
  {
2
2
  "name": "@forgespace/branding-mcp",
3
- "version": "0.6.2",
3
+ "version": "0.7.1",
4
+ "mcpName": "io.github.forge-space/branding-mcp",
4
5
  "description": "MCP server for AI-powered brand identity generation — color palettes, typography systems, design tokens, and brand guidelines with multi-format export",
5
6
  "type": "module",
6
7
  "main": "dist/index.js",
@@ -24,18 +25,36 @@
24
25
  "test:coverage": "NODE_OPTIONS=--experimental-vm-modules jest --coverage",
25
26
  "test:watch": "NODE_OPTIONS=--experimental-vm-modules jest --watch",
26
27
  "typecheck": "tsc --noEmit",
28
+ "check:cycles": "madge --circular --extensions ts src/",
29
+ "knip": "knip",
30
+ "registry:check": "node scripts/registry-check.mjs",
27
31
  "pre-commit": "npm run lint && npm run format && npm run test",
28
- "prepare": "husky"
32
+ "prepare": "husky",
33
+ "prepublishOnly": "npm run build",
34
+ "prepack": "npm run build"
35
+ },
36
+ "files": [
37
+ "dist",
38
+ "README.md",
39
+ "LICENSE",
40
+ "server.json"
41
+ ],
42
+ "publishConfig": {
43
+ "access": "public",
44
+ "registry": "https://registry.npmjs.org/"
29
45
  },
30
46
  "keywords": [
31
47
  "mcp",
48
+ "mcp-server",
32
49
  "branding",
33
50
  "design-tokens",
34
51
  "color-palette",
35
52
  "typography",
36
53
  "brand-identity",
54
+ "agent-tools",
37
55
  "ai",
38
- "forge-space"
56
+ "forge-space",
57
+ "internal-developer-platform"
39
58
  ],
40
59
  "author": "Forge Space",
41
60
  "license": "MIT",
@@ -49,22 +68,21 @@
49
68
  "homepage": "https://github.com/Forge-Space/branding-mcp#readme",
50
69
  "dependencies": {
51
70
  "@modelcontextprotocol/sdk": "^1.26.0",
52
- "culori": "^4.0.1",
53
- "pdfkit": "^0.16.0",
54
71
  "pino": "^10.3.1",
55
- "satori": "^0.12.1",
56
- "sharp": "^0.34.5",
57
72
  "zod": "^3.24.0"
58
73
  },
59
74
  "devDependencies": {
75
+ "@commitlint/cli": "^20.4.3",
76
+ "@commitlint/config-conventional": "^20.4.3",
60
77
  "@types/node": "^22.15.0",
61
- "@types/pdfkit": "^0.13.8",
62
78
  "@typescript-eslint/eslint-plugin": "^8.32.0",
63
79
  "@typescript-eslint/parser": "^8.32.0",
64
80
  "eslint": "^9.0.0",
65
81
  "husky": "^9.0.0",
66
82
  "jest": "^29.7.0",
67
- "lint-staged": "^15.0.0",
83
+ "knip": "^5.86.0",
84
+ "lint-staged": "^16.3.2",
85
+ "madge": "^8.0.0",
68
86
  "prettier": "^3.0.0",
69
87
  "ts-jest": "^29.4.6",
70
88
  "typescript": "^5.1.6"
package/server.json ADDED
@@ -0,0 +1,29 @@
1
+ {
2
+ "$schema": "https://static.modelcontextprotocol.io/schemas/2025-12-11/server.schema.json",
3
+ "name": "io.github.forge-space/branding-mcp",
4
+ "description": "AI-powered brand identity generation via MCP with design tokens, typography, logo assets, and brand guidelines export.",
5
+ "version": "0.7.1",
6
+ "registryType": "npm",
7
+ "repository": {
8
+ "url": "https://github.com/Forge-Space/branding-mcp",
9
+ "source": "github"
10
+ },
11
+ "packages": [
12
+ {
13
+ "registryType": "npm",
14
+ "identifier": "@forgespace/branding-mcp",
15
+ "version": "0.7.1",
16
+ "transport": {
17
+ "type": "stdio"
18
+ }
19
+ }
20
+ ],
21
+ "environmentVariables": [
22
+ {
23
+ "name": "ANTHROPIC_API_KEY",
24
+ "description": "Optional. Enables natural-language brand refinement with Anthropic when the AI strategy is selected.",
25
+ "isRequired": false,
26
+ "isSecret": true
27
+ }
28
+ ]
29
+ }
package/.env.example DELETED
@@ -1,3 +0,0 @@
1
- ANTHROPIC_API_KEY=REPLACE_WITH_YOUR_ANTHROPIC_API_KEY
2
- LOG_LEVEL=info
3
- NODE_ENV=development
@@ -1,22 +0,0 @@
1
- ## Summary
2
-
3
- <!-- Brief description of what this PR does -->
4
-
5
- ## Changes
6
-
7
- <!-- Bullet list of changes -->
8
-
9
- ## Type
10
-
11
- - [ ] feat: New feature
12
- - [ ] fix: Bug fix
13
- - [ ] refactor: Code refactoring
14
- - [ ] chore: Maintenance
15
- - [ ] docs: Documentation
16
-
17
- ## Checklist
18
-
19
- - [ ] `npm run validate` passes
20
- - [ ] Tests cover new functionality
21
- - [ ] CHANGELOG.md updated
22
- - [ ] No secrets or credentials committed
@@ -1,73 +0,0 @@
1
- name: CI
2
-
3
- on:
4
- push:
5
- branches: [main]
6
- pull_request:
7
- branches: [main]
8
-
9
- concurrency:
10
- group: ${{ github.workflow }}-${{ github.ref }}
11
- cancel-in-progress: true
12
-
13
- jobs:
14
- lint:
15
- name: Lint & Format
16
- runs-on: ubuntu-latest
17
- steps:
18
- - uses: actions/checkout@v4
19
- - uses: actions/setup-node@v4
20
- with:
21
- node-version: 22
22
- cache: npm
23
- - run: npm ci
24
- - run: npm run lint:check
25
- - run: npm run format:check
26
-
27
- typecheck:
28
- name: Type Check
29
- runs-on: ubuntu-latest
30
- steps:
31
- - uses: actions/checkout@v4
32
- - uses: actions/setup-node@v4
33
- with:
34
- node-version: 22
35
- cache: npm
36
- - run: npm ci
37
- - run: npm run typecheck
38
-
39
- test:
40
- name: Test (Node ${{ matrix.node-version }})
41
- runs-on: ubuntu-latest
42
- strategy:
43
- matrix:
44
- node-version: [22, 24]
45
- steps:
46
- - uses: actions/checkout@v4
47
- - uses: actions/setup-node@v4
48
- with:
49
- node-version: ${{ matrix.node-version }}
50
- cache: npm
51
- - run: npm ci
52
- - run: npm run test:coverage
53
- - name: Upload coverage
54
- if: matrix.node-version == 22
55
- uses: codecov/codecov-action@v5
56
- with:
57
- file: ./coverage/lcov.info
58
- fail_ci_if_error: false
59
-
60
- build:
61
- name: Build
62
- runs-on: ubuntu-latest
63
- needs: [lint, typecheck, test]
64
- steps:
65
- - uses: actions/checkout@v4
66
- - uses: actions/setup-node@v4
67
- with:
68
- node-version: 22
69
- cache: npm
70
- - run: npm ci
71
- - run: npm run build
72
- - name: Verify dist output
73
- run: test -f dist/index.js
@@ -1,56 +0,0 @@
1
- name: Release
2
-
3
- on:
4
- push:
5
- tags:
6
- - 'v*'
7
-
8
- concurrency:
9
- group: release
10
- cancel-in-progress: false
11
-
12
- jobs:
13
- validate:
14
- name: Validate
15
- runs-on: ubuntu-latest
16
- steps:
17
- - uses: actions/checkout@v4
18
- - uses: actions/setup-node@v4
19
- with:
20
- node-version: 22
21
- cache: npm
22
- - run: npm ci
23
- - run: npm run build
24
- - run: npm run test
25
-
26
- release:
27
- name: Create Release
28
- needs: [validate]
29
- runs-on: ubuntu-latest
30
- permissions:
31
- contents: write
32
- steps:
33
- - uses: actions/checkout@v4
34
- - name: Create GitHub Release
35
- uses: softprops/action-gh-release@v2
36
- with:
37
- generate_release_notes: true
38
-
39
- publish:
40
- name: Publish to npm
41
- needs: [validate]
42
- runs-on: ubuntu-latest
43
- permissions:
44
- contents: read
45
- steps:
46
- - uses: actions/checkout@v4
47
- - uses: actions/setup-node@v4
48
- with:
49
- node-version: 22
50
- cache: npm
51
- registry-url: https://registry.npmjs.org
52
- - run: npm ci
53
- - run: npm run build
54
- - run: npm publish --access public
55
- env:
56
- NODE_AUTH_TOKEN: ${{ secrets.NPM_TOKEN }}
@@ -1,37 +0,0 @@
1
- name: Security Scan
2
-
3
- on:
4
- push:
5
- branches: [main]
6
- pull_request:
7
- branches: [main]
8
- schedule:
9
- - cron: '0 6 * * 1'
10
-
11
- jobs:
12
- audit:
13
- name: Dependency Audit
14
- runs-on: ubuntu-latest
15
- steps:
16
- - uses: actions/checkout@v4
17
- - uses: actions/setup-node@v4
18
- with:
19
- node-version: 22
20
- cache: npm
21
- - run: npm ci
22
- - name: Audit production dependencies
23
- run: npm audit --omit=dev --audit-level=high
24
- - name: Audit dev dependencies (advisory only)
25
- run: npm audit --audit-level=high || echo "::warning::Dev dependencies have vulnerabilities. Review manually."
26
- continue-on-error: true
27
-
28
- secret-scanning:
29
- name: Secret Scanning
30
- runs-on: ubuntu-latest
31
- steps:
32
- - uses: actions/checkout@v4
33
- with:
34
- fetch-depth: 0
35
- - uses: trufflesecurity/trufflehog@v3.93.4
36
- with:
37
- extra_args: --only-verified
package/.gitleaks.toml DELETED
@@ -1,14 +0,0 @@
1
- title = "Branding MCP Gitleaks Config"
2
-
3
- [allowlist]
4
- description = "Allowlist for placeholder values"
5
- regexTarget = "match"
6
- regexes = [
7
- '''REPLACE_WITH_.*''',
8
- '''your-.*-here''',
9
- '''example\.com''',
10
- ]
11
- paths = [
12
- '''.env\.example''',
13
- '''data/.*''',
14
- ]
package/.prettierrc.json DELETED
@@ -1,10 +0,0 @@
1
- {
2
- "semi": true,
3
- "trailingComma": "es5",
4
- "singleQuote": true,
5
- "printWidth": 100,
6
- "tabWidth": 2,
7
- "arrowParens": "always",
8
- "endOfLine": "lf",
9
- "jsxSingleQuote": true
10
- }
package/CHANGELOG.md DELETED
@@ -1,92 +0,0 @@
1
- # Changelog
2
-
3
- All notable changes to this project will be documented in this file.
4
-
5
- ## [0.6.2] - 2026-03-07
6
-
7
- ### Fixed
8
-
9
- - **WCAG contrast compliance** — Secondary (#3B82F6→#2563EB) and accent (#F59E0B→#B45309) colors now pass AA 4.5:1 on white backgrounds. Brand consistency score 75→100
10
-
11
- ## [0.6.1] - 2026-03-06
12
-
13
- ### Changed
14
-
15
- - **Modern Horn brand templates** — Default Forge Space logo SVGs updated to Modern Horn icon geometry and Sora wordmark (#A78BFA/#8B5CF6/#6D28D9)
16
-
17
- ## [0.6.0] - 2026-03-01
18
-
19
- ### Added
20
-
21
- - Public type exports from package entry point: `BrandIdentity`, `ColorPalette`, `TypographySystem`, `SpacingScale`, `ShadowSystem`, `BorderSystem`, `MotionSystem`, `GradientSystem`, `LogoOutput`, `BrandStyle`, `ColorHarmony`, `ExportFormat`
22
- - Enables downstream packages (`@forgespace/brand-guide`) to re-export types without reaching into internal paths
23
-
24
- ## [0.5.0] - 2026-02-28
25
-
26
- ### Added
27
-
28
- - New MCP tool: `generate_design_system` — complete design system in one call (identity + token export combined)
29
- - 10 new tests for design system tool (198 total across 16 suites)
30
-
31
- ## [0.4.0] - 2026-02-28
32
-
33
- ### Added
34
-
35
- - Gradient system generator with 5 style-aware presets (hero, button, card, text, background) across 8 brand styles
36
- - Multi-variant logo generator: wordmark, monogram, abstract, icon (4 SVG variants per brand)
37
- - Favicon generator producing 4 sizes (16, 32, 180, 512) with stroke optimization for small sizes
38
- - OG image templates: default (1200x630), article (1200x630), social (1200x1200) with brand gradient backgrounds
39
- - New MCP tool: `generate_brand_assets` for favicon and OG image generation from existing brand identity
40
- - All 6 exporters support gradient tokens (CSS, Tailwind, W3C JSON, Figma, React, Sass)
41
- - 55 new tests (188 total), 15 test suites
42
-
43
- ### Changed
44
-
45
- - Logo generator uses brand typography font instead of hardcoded Inter
46
- - `LogoOutput` now includes `variants` record alongside backward-compatible `svg` field
47
- - `LogoConfig` accepts optional `style` for style-aware monogram/abstract shapes
48
-
49
- ## [0.3.0] - 2026-02-28
50
-
51
- ### Added
52
-
53
- - Shadow/elevation system generator with 6 levels (none, sm, md, lg, xl, 2xl), brand-tinted colors, light/dark theme support
54
- - Border/shape system generator with style-aware radius scales and border widths for all 8 brand styles
55
- - Motion/animation system generator with duration scales, cubic-bezier easings, and transition presets per brand style
56
- - New token types in `BrandIdentity`: `shadows`, `borders`, `motion` (backward-compatible, optional)
57
- - All 6 exporters updated: CSS variables, Tailwind preset, W3C JSON, Figma tokens, React theme, Sass variables now include shadow, border, and motion tokens
58
- - `generate_brand_identity` tool now includes shadows, borders, and motion in output
59
- - 36 new tests (133 total), 98.36% statement coverage, 100% function coverage
60
-
61
- ## [0.2.0] - 2026-02-24
62
-
63
- ### Added
64
-
65
- - AI interpretation layer for natural language brand refinement (`src/lib/branding-core/ai/`)
66
- - Strategy pattern: keyword (zero-cost), Claude API (Anthropic Messages), and auto (fallback) interpreters
67
- - `BrandIntent` abstraction decoupling NL understanding from generator execution
68
- - 20+ color keywords (warm, vibrant, premium, muted, dark, elegant, etc.) with HSL shift values
69
- - 15+ typography keywords (serif, editorial, dramatic, modern, compact, etc.) with font/scale mapping
70
- - `intent-applier` module applying HSL hue/saturation/lightness shifts before palette generation
71
- - Structured Claude prompts with brand context, JSON schema, and design principles
72
- - Optional `strategy` parameter on `refine_brand_element` tool (keyword/ai/auto)
73
- - `_interpretation` metadata in refinement responses showing strategy used and reasoning
74
- - 24 new tests for AI interpreter, intent applier, and strategy selection (97 total)
75
-
76
- ## [0.1.0] - 2026-02-24
77
-
78
- ### Added
79
-
80
- - Initial project structure with MCP server architecture
81
- - Color palette generator with 6 harmony modes (complementary, analogous, triadic, split-complementary, tetradic, monochromatic)
82
- - Typography system generator with modular type scales and curated font pairings
83
- - Spacing scale generator with geometric progression
84
- - SVG logo generator with brand colors and initials
85
- - 6 design token exporters: W3C JSON, CSS custom properties, Tailwind preset, Figma tokens, React theme, Sass variables
86
- - WCAG contrast checker (AA/AAA compliance)
87
- - Brand consistency validator with scoring
88
- - HTML brand guidelines generator
89
- - 7 MCP tools: generate_brand_identity, generate_color_palette, generate_typography_system, export_design_tokens, create_brand_guidelines, validate_brand_consistency, refine_brand_element
90
- - 2 MCP resources: brand templates catalog, brand knowledge base
91
- - Unit and integration test suite
92
- - CI/CD workflows (lint, test, build, security scan)