untitledui-mcp 0.1.4 → 0.1.5

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 (2) hide show
  1. package/README.md +113 -29
  2. package/package.json +7 -2
package/README.md CHANGED
@@ -10,9 +10,32 @@ AI tools can generate functional UI, but the result often lacks the polish and c
10
10
 
11
11
  Instead of generating a modal from patterns it's seen, your AI fetches the actual UntitledUI modal with all its carefully crafted details intact.
12
12
 
13
- ## Setup
13
+ ## Quick Start
14
14
 
15
- ### Add MCP to your tool
15
+ ### 1. Start with a UntitledUI Starter Kit
16
+
17
+ UntitledUI components require specific Tailwind configuration, design tokens, and providers. The easiest way to get started is with an official starter kit:
18
+
19
+ **Next.js:**
20
+ ```bash
21
+ git clone https://github.com/untitleduico/untitledui-nextjs-starter-kit my-app
22
+ cd my-app && npm install
23
+ ```
24
+
25
+ **Vite:**
26
+ ```bash
27
+ git clone https://github.com/untitleduico/untitledui-vite-starter-kit my-app
28
+ cd my-app && npm install
29
+ ```
30
+
31
+ These starter kits come pre-configured with:
32
+ - Tailwind CSS with all UntitledUI design tokens
33
+ - Theme provider for light/dark mode
34
+ - Toast notifications
35
+ - Routing setup
36
+ - All required dependencies
37
+
38
+ ### 2. Add the MCP Server
16
39
 
17
40
  **Claude Code:**
18
41
  ```bash
@@ -25,7 +48,7 @@ claude mcp add untitledui -- npx untitledui-mcp
25
48
  "mcpServers": {
26
49
  "untitledui": {
27
50
  "command": "npx",
28
- "args": ["untitledui-mcp"]
51
+ "args": ["-y", "untitledui-mcp"]
29
52
  }
30
53
  }
31
54
  }
@@ -33,7 +56,7 @@ claude mcp add untitledui -- npx untitledui-mcp
33
56
 
34
57
  This gives you access to **base components** (button, input, select, avatar, badge, etc.) without authentication.
35
58
 
36
- ### For Pro components (optional)
59
+ ### 3. Authenticate for Pro Components (optional)
37
60
 
38
61
  To access application components (modals, sidebars, tables, dashboards) and marketing sections, authenticate with your UntitledUI Pro license:
39
62
 
@@ -49,7 +72,7 @@ Alternatively, set the key manually in your MCP config:
49
72
  "mcpServers": {
50
73
  "untitledui": {
51
74
  "command": "npx",
52
- "args": ["untitledui-mcp"],
75
+ "args": ["-y", "untitledui-mcp"],
53
76
  "env": {
54
77
  "UNTITLEDUI_LICENSE_KEY": "<your-key>"
55
78
  }
@@ -58,13 +81,26 @@ Alternatively, set the key manually in your MCP config:
58
81
  }
59
82
  ```
60
83
 
61
- ### Verify setup
84
+ ### 4. Verify Setup
62
85
 
63
86
  ```bash
64
87
  npx untitledui-mcp --test
65
88
  ```
66
89
 
67
- ## How It Works
90
+ ## Recommended Workflow
91
+
92
+ 1. **Start with a starter kit** — Don't try to add UntitledUI components to an existing project without the proper Tailwind setup. The starter kits handle all configuration.
93
+
94
+ 2. **Ask your AI to fetch components** — Once your project is set up, ask your AI to add specific components:
95
+ - "Add a settings modal"
96
+ - "I need a sidebar navigation"
97
+ - "Add the user profile dropdown"
98
+
99
+ 3. **Build complete pages from examples** — For larger features, start with a page template:
100
+ - "Show me available dashboard templates"
101
+ - "Fetch the landing page example"
102
+
103
+ ## Available Tools
68
104
 
69
105
  Your AI gets these tools:
70
106
 
@@ -74,44 +110,70 @@ Your AI gets these tools:
74
110
  | `list_components` | Browse a category |
75
111
  | `get_component_with_deps` | Fetch component + all dependencies |
76
112
  | `get_component` | Fetch component only |
113
+ | `get_component_file` | Fetch a single file (for large components) |
77
114
  | `list_examples` | Browse available page templates |
78
- | `get_example` | Fetch a specific page template |
115
+ | `get_example` | Fetch a complete page template |
79
116
 
80
- ### Example: Add a modal
117
+ ## What You Can Do
118
+
119
+ ### Recreate Any UI from a Screenshot
81
120
 
82
121
  ```
83
- You: "Add a settings modal"
122
+ You: [paste screenshot] "Recreate this with UntitledUI components"
84
123
 
85
- AI searchesfinds application/modals/settings-modal
86
- AI fetches gets modal + button, input, select base components
87
- AI addsplaces files in your project with correct imports
124
+ AI analyzes the design identifies matching components
125
+ AI fetches sidebar, header, cards, tables all with dependencies
126
+ AI assemblesproduction-ready page matching your screenshot
88
127
  ```
89
128
 
90
- ### Example: Browse options
129
+ ### Build Complete Pages in Seconds
91
130
 
92
131
  ```
93
- You: "What sidebar variants are there?"
132
+ You: "Build me a SaaS pricing page with 3 tiers and a FAQ section"
94
133
 
95
- AI calls list_components { type: "application", subfolder: "sidebars" }
96
- Returns all sidebar options for you to choose from
134
+ AI fetches marketing/pricing-sections + marketing/faq-sections
135
+ AI combines components complete pricing page with toggle for monthly/annual
136
+ Result: Professional pricing page with all interactions working
97
137
  ```
98
138
 
99
- ### Example: Start from a page template
139
+ ### Set Up Your Entire App Shell
100
140
 
101
141
  ```
102
- You: "Show me available dashboard templates"
142
+ You: "Set up the main app layout with collapsible sidebar and header with user dropdown"
103
143
 
104
- AI calls list_examples { path: "" }
105
- Returns: application, marketing
144
+ AI fetches application/sidebars + application/headers + base components
145
+ AI wires up navigation state, theme toggle, user menu
146
+ Result: Complete app shell ready for your content
147
+ ```
106
148
 
107
- AI calls list_examples { path: "application" }
108
- → Returns: dashboards-01, dashboards-02, settings-01, ...
149
+ ### Clone a Page from UntitledUI's Templates
109
150
 
110
- AI calls list_examples { path: "application/dashboards-01" }
111
- → Returns: 01, 02, 03, ... (individual pages)
151
+ ```
152
+ You: "I want a dashboard like the one in dashboards-01"
112
153
 
113
154
  AI calls get_example { path: "application/dashboards-01/01" }
114
- → Returns complete page with 27 files, all dependencies
155
+ → Returns 27 files: page layout, charts, tables, cards, all base components
156
+ → Ready to customize with your data
157
+ ```
158
+
159
+ ### Mix and Match Components
160
+
161
+ ```
162
+ You: "Create a settings page with sections for profile, notifications, billing, and team members"
163
+
164
+ AI searches → finds matching components for each section
165
+ AI fetches settings panels, forms, tables, modals
166
+ AI composes → cohesive settings page with consistent styling
167
+ ```
168
+
169
+ ### Rapid Feature Development
170
+
171
+ ```
172
+ You: "Add a command palette like Linear/Notion with keyboard shortcut"
173
+
174
+ AI fetches application/command-menus
175
+ → Complete command palette with search, keyboard navigation, sections
176
+ → Just wire up your actions
115
177
  ```
116
178
 
117
179
  ## Response Format
@@ -127,22 +189,44 @@ AI calls get_example { path: "application/dashboards-01/01" }
127
189
  { "name": "button", "files": [...] },
128
190
  { "name": "input", "files": [...] }
129
191
  ],
130
- "allDependencies": ["@headlessui/react", "clsx"]
192
+ "allDependencies": ["@headlessui/react", "clsx"],
193
+ "estimatedTokens": 12500,
194
+ "fileList": [
195
+ { "path": "settings-modal.tsx", "tokens": 850 },
196
+ { "path": "button/button.tsx", "tokens": 420 }
197
+ ]
131
198
  }
132
199
  ```
133
200
 
201
+ Responses include token estimates to help AI agents manage context limits. For very large responses (>25K tokens), the AI can use `get_component_file` to fetch individual files.
202
+
203
+ ## Troubleshooting
204
+
205
+ ### Components don't look right / missing styles
206
+
207
+ UntitledUI components use custom Tailwind classes like `bg-primary`, `text-display-md`, and design tokens that aren't part of standard Tailwind.
208
+
209
+ **Solution:** Use a [UntitledUI starter kit](#1-start-with-a-untitledui-starter-kit). The starter kits include all required Tailwind configuration and design tokens.
210
+
211
+ ### Import errors for base components
212
+
213
+ Pro components depend on base components (button, input, etc.). When fetching a component with `get_component_with_deps`, all dependencies are included automatically.
214
+
215
+ **Solution:** Make sure you're using `get_component_with_deps` instead of `get_component` for Pro components.
216
+
134
217
  ## Requirements
135
218
 
136
219
  - Node.js 18+
137
- - UntitledUI Pro license (only for Pro components)
220
+ - UntitledUI Pro license (for Pro components only)
138
221
 
139
222
  ## Credits
140
223
 
141
- [UntitledUI](https://www.untitledui.com) is created by [Jordan Hughes](https://jordanhughes.co).
224
+ [UntitledUI](https://www.untitledui.com?utm_source=untitledui-mcp&utm_medium=github&utm_campaign=readme) is created by [Jordan Hughes](https://jordanhughes.co?utm_source=untitledui-mcp&utm_medium=github&utm_campaign=readme).
142
225
 
143
226
  - [Twitter/X](https://x.com/jordanphughes)
144
227
  - [Dribbble](https://dribbble.com/jordanhughes)
145
228
  - [UntitledUI on X](https://x.com/UntitledUI)
229
+ - [Get UntitledUI Pro](https://www.untitledui.com/pricing?utm_source=untitledui-mcp&utm_medium=github&utm_campaign=readme)
146
230
 
147
231
  ## License
148
232
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "untitledui-mcp",
3
- "version": "0.1.4",
3
+ "version": "0.1.5",
4
4
  "description": "MCP server for UntitledUI Pro components - browse, search, and retrieve UI components via Claude Code",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",
@@ -25,7 +25,12 @@
25
25
  "test:watch": "vitest",
26
26
  "start": "node dist/index.js"
27
27
  },
28
- "keywords": ["mcp", "untitledui", "ui-components", "claude"],
28
+ "keywords": [
29
+ "mcp",
30
+ "untitledui",
31
+ "ui-components",
32
+ "claude"
33
+ ],
29
34
  "author": "Steffen Bilde",
30
35
  "license": "MIT",
31
36
  "dependencies": {