uxonfly-mcp 0.1.0 → 0.1.2

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 (3) hide show
  1. package/README.md +136 -39
  2. package/build/index.js +5 -1
  3. package/package.json +1 -1
package/README.md CHANGED
@@ -42,23 +42,55 @@ Strong opinions. Border-first. Modern SaaS aesthetic (Linear / Stripe / Vercel-a
42
42
 
43
43
  ## Install option 1 — file (recommended, 30 seconds)
44
44
 
45
- This is the only step you need.
45
+ Download `uxonfly.md` once, then save it with whatever filename your AI tool reads on every session.
46
46
 
47
47
  ```bash
48
- # Download the rulebook
49
48
  curl -O https://raw.githubusercontent.com/Phanikondru/uxonfly-mcp/main/uxonfly.md
49
+ ```
50
+
51
+ Then rename it per your tool:
50
52
 
51
- # For Claude Code:
53
+ | AI tool | Save as | Location |
54
+ | --- | --- | --- |
55
+ | **Claude Code** | `CLAUDE.md` | project root |
56
+ | **Cursor** | `.cursorrules` | project root |
57
+ | **Windsurf** | `.windsurfrules` | project root |
58
+ | **Gemini CLI** | `GEMINI.md` | project root |
59
+ | **Zed** | `AGENTS.md` | project root |
60
+ | **Google Antigravity** | `AGENTS.md` | project root |
61
+ | **GitHub Copilot** | `copilot-instructions.md` | `.github/` |
62
+ | **Aider** | `CONVENTIONS.md` (then `aider --read CONVENTIONS.md`) | project root |
63
+ | **JetBrains Junie** | `guidelines.md` | `.junie/` |
64
+ | **Any other tool** | `AGENTS.md` | project root (emerging universal convention) |
65
+
66
+ Example commands:
67
+
68
+ ```bash
69
+ # Claude Code
52
70
  mv uxonfly.md CLAUDE.md
53
71
 
54
- # OR for Cursor:
72
+ # Cursor
55
73
  mv uxonfly.md .cursorrules
74
+
75
+ # Windsurf
76
+ mv uxonfly.md .windsurfrules
77
+
78
+ # Gemini CLI
79
+ mv uxonfly.md GEMINI.md
80
+
81
+ # Zed / Google Antigravity / any tool using the AGENTS.md convention
82
+ mv uxonfly.md AGENTS.md
83
+
84
+ # GitHub Copilot
85
+ mkdir -p .github && mv uxonfly.md .github/copilot-instructions.md
86
+
87
+ # JetBrains Junie
88
+ mkdir -p .junie && mv uxonfly.md .junie/guidelines.md
56
89
  ```
57
90
 
58
- Open your AI tool and start prompting. It will read the file before generating
59
- UI on every session.
91
+ Open your AI tool in that project and start prompting. It reads the file on every session automatically.
60
92
 
61
- That's it. No npm install. No config. No login.
93
+ **That's it. No npm install, no config, no login.** Works with any AI tool that reads project-level context files — which is most of them in 2026.
62
94
 
63
95
  ---
64
96
 
@@ -68,56 +100,72 @@ If you want your AI to invoke specific tools (`get_component`,
68
100
  `get_ux_pattern`, `get_tokens`, …) on demand instead of reading the whole
69
101
  file every prompt, run UXonFly as a local MCP server.
70
102
 
71
- > **Status**: `uxonfly-mcp` is not yet published to npm. The one-line `npx`
72
- > install will work after the first publish until then, use the local-build
73
- > path below.
103
+ Published to npm as [`uxonfly-mcp`](https://www.npmjs.com/package/uxonfly-mcp).
104
+ MCP is a standard protocol any MCP-compatible AI tool can load this server
105
+ with the same command: `npx -y uxonfly-mcp`. Only the config location varies
106
+ per tool. Snippets for the most common tools below.
74
107
 
75
- ### Install today (local build)
108
+ ### Claude Code
76
109
 
77
110
  ```bash
78
- git clone https://github.com/Phanikondru/uxonfly-mcp.git
79
- cd uxonfly-mcp
80
- npm install
81
- npm run build
111
+ claude mcp add uxonfly -- npx -y uxonfly-mcp
82
112
  ```
83
113
 
84
- Then point your AI tool at the compiled binary using its absolute path.
114
+ ### Cursor
85
115
 
86
- **Claude Code:**
116
+ Add to `~/.cursor/mcp.json`:
87
117
 
88
- ```bash
89
- claude mcp add uxonfly -- node /absolute/path/to/uxonfly-mcp/build/index.js
118
+ ```json
119
+ {
120
+ "mcpServers": {
121
+ "uxonfly": {
122
+ "command": "npx",
123
+ "args": ["-y", "uxonfly-mcp"]
124
+ }
125
+ }
126
+ }
90
127
  ```
91
128
 
92
- **Cursor** add to `~/.cursor/mcp.json`:
129
+ ### Claude Desktop
130
+
131
+ On macOS, edit `~/Library/Application Support/Claude/claude_desktop_config.json`.
132
+ On Windows, edit `%APPDATA%\Claude\claude_desktop_config.json`.
93
133
 
94
134
  ```json
95
135
  {
96
136
  "mcpServers": {
97
137
  "uxonfly": {
98
- "command": "node",
99
- "args": ["/absolute/path/to/uxonfly-mcp/build/index.js"]
138
+ "command": "npx",
139
+ "args": ["-y", "uxonfly-mcp"]
100
140
  }
101
141
  }
102
142
  }
103
143
  ```
104
144
 
105
- ### After the first npm publish (coming soon)
106
-
107
- Once `uxonfly-mcp` is on the npm registry, the install collapses to one command.
145
+ ### Windsurf
108
146
 
109
- **Claude Code:**
147
+ Add to `~/.codeium/windsurf/mcp_config.json`:
110
148
 
111
- ```bash
112
- claude mcp add uxonfly -- npx -y uxonfly-mcp
149
+ ```json
150
+ {
151
+ "mcpServers": {
152
+ "uxonfly": {
153
+ "command": "npx",
154
+ "args": ["-y", "uxonfly-mcp"]
155
+ }
156
+ }
157
+ }
113
158
  ```
114
159
 
115
- **Cursor** `~/.cursor/mcp.json`:
160
+ ### VS Code (with MCP support)
161
+
162
+ Add to `.vscode/mcp.json` in your project root:
116
163
 
117
164
  ```json
118
165
  {
119
- "mcpServers": {
166
+ "servers": {
120
167
  "uxonfly": {
168
+ "type": "stdio",
121
169
  "command": "npx",
122
170
  "args": ["-y", "uxonfly-mcp"]
123
171
  }
@@ -125,6 +173,57 @@ claude mcp add uxonfly -- npx -y uxonfly-mcp
125
173
  }
126
174
  ```
127
175
 
176
+ ### Zed
177
+
178
+ Add to `~/.config/zed/settings.json` under `context_servers`:
179
+
180
+ ```json
181
+ {
182
+ "context_servers": {
183
+ "uxonfly": {
184
+ "command": {
185
+ "path": "npx",
186
+ "args": ["-y", "uxonfly-mcp"]
187
+ }
188
+ }
189
+ }
190
+ }
191
+ ```
192
+
193
+ ### Any other MCP-compatible tool
194
+
195
+ MCP is a standard protocol. The command is always the same across tools:
196
+
197
+ ```bash
198
+ npx -y uxonfly-mcp
199
+ ```
200
+
201
+ Gemini CLI, Google Antigravity, JetBrains Junie, and a growing list of other
202
+ editors and agents support MCP. Consult your tool's documentation for where
203
+ to register MCP servers, then use the command above.
204
+
205
+ ### Tools without MCP support
206
+
207
+ For tools that don't speak MCP yet (Aider, basic terminal LLM CLIs, older
208
+ editors), use **Install option 1** above. The file install works with any AI
209
+ that reads project context files.
210
+
211
+ ### Install from source (contributors)
212
+
213
+ If you want to run the MCP server from a local clone — for example, to
214
+ modify the base `uxonfly.md` or the server code — build from source and
215
+ point your AI tool at the compiled binary:
216
+
217
+ ```bash
218
+ git clone https://github.com/Phanikondru/uxonfly-mcp.git
219
+ cd uxonfly-mcp
220
+ npm install
221
+ npm run build
222
+ ```
223
+
224
+ Then in your MCP config, replace `npx -y uxonfly-mcp` with
225
+ `node /absolute/path/to/uxonfly-mcp/build/index.js`.
226
+
128
227
  ### Available tools
129
228
 
130
229
  | Tool | When AI calls it | Returns |
@@ -147,12 +246,7 @@ Point the MCP server at your own version of `uxonfly.md` via the
147
246
  `UXONFLY_MD_PATH` environment variable:
148
247
 
149
248
  ```bash
150
- # Local build (works today):
151
- UXONFLY_MD_PATH=/absolute/path/to/your/uxonfly.md \
152
- node /absolute/path/to/uxonfly-mcp/build/index.js
153
-
154
- # After npm publish:
155
- UXONFLY_MD_PATH=/absolute/path/to/your/uxonfly.md npx uxonfly-mcp
249
+ UXONFLY_MD_PATH=/absolute/path/to/your/uxonfly.md npx -y uxonfly-mcp
156
250
  ```
157
251
 
158
252
  ---
@@ -187,8 +281,8 @@ Goal: make UXonFly *better* than any one designer's taste alone.
187
281
 
188
282
  ## About
189
283
 
190
- Built by [phanikondru](https://x.com/Phanikondru) — designer with 4 years
191
- of production UX experience, building in public.
284
+ Built by **Phanindhra Kondru** — designer with 4 years of production UX
285
+ experience, building in public.
192
286
 
193
287
  Just trying to build good things. **Design + AI + Code.**
194
288
 
@@ -196,7 +290,10 @@ UXonFly was built with Gemini, Cursor, and the rules in `uxonfly.md`
196
290
  itself — the same system that ships with this package. The tool eats its
197
291
  own dog food.
198
292
 
199
- Follow the project: [@Phanikondru](https://x.com/Phanikondru)
293
+ ### Connect
294
+
295
+ - X: [@Phanikondru](https://x.com/Phanikondru)
296
+ - LinkedIn: [Phanindhra Kondru](https://www.linkedin.com/in/phanindhra-kondru-436220205/)
200
297
 
201
298
  ---
202
299
 
package/build/index.js CHANGED
@@ -18,6 +18,10 @@ import { fileURLToPath } from "node:url";
18
18
  import { dirname, resolve } from "node:path";
19
19
  // ─── Load the base system ────────────────────────────────────────────
20
20
  const DEFAULT_MD_PATH = resolve(dirname(fileURLToPath(import.meta.url)), "..", "uxonfly.md");
21
+ // Read package version at runtime so serverInfo.version always matches
22
+ // package.json. Prevents drift on future version bumps.
23
+ const PACKAGE_JSON_PATH = resolve(dirname(fileURLToPath(import.meta.url)), "..", "package.json");
24
+ const { version: PACKAGE_VERSION } = JSON.parse(readFileSync(PACKAGE_JSON_PATH, "utf8"));
21
25
  function loadSystem() {
22
26
  const path = process.env.UXONFLY_MD_PATH ?? DEFAULT_MD_PATH;
23
27
  try {
@@ -64,7 +68,7 @@ const notFound = (what) => asText(`[uxonfly] not found: ${what}. Check uxonfly.m
64
68
  // ─── Server ──────────────────────────────────────────────────────────
65
69
  const server = new McpServer({
66
70
  name: "uxonfly-mcp",
67
- version: "0.1.0",
71
+ version: PACKAGE_VERSION,
68
72
  });
69
73
  // Tool 1 — complete design system
70
74
  server.registerTool("get_design_system", {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "uxonfly-mcp",
3
- "version": "0.1.0",
3
+ "version": "0.1.2",
4
4
  "description": "Designer intelligence for every AI coding session. Production-grade UX. On the fly.",
5
5
  "type": "module",
6
6
  "bin": {