mcp-probe-kit 3.6.0 → 3.6.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
@@ -1,773 +1,781 @@
1
- # mcp-probe-kit — Know the Context, Feed the Moment
2
-
3
- <div align="center">
4
- <img src="docs/assets/logo.png" alt="知时MCP Logo" width="160"/>
5
- <h1>知时MCP | mcp-probe-kit</h1>
6
- <p><strong>Know the Context, Feed the Moment.</strong></p>
7
- <p>
8
- <code>Introspection</code> · <code>Context Hydration</code> · <code>Delegated Orchestration</code>
9
- </p>
10
- </div>
11
-
12
- ---
13
-
14
- <!-- mcp-name: io.github.mybolide/mcp-probe-kit -->
15
-
16
- > **Talk is cheap, show me the Context.**
17
- >
18
- > mcp-probe-kit is a protocol-level toolkit designed for developers who want AI to truly understand their project's intent. It's not just a collection of 30 tools—it's a context-aware system that helps AI agents grasp what you're building.
19
-
20
- **Languages**: [English](README.md) | [简体中文](i18n/README.zh-CN.md) | [日本語](i18n/README.ja-JP.md) | [한국어](i18n/README.ko-KR.md) | [Español](i18n/README.es-ES.md) | [Français](i18n/README.fr-FR.md) | [Deutsch](i18n/README.de-DE.md) | [Português (BR)](i18n/README.pt-BR.md)
21
-
22
- [![npm version](https://img.shields.io/npm/v/mcp-probe-kit.svg)](https://www.npmjs.com/package/mcp-probe-kit)
23
- [![npm downloads](https://img.shields.io/npm/dm/mcp-probe-kit.svg)](https://www.npmjs.com/package/mcp-probe-kit)
24
- [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
25
- [![GitHub stars](https://img.shields.io/github/stars/mybolide/mcp-probe-kit.svg)](https://github.com/mybolide/mcp-probe-kit/stargazers)
26
-
27
- > 🚀 AI-Powered Complete Development Toolkit - Covering the Entire Development Lifecycle
28
-
29
- A powerful MCP (Model Context Protocol) server providing **30 tools** covering the complete workflow from product analysis to final release (Requirements → Design → Development → Quality → Release), all tools support **structured output**.
30
-
31
- **🎉 v3.0 Major Update**: Streamlined tool count, focus on core competencies, eliminate choice paralysis, let AI do more native work
32
-
33
- **Supports All MCP Clients**: Cursor, Claude Desktop, Cline, Continue, and more
34
-
35
- **Protocol Version**: MCP 2025-11-25 · **SDK**: @modelcontextprotocol/sdk 1.27.1
36
-
37
- ---
38
-
39
- ## 📚 Complete Documentation
40
-
41
- **👉 [https://mcp-probe-kit.bytezonex.com](https://mcp-probe-kit.bytezonex.com/)**
42
-
43
- - [Quick Start](https://mcp-probe-kit.bytezonex.com/pages/getting-started.html) - Setup in 5 minutes
44
- - [Local Memory Stack (Qdrant + Nomic Embed)](docs/memory-local-setup.md) - Docker Compose, ports `50008` / `50012`, MCP env
45
- - [All Tools](https://mcp-probe-kit.bytezonex.com/pages/all-tools.html) - Complete list of 29 tools
46
- - [Best Practices](https://mcp-probe-kit.bytezonex.com/pages/examples.html) - Full development workflow guide
47
- - [v3.0 Migration Guide](https://mcp-probe-kit.bytezonex.com/pages/migration.html) - Upgrade from v2.x to v3.0
48
-
49
- ---
50
-
51
- ## ✨ Core Features
52
-
53
- ### 📦 29 Tools
54
-
55
- - **🔄 Workflow Orchestration** (6 tools) - One-click complex development workflows
56
- - `start_feature`, `start_bugfix`, `start_onboard`, `start_ui`, `start_product`, `start_ralph`
57
- - **🔍 Code Analysis** (4 tools) - Code quality, refactoring, and graph insight
58
- - `code_review`, `code_insight`, `fix_bug`, `refactor`
59
- - **📝 Git Tools** (2 tools) - Git commits and work reports
60
- - `gencommit`, `git_work_report`
61
- - **⚡ Code Generation** (1 tool) - Test generation
62
- - `gentest`
63
- - **📦 Project Management** (7 tools) - Project initialization, requirements, and spec validation
64
- - `init_project`, `init_project_context`, `add_feature`, `check_spec`, `estimate`, `interview`, `ask_user`
65
- - **🎨 UI/UX Utilities** (3 tools) - Design systems and UI data synchronization
66
- - `ui_design_system`, `ui_search`, `sync_ui_data`
67
- - **🧠 Memory** (6 tools) - Reusable asset memory
68
- - `search_memory`, `read_memory_asset`, `memorize_asset`, `update_memory_asset`, `delete_memory_asset`, `scan_and_extract_patterns`
69
-
70
- ### 🛡️ Quality Constraints (single source of truth)
71
-
72
- All hard quality rules live in one module (`src/lib/quality-constraints.ts`) and are injected into `code_review`, the `add_feature` task templates, and the UI tools. Change once, apply everywhere — inspired by [taste-skill](https://github.com/Leonxlnx/taste-skill) and [impeccable](https://github.com/pbakaus/impeccable).
73
-
74
- - **Code limits**: single file ≤ 500 lines (split into modules/components when exceeded), function ≤ 50 lines, nesting ≤ 4, parameters ≤ 3.
75
- - **Completeness blacklist**: `code_review` flags placeholder/elision patterns (`// ...`, `// TODO`, `// rest of code`, bare `...`) as CRITICAL — "a partial output is a broken output".
76
- - **Anti-laziness task templates**: `add_feature` tasks now carry a Scope-lock deliverable count, a mandatory evidence block (read code before writing), a per-file line budget, and a binary zero-tolerance rule for placeholders. `check_spec` validates these (missing Scope-lock = error, thin task without evidence = warning).
77
- - **UI hard red lines**: numeric, machine-checkable rules — 4pt spacing scale, WCAG contrast (4.5/3/3), type scale ≥ 1.25, hero font ≤ 6rem, OKLCH, eight interaction states, cognitive load ≤ 4, motion 150-300ms.
78
- - **UI banned list + Pre-Flight checklist**: match-and-refuse blacklist for AI slop (default Inter/Roboto, AI purple-blue gradients, gradient text, cookie-cutter card grids, em-dash, cream/beige body backgrounds, nested cards) plus a delivery-gate self-check matrix.
79
-
80
- ### 🧠 Code Graph Bridge (GitNexus)
81
-
82
- - `code_insight` bridges GitNexus by default for query/context/impact analysis
83
- - The bridge launches `npx -y gitnexus@latest mcp` by default to reduce stale package risk
84
- - `init_project_context` bootstraps baseline graph docs under `docs/graph-insights/`; if `docs/project-context.md` already exists, it preserves the old context docs and only backfills graph docs plus the index entry
85
- - `start_feature` refreshes the GitNexus index and runs task-level `query/context/impact` narrowing before spec generation to reduce over-scoping
86
- - `start_bugfix` refreshes the GitNexus index and runs task-level graph analysis before TBP RCA to constrain failure boundary and blast radius
87
- - Older projects that already have `project-context.md` but no graph docs are bootstrapped automatically through the `init_project_context` step
88
- - If GitNexus is unavailable, the server falls back automatically without breaking orchestration
89
- - Real graph queries read the `.gitnexus` index; `docs/graph-insights/latest.md|json` are readable snapshots for humans and AI agents
90
- - Graph snapshots are exposed as resources (`probe://graph/latest`, `probe://graph/history`, `probe://graph/latest.md`)
91
- - Graph snapshots are also persisted to readable files in `.mcp-probe-kit/graph-snapshots` (customizable via `MCP_GRAPH_SNAPSHOT_DIR`)
92
- - Tool responses include `_meta.graph` with snapshot URI and local JSON/Markdown file paths
93
-
94
- ### 🐛 TBP 8-Step RCA for Bug Workflows
95
-
96
- - `start_bugfix` defaults to Toyota-style TBP 8-step root-cause analysis before repair
97
- - `fix_bug` returns a structured TBP skeleton covering phenomenon, timeline, ruled-out paths, boundary, root cause, evidence, and repair plan
98
- - This makes bug, regression, anomaly, and "why didn't it work" investigations follow analyze-first discipline instead of patching symptoms
99
-
100
- ### 🧠 Memory Retrieval
101
-
102
- - Memory tools use **Qdrant** as the vector database backend
103
- - Embedding service supports two modes:
104
- - `ollama`
105
- - `openai-compatible`
106
-
107
- **Memory tools:**
108
- - `search_memory` - Semantic search across the shared memory pool (optionally prefer `type` / `tags`); text output includes `id`, `score`, summary, description, and a `--- content ---` body (default up to 1500 chars via `MEMORY_SEARCH_CONTENT_MAX_CHARS`)
109
- - `memorize_asset` - Persist reusable code/spec/pattern assets into vector memory
110
- - `read_memory_asset` - Read full asset content by `asset_id` (text output includes the full `content` body)
111
- - `update_memory_asset` - Update an existing asset by `asset_id` (preserves ID; `content` changes re-embed)
112
- - `delete_memory_asset` - Delete an asset by `asset_id` from the shared pool
113
- - `scan_and_extract_patterns` - Extract reusable patterns from code/file/directory before deciding whether to persist
114
-
115
- **Cross-repo memory pools:** do not rely on `source_project` / `source_path` for shared retrieval; put file paths in `content` instead. Search injection hides foreign `sourcePath` unless `MEMORY_REPO_ID` matches or `MEMORY_SEARCH_SHOW_SOURCE=true`.
116
-
117
- **Memory backend and embedding configuration:**
118
- - Vector database: **Qdrant**
119
- - **Recommended local setup:** `Qdrant (port 50008) + Infinity / nomic-embed (port 50012)` — lighter than Ollama; see **[Local Memory Stack guide](docs/memory-local-setup.md)** (中文: [memory-local-setup.zh-CN.md](docs/memory-local-setup.zh-CN.md))
120
- - Supported embedding providers:
121
- - `ollama`
122
- - `openai-compatible` (Infinity, OpenAI, etc.)
123
- - Required environment variables for memory write/search:
124
- - `MEMORY_QDRANT_URL`
125
- - `MEMORY_EMBEDDING_URL`
126
- - `MEMORY_EMBEDDING_MODEL`
127
- - Optional environment variables:
128
- - `MEMORY_QDRANT_API_KEY`
129
- - `MEMORY_QDRANT_COLLECTION` (default: `mcp_probe_memory`)
130
- - `MEMORY_EMBEDDING_API_KEY`
131
- - `MEMORY_EMBEDDING_PROVIDER` (`ollama` by default)
132
- - `MEMORY_SEARCH_LIMIT` (default: `3`)
133
- - `MEMORY_SUMMARY_MAX_CHARS` (default: `280`)
134
- - `MEMORY_SEARCH_MIN_SCORE` (default: `0` = disabled; try `0.72` for noisy pools)
135
- - `MEMORY_SEARCH_SHOW_SOURCE` (default: `false`)
136
- - `MEMORY_REPO_ID` (optional; show `sourcePath` only when `sourceProject` matches)
137
- - `MEMORY_INJECTION_CONTENT_MAX_CHARS` (default: `1500`; max content per hit injected into `start_*` guides)
138
- - Behavior notes:
139
- - Read-only memory access only requires `MEMORY_QDRANT_URL`
140
- - Memory write is enabled only when `MEMORY_QDRANT_URL`, `MEMORY_EMBEDDING_URL`, and `MEMORY_EMBEDDING_MODEL` are all configured
141
- - The Qdrant collection is auto-created on first write, and vector dimension is inferred from the first embedding response
142
-
143
- **Recommended local memory setup (Qdrant + Nomic Embed / Infinity):**
144
-
145
- Full Docker Compose, ports, and troubleshooting: **[docs/memory-local-setup.md](docs/memory-local-setup.md)**
146
-
147
- ```json
148
- {
149
- "mcpServers": {
150
- "mcp-probe-kit": {
151
- "command": "npx",
152
- "args": ["-y", "mcp-probe-kit@latest"],
153
- "env": {
154
- "MEMORY_QDRANT_URL": "http://127.0.0.1:50008",
155
- "MEMORY_QDRANT_API_KEY": "your-qdrant-api-key",
156
- "MEMORY_QDRANT_COLLECTION": "mcp_probe_memory",
157
- "MEMORY_EMBEDDING_PROVIDER": "openai-compatible",
158
- "MEMORY_EMBEDDING_URL": "http://127.0.0.1:50012/embeddings",
159
- "MEMORY_EMBEDDING_MODEL": "nomic-ai/nomic-embed-text-v1.5",
160
- "MEMORY_EMBEDDING_API_KEY": "your-infinity-api-key",
161
- "MEMORY_SEARCH_LIMIT": "3",
162
- "MEMORY_SUMMARY_MAX_CHARS": "280"
163
- }
164
- }
165
- }
166
- }
167
- ```
168
-
169
- **Alternative: Qdrant + Ollama** (if you already run Ollama):
170
-
171
- ```bash
172
- docker run -d --name mcp-qdrant -p 6333:6333 qdrant/qdrant
173
- ollama pull nomic-embed-text
174
- ```
175
-
176
- ```json
177
- "MEMORY_QDRANT_URL": "http://127.0.0.1:6333",
178
- "MEMORY_EMBEDDING_PROVIDER": "ollama",
179
- "MEMORY_EMBEDDING_URL": "http://127.0.0.1:11434/api/embeddings",
180
- "MEMORY_EMBEDDING_MODEL": "nomic-embed-text"
181
- ```
182
-
183
- **OpenAI-compatible embedding (hosted API):**
184
- ```json
185
- {
186
- "mcpServers": {
187
- "mcp-probe-kit": {
188
- "command": "npx",
189
- "args": ["-y", "mcp-probe-kit@latest"],
190
- "env": {
191
- "MEMORY_QDRANT_URL": "http://127.0.0.1:6333",
192
- "MEMORY_QDRANT_COLLECTION": "mcp_probe_memory",
193
- "MEMORY_EMBEDDING_PROVIDER": "openai-compatible",
194
- "MEMORY_EMBEDDING_URL": "https://your-embedding-endpoint/v1/embeddings",
195
- "MEMORY_EMBEDDING_API_KEY": "your-api-key",
196
- "MEMORY_EMBEDDING_MODEL": "text-embedding-3-small"
197
- }
198
- }
199
- }
200
- }
201
- ```
202
-
203
- ### 🎯 Structured Output
204
-
205
- Core and orchestration tools support **structured output**, returning machine-readable JSON data, improving AI parsing accuracy, supporting tool chaining and state tracking.
206
-
207
- ### ⏱️ Native Tasks, Progress, and Cancellation
208
-
209
- - Built on MCP SDK native task support (`taskStore` + `taskMessageQueue`)
210
- - Supports task lifecycle endpoints: `tasks/get`, `tasks/result`, `tasks/list`, `tasks/cancel`
211
- - Advertises `capabilities.tasks.requests.tools.call` so clients can create tasks for `tools/call`
212
- - Emits `notifications/progress` when client provides `_meta.progressToken`
213
- - Handles request cancellation via `AbortSignal` and returns a clear cancellation error
214
- - Long-running orchestration tools (`start_*`) and `sync_ui_data` support cooperative cancellation/progress callbacks
215
-
216
- ### 🔌 Extensions & UI Apps (Optional)
217
-
218
- - Trace metadata passthrough: request `_meta.trace` is preserved in tool responses (`_meta.trace`)
219
- - Optional extensions capability switch: enable with `MCP_ENABLE_EXTENSIONS_CAPABILITY=1`
220
- - Optional MCP Apps resource output for UI tools: enable with `MCP_ENABLE_UI_APPS=1`
221
- - UI tools can expose preview resources via `ui://...` and response `_meta.ui.resourceUri`
222
-
223
- ### 🧭 Delegated Orchestration Protocol
224
-
225
- All `start_*` orchestration tools return an **execution plan** in `structuredContent.metadata.plan`.
226
- AI needs to **call tools step by step and persist files**, rather than the tool executing internally.
227
-
228
- **Plan Schema (Core Fields)**:
229
- ```json
230
- {
231
- "mode": "delegated",
232
- "steps": [
233
- {
234
- "id": "spec",
235
- "tool": "add_feature",
236
- "args": { "feature_name": "user-auth", "description": "User authentication feature" },
237
- "outputs": ["docs/specs/user-auth/requirements.md"]
238
- }
239
- ]
240
- }
241
- ```
242
-
243
- **Field Description**:
244
- - `mode`: Fixed as `delegated`
245
- - `steps`: Array of execution steps
246
- - `tool`: Tool name (e.g. `add_feature`)
247
- - `action`: Manual action description when no tool (e.g. `update_project_context`)
248
- - `args`: Tool parameters
249
- - `outputs`: Expected artifacts
250
- - `when/dependsOn/note`: Optional conditions and notes
251
-
252
- ### 🧩 Structured Output Field Specification (Key Fields)
253
-
254
- Both orchestration and atomic tools return `structuredContent`, common fields:
255
- - `summary`: One-line summary
256
- - `status`: Status (pending/success/failed/partial)
257
- - `steps`: Execution steps (orchestration tools)
258
- - `artifacts`: Artifact list (path + purpose)
259
- - `metadata.plan`: Delegated execution plan (only start_*)
260
- - `specArtifacts`: Specification artifacts (start_feature)
261
- - `estimate`: Estimation results (start_feature / estimate)
262
-
263
- ### 🧠 Requirements Clarification Mode (Requirements Loop)
264
-
265
- When requirements are unclear, use `requirements_mode=loop` in `start_feature / start_bugfix / start_ui`.
266
- This mode performs 1-2 rounds of structured clarification before entering spec/fix/UI execution.
267
-
268
- **Example:**
269
- ```json
270
- {
271
- "feature_name": "user-auth",
272
- "description": "User authentication feature",
273
- "requirements_mode": "loop",
274
- "loop_max_rounds": 2,
275
- "loop_question_budget": 5
276
- }
277
- ```
278
-
279
- ### 🧩 Template System (Regular Model Friendly)
280
-
281
- `add_feature` supports template profiles, default `auto` auto-selects: prefers `guided` when requirements are incomplete (includes detailed filling rules and checklists), selects `strict` when requirements are complete (more compact structure, suitable for high-capability models or archival scenarios).
282
-
283
- **Example:**
284
- ```json
285
- {
286
- "description": "Add user authentication feature",
287
- "template_profile": "auto"
288
- }
289
- ```
290
-
291
- **Applicable Tools**:
292
- - `start_feature` passes `template_profile` to `add_feature`
293
- - `start_bugfix` / `start_ui` also support `template_profile` for controlling guidance strength (auto/guided/strict)
294
-
295
- **Template Profile Strategy**:
296
- - `guided`: Less/incomplete requirements info, regular model priority
297
- - `strict`: Requirements structured, prefer more compact guidance
298
- - `auto`: Default recommendation, auto-selects guided/strict
299
-
300
- ### 🔄 Workflow Orchestration
301
-
302
- 6 intelligent orchestration tools that automatically combine multiple basic tools for one-click complex development workflows:
303
- - `start_feature` - New feature development (Requirements → Design → Estimation)
304
- - `start_bugfix` - Bug fixing (TBP 8-step RCA → Fix → Testing)
305
- - `start_onboard` - Project onboarding (Generate project context docs)
306
- - `start_ui` - UI development (Design system → Components → Code)
307
- - `start_product` - Product design (PRD → Prototype → Design system → HTML)
308
- - `start_ralph` - Ralph Loop (Iterative development until goal completion)
309
-
310
- ### 🚀 Product Design Workflow
311
-
312
- `start_product` is a complete product design orchestration tool, from requirements to interactive prototype:
313
-
314
- **Workflow:**
315
- 1. **Requirements Analysis** - Generate standard PRD (product overview, feature requirements, page list)
316
- 2. **Prototype Design** - Generate detailed prototype docs for each page
317
- 3. **Design System** - Generate design specifications based on product type
318
- 4. **HTML Prototype** - Generate interactive prototype viewable in browser
319
- 5. **Project Context** - Auto-update project documentation
320
-
321
- **Structured Output Additions**:
322
- - `start_product.structuredContent.artifacts`: Artifact list (PRD, prototypes, design system, etc.)
323
- - `interview.structuredContent.mode`: `usage` / `questions` / `record`
324
-
325
- ### 🎨 UI/UX Pro Max
326
-
327
- 4 UI/UX tools with `start_ui` as the unified entry point:
328
- - `start_ui` - One-click UI development (supports intelligent mode) (orchestration tool)
329
- - `ui_design_system` - Intelligent design system generation
330
- - `ui_search` - UI/UX data search (BM25 algorithm)
331
- - `sync_ui_data` - Sync latest UI/UX data locally
332
-
333
- **Note**: `start_ui` automatically calls `ui_design_system` and `ui_search`, you don't need to call them separately.
334
-
335
- **Inspiration:**
336
- - [ui-ux-pro-max-skill](https://github.com/nextlevelbuilder/ui-ux-pro-max-skill) - UI/UX design system philosophy
337
- - [json-render](https://github.com/vercel-labs/json-render) - JSON template rendering engine
338
-
339
- **Skill Bridge for UI/PRD workflows:**
340
- - `start_ui` and `start_product` now include a Skill Bridge section in guidance and `structuredContent.metadata.skills`.
341
- - Recommended skill call order: `ui-ux-pro-max` → `interaction-design` → `frontend-design`.
342
- - If some skills are missing, workflow continues with MCP main plan and marks unavailable skills in metadata.
343
-
344
- **Why use `sync_ui_data`?**
345
-
346
- Our `start_ui` tool relies on a rich UI/UX database (colors, icons, charts, components, design patterns, etc.) to generate high-quality design systems and code. This data comes from npm package [uipro-cli](https://www.npmjs.com/package/uipro-cli), including:
347
- - 🎨 Color schemes (mainstream brand colors, color palettes)
348
- - 🔣 Icon libraries (React Icons, Heroicons, etc.)
349
- - 📊 Chart components (Recharts, Chart.js, etc.)
350
- - 🎯 Landing page templates (SaaS, e-commerce, government, etc.)
351
- - 📐 Design specifications (spacing, fonts, shadows, etc.)
352
-
353
- **Data Sync Strategy:**
354
- 1. **Embedded Data**: Synced at build time, works offline
355
- 2. **Background Auto Sync**: Downloads latest data to `~/.mcp-probe-kit/ui-ux-data/` without changing current session output
356
- 3. **Next-Start Activation**: Newly downloaded data is applied on next process start (keeps current session deterministic)
357
- 4. **Manual Sync**: Use `sync_ui_data` to force refresh cache immediately (still applies next start by default)
358
-
359
- This ensures `start_ui` can generate professional-grade UI code even offline.
360
-
361
- ### 🎤 Requirements Interview
362
-
363
- 2 interview tools to clarify requirements before development:
364
- - `interview` - Structured requirements interview
365
- - `ask_user` - AI proactive questioning
366
-
367
- ---
368
-
369
- ## 🧭 Tool Selection Guide
370
-
371
- ### When to use orchestration tools vs individual tools?
372
-
373
- **Use orchestration tools (start_*) when:**
374
- - ✅ Need complete workflow (multiple steps)
375
- - ✅ Want to automate multiple tasks
376
- - ✅ Need to generate multiple artifacts (docs, code, tests, etc.)
377
-
378
- **Use individual tools when:**
379
- - ✅ Only need specific functionality
380
- - ✅ Already have project context docs
381
- - ✅ Need more fine-grained control
382
-
383
- ### Common Scenario Selection
384
-
385
- | Scenario | Recommended Tool | Reason |
386
- |---------|-----------------|--------|
387
- | Develop new feature (complete flow) | `start_feature` | Auto-complete: spec→estimation |
388
- | Only need feature spec docs | `add_feature` | More lightweight, only generates docs |
389
- | Fix bug (complete flow) | `start_bugfix` | Root-cause-first flow: TBP RCA → fix → test |
390
- | Only need bug analysis | `fix_bug` | TBP 8-step RCA only, without full orchestration |
391
- | Generate design system | `ui_design_system` | Directly generate design specs |
392
- | Develop UI components | `start_ui` | Complete flow: design→components→code |
393
- | Product design (requirements to prototype) | `start_product` | One-click: PRD→prototype→HTML |
394
- | One-sentence requirement analysis | `init_project` | Generate complete project spec docs |
395
- | Project onboarding docs | `init_project_context` | Generate tech stack/architecture/conventions |
396
-
397
- ---
398
-
399
- ## 🚀 Quick Start
400
-
401
- ### Method 1: Use directly with npx (Recommended)
402
-
403
- No installation needed, use the latest version directly.
404
-
405
- #### Cursor / Cline Configuration
406
-
407
- **Config file location:**
408
- - Windows: `%APPDATA%\Cursor\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json`
409
- - macOS: `~/Library/Application Support/Cursor/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json`
410
- - Linux: `~/.config/Cursor/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json`
411
-
412
- **Config content:**
413
- ```json
414
- {
415
- "mcpServers": {
416
- "mcp-probe-kit": {
417
- "command": "npx",
418
- "args": ["mcp-probe-kit@latest"]
419
- }
420
- }
421
- }
422
- ```
423
-
424
- #### Claude Desktop Configuration
425
-
426
- **Config file location:**
427
- - Windows: `%APPDATA%\Claude\claude_desktop_config.json`
428
- - macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
429
- - Linux: `~/.config/Claude/claude_desktop_config.json`
430
-
431
- **Config content:**
432
- ```json
433
- {
434
- "mcpServers": {
435
- "mcp-probe-kit": {
436
- "command": "npx",
437
- "args": ["-y", "mcp-probe-kit@latest"]
438
- }
439
- }
440
- }
441
- ```
442
-
443
- #### OpenCode Configuration
444
-
445
- **Config file location:**
446
- - Project-level: `opencode.json` (in project root)
447
- - Global: `~/.config/opencode/opencode.json`
448
-
449
- **Config content:**
450
- ```json
451
- {
452
- "mcp": {
453
- "mcp-probe-kit": {
454
- "type": "local",
455
- "command": ["npx", "-y", "mcp-probe-kit@latest"],
456
- "enabled": true
457
- }
458
- }
459
- }
460
- ```
461
-
462
- > **Note:** OpenCode uses `opencode.json` with a different schema from Cursor/Claude Desktop. The key `mcp` replaces `mcpServers`, `command` is an array, `type: "local"` is required, and environment variables use `environment` instead of `env`. See [OpenCode MCP docs](https://opencode.ai/docs/mcp) for details.
463
-
464
- ### Method 2: Global Installation
465
-
466
- ```bash
467
- npm install -g mcp-probe-kit
468
- ```
469
-
470
- Use in config file:
471
- ```json
472
- {
473
- "mcpServers": {
474
- "mcp-probe-kit": {
475
- "command": "mcp-probe-kit"
476
- }
477
- }
478
- }
479
- ```
480
-
481
- ### Optional Memory System Setup
482
-
483
- If you want to use `memorize_asset`, `update_memory_asset`, `read_memory_asset`, `delete_memory_asset`, and `scan_and_extract_patterns`, configure as follows:
484
-
485
- - **Qdrant only** (`MEMORY_QDRANT_URL`): `read_memory_asset`, `delete_memory_asset`
486
- - **Qdrant + embedding** (all three `MEMORY_*` write/search vars): `search_memory`, `memorize_asset`, `update_memory_asset`
487
- - **No memory backend**: `scan_and_extract_patterns` (local scan only; persist via `memorize_asset` when ready)
488
-
489
- For full write/search you need both:
490
-
491
- 1. A **Qdrant** vector database
492
- 2. An **embedding service** in either `ollama` or `openai-compatible` mode
493
-
494
- **Full guide (Docker Compose for Qdrant + Infinity, ports `50008` / `50012`, MCP env, smoke tests):**
495
-
496
- - English: [docs/memory-local-setup.md](docs/memory-local-setup.md)
497
- - 中文: [docs/memory-local-setup.zh-CN.md](docs/memory-local-setup.zh-CN.md)
498
-
499
- #### Option A: Qdrant + Nomic Embed / Infinity (recommended)
500
-
501
- Lightweight local stack; no Ollama. Deploy Qdrant and `nomic-embed` via Docker Compose (see guide), then:
502
-
503
- ```json
504
- {
505
- "mcpServers": {
506
- "mcp-probe-kit": {
507
- "command": "npx",
508
- "args": ["-y", "mcp-probe-kit@latest"],
509
- "env": {
510
- "MEMORY_QDRANT_URL": "http://127.0.0.1:50008",
511
- "MEMORY_QDRANT_API_KEY": "your-qdrant-api-key",
512
- "MEMORY_QDRANT_COLLECTION": "mcp_probe_memory",
513
- "MEMORY_EMBEDDING_PROVIDER": "openai-compatible",
514
- "MEMORY_EMBEDDING_URL": "http://127.0.0.1:50012/embeddings",
515
- "MEMORY_EMBEDDING_MODEL": "nomic-ai/nomic-embed-text-v1.5",
516
- "MEMORY_EMBEDDING_API_KEY": "your-infinity-api-key",
517
- "MEMORY_SEARCH_LIMIT": "3",
518
- "MEMORY_SUMMARY_MAX_CHARS": "280"
519
- }
520
- }
521
- }
522
- }
523
- ```
524
-
525
- > Embedding URL must be `/embeddings` (not `/v1/embeddings`). Qdrant requires `api-key` when `QDRANT__SERVICE__API_KEY` is set.
526
-
527
- #### Option B: Qdrant + Ollama
528
-
529
- ```bash
530
- docker run -d --name mcp-qdrant -p 6333:6333 qdrant/qdrant
531
- ollama pull nomic-embed-text
532
- ```
533
-
534
- ```json
535
- "MEMORY_QDRANT_URL": "http://127.0.0.1:6333",
536
- "MEMORY_EMBEDDING_PROVIDER": "ollama",
537
- "MEMORY_EMBEDDING_URL": "http://127.0.0.1:11434/api/embeddings",
538
- "MEMORY_EMBEDDING_MODEL": "nomic-embed-text"
539
- ```
540
-
541
- #### Option C: Qdrant + hosted OpenAI-compatible API
542
-
543
- ```json
544
- "MEMORY_QDRANT_URL": "http://127.0.0.1:50008",
545
- "MEMORY_EMBEDDING_PROVIDER": "openai-compatible",
546
- "MEMORY_EMBEDDING_URL": "https://your-embedding-endpoint/v1/embeddings",
547
- "MEMORY_EMBEDDING_API_KEY": "your-api-key",
548
- "MEMORY_EMBEDDING_MODEL": "text-embedding-3-small"
549
- ```
550
-
551
- #### Memory Environment Variables
552
-
553
- - `MEMORY_QDRANT_URL`: Qdrant base URL, required for all memory features
554
- - `MEMORY_QDRANT_API_KEY`: Optional Qdrant API key
555
- - `MEMORY_QDRANT_COLLECTION`: Collection name, default `mcp_probe_memory`
556
- - `MEMORY_EMBEDDING_PROVIDER`: `ollama` or `openai-compatible`
557
- - `MEMORY_EMBEDDING_URL`: Embedding endpoint URL
558
- - `MEMORY_EMBEDDING_API_KEY`: Optional for Ollama, usually required for hosted OpenAI-compatible providers
559
- - `MEMORY_EMBEDDING_MODEL`: Default is `nomic-embed-text`
560
- - `MEMORY_SEARCH_LIMIT`: Default search result count is `3`
561
- - `MEMORY_SUMMARY_MAX_CHARS`: Default summary truncation length is `280`
562
-
563
- #### Notes
564
-
565
- - Memory write capability is enabled only when `MEMORY_QDRANT_URL`, `MEMORY_EMBEDDING_URL`, and `MEMORY_EMBEDDING_MODEL` are configured
566
- - Memory read capability only requires `MEMORY_QDRANT_URL`
567
- - Qdrant collections are auto-created on first write with `Cosine` distance
568
- - Vector size is inferred from the first embedding response
569
-
570
- ### Windows Notes for Graph Tools
571
-
572
- Applies to `code_insight`, `start_feature`, `start_bugfix`, and `init_project_context`.
573
-
574
- - The GitNexus bridge uses `npx -y gitnexus@latest mcp` by default.
575
- - On Windows, the first cold start can take 20+ seconds because `npx` may check/download packages.
576
- - Some GitNexus dependencies use `tree-sitter-*` native modules. If your machine lacks Visual Studio Build Tools, the first install may fail with errors like `gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use`.
577
-
578
- Recommended on Windows:
579
-
580
- 1. Install Visual Studio Build Tools with the C++ workload if you use graph-aware tools regularly.
581
- 2. Prefer stable local/global CLI usage for GitNexus when your MCP client supports `env`.
582
- 3. Increase GitNexus connect/call timeouts on slower or first-run environments.
583
-
584
- Quick install command (Windows):
585
-
586
- ```powershell
587
- winget install Microsoft.VisualStudio.2022.BuildTools
588
- ```
589
-
590
- Example config using a preinstalled `gitnexus` CLI:
591
-
592
- ```json
593
- {
594
- "mcpServers": {
595
- "mcp-probe-kit": {
596
- "command": "mcp-probe-kit",
597
- "env": {
598
- "MCP_GITNEXUS_COMMAND": "gitnexus",
599
- "MCP_GITNEXUS_ARGS": "mcp",
600
- "MCP_GITNEXUS_CONNECT_TIMEOUT_MS": "30000",
601
- "MCP_GITNEXUS_TIMEOUT_MS": "45000"
602
- }
603
- }
604
- }
605
- }
606
- ```
607
-
608
- ### Restart Client
609
-
610
- After configuration, **completely quit and reopen** your MCP client.
611
-
612
- **👉 [Detailed Installation Guide](https://mcp-probe-kit.bytezonex.com/pages/getting-started.html)**
613
-
614
- ---
615
-
616
- ## 💡 Usage Examples
617
-
618
- ### Daily Development
619
- ```bash
620
- code_review @feature.ts # Code review
621
- gentest @feature.ts # Generate tests
622
- gencommit # Generate commit message
623
- ```
624
-
625
- ### New Feature Development
626
- ```bash
627
- start_feature user-auth "User authentication feature"
628
- # Auto-complete: Requirements analysis → Design → Effort estimation
629
- ```
630
-
631
- ### Bug Fixing
632
- ```bash
633
- start_bugfix
634
- # Then paste error message
635
- # Auto-complete: Problem location → Fix solution → Test code
636
- ```
637
-
638
- ### Product Design
639
- ```bash
640
- start_product "Online Education Platform" --product_type=SaaS
641
- # Auto-complete: PRD → Prototype → Design system → HTML prototype
642
- ```
643
-
644
- ### UI Development
645
- ```bash
646
- start_ui "Login Page" --mode=auto
647
- # Auto-complete: Design system → Component generation → Code output
648
- ```
649
-
650
- ### Project Context Documentation
651
- ```bash
652
- # Single file mode (default) - Generate a complete project-context.md
653
- init_project_context
654
-
655
- # Modular mode - Generate 6 category docs (suitable for large projects)
656
- init_project_context --mode=modular
657
- # Generates: project-context.md (index) + 5 category docs
658
- ```
659
-
660
- ### Git Work Report
661
- ```bash
662
- # Generate daily report
663
- git_work_report --date 2026-02-03
664
-
665
- # Generate weekly report
666
- git_work_report --start_date 2026-02-01 --end_date 2026-02-07
667
-
668
- # Save to file
669
- git_work_report --date 2026-02-03 --output_file daily-report.md
670
- # Auto-analyze Git diff, generate concise professional report
671
- # If direct command fails, auto-provides temp script solution (auto-deletes after execution)
672
- ```
673
-
674
- **👉 [More Usage Examples](https://mcp-probe-kit.bytezonex.com/pages/examples.html)**
675
-
676
- ---
677
-
678
- ## FAQ
679
-
680
- ### Q1: Tool not working or errors?
681
-
682
- Check detailed logs:
683
-
684
- **Windows (PowerShell):**
685
- ```powershell
686
- npx -y mcp-probe-kit@latest 2>&1 | Tee-Object -FilePath .\mcp-probe-kit.log
687
- ```
688
-
689
- **macOS/Linux:**
690
- ```bash
691
- npx -y mcp-probe-kit@latest 2>&1 | tee ./mcp-probe-kit.log
692
- ```
693
-
694
- ### Q2: Client not recognizing tools after configuration?
695
-
696
- 1. **Restart client** (completely quit then reopen)
697
- 2. Check config file path is correct
698
- 3. Confirm JSON format is correct, no syntax errors
699
- 4. Check client developer tools or logs for error messages
700
-
701
- ### Q3: How to update to latest version?
702
-
703
- **npx method (Recommended):**
704
- Use `@latest` tag in config, automatically uses latest version.
705
-
706
- **Global installation method:**
707
- ```bash
708
- npm update -g mcp-probe-kit
709
- ```
710
-
711
- ### Q4: Why are graph-aware tools slow or timing out on Windows the first time?
712
-
713
- This usually affects `code_insight`, `start_feature`, `start_bugfix`, and `init_project_context`.
714
-
715
- Common causes:
716
-
717
- 1. `npx -y gitnexus@latest mcp` performs a cold start and may spend 20+ seconds checking/downloading packages.
718
- 2. GitNexus may need native `tree-sitter-*` modules, which can require Visual Studio Build Tools on Windows.
719
-
720
- If you see logs like:
721
-
722
- ```text
723
- gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use
724
- gyp ERR! find VS - missing any VC++ toolset
725
- ```
726
-
727
- Try this:
728
-
729
- 1. Install Visual Studio Build Tools with the C++ workload.
730
- 2. Retry once after dependencies finish installing.
731
- 3. If your client supports `env`, switch the bridge to a preinstalled `gitnexus` CLI and raise:
732
- `MCP_GITNEXUS_CONNECT_TIMEOUT_MS`
733
- `MCP_GITNEXUS_TIMEOUT_MS`
734
-
735
- **👉 [More FAQ](https://mcp-probe-kit.bytezonex.com/pages/getting-started.html)**
736
-
737
- ---
738
-
739
- ## 🤝 Contributing
740
-
741
- Issues and Pull Requests welcome!
742
-
743
- **Improvement suggestions:**
744
- - Add useful tools
745
- - Optimize existing tool prompts
746
- - Improve documentation and examples
747
- - Fix bugs
748
-
749
- ---
750
-
751
- ## 📄 License
752
-
753
- MIT License
754
-
755
- ---
756
-
757
- ## 🔗 Related Links
758
-
759
- - **Author**: [Kyle (小墨)](https://www.bytezonex.com/)
760
- - **GitHub**: [mcp-probe-kit](https://github.com/mybolide/mcp-probe-kit)
761
- - **npm**: [mcp-probe-kit](https://www.npmjs.com/package/mcp-probe-kit)
762
- - **Documentation**: [https://mcp-probe-kit.bytezonex.com](https://mcp-probe-kit.bytezonex.com/)
763
-
764
- **Related Projects:**
765
- - [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) - Official MCP protocol docs
766
- - [GitHub Spec-Kit](https://github.com/github/spec-kit) - GitHub spec-driven development toolkit
767
- - [ui-ux-pro-max-skill](https://github.com/nextlevelbuilder/ui-ux-pro-max-skill) - UI/UX design system philosophy source
768
- - [json-render](https://github.com/vercel-labs/json-render) - JSON template rendering engine inspiration
769
- - [uipro-cli](https://www.npmjs.com/package/uipro-cli) - UI/UX data source
770
-
771
- ---
772
-
773
- **Made with ❤️ for AI-Powered Development**
1
+ # mcp-probe-kit — Know the Context, Feed the Moment
2
+
3
+ <div align="center">
4
+ <img src="docs/assets/logo.png" alt="知时MCP Logo" width="160"/>
5
+ <h1>知时MCP | mcp-probe-kit</h1>
6
+ <p><strong>Know the Context, Feed the Moment.</strong></p>
7
+ <p>
8
+ <code>Introspection</code> · <code>Context Hydration</code> · <code>Delegated Orchestration</code>
9
+ </p>
10
+ </div>
11
+
12
+ ---
13
+
14
+ <!-- mcp-name: io.github.mybolide/mcp-probe-kit -->
15
+
16
+ > **Talk is cheap, show me the Context.**
17
+ >
18
+ > mcp-probe-kit is a protocol-level toolkit designed for developers who want AI to truly understand their project's intent. It's not just a collection of 30 tools—it's a context-aware system that helps AI agents grasp what you're building.
19
+
20
+ **Languages**: [English](README.md) | [简体中文](i18n/README.zh-CN.md) | [日本語](i18n/README.ja-JP.md) | [한국어](i18n/README.ko-KR.md) | [Español](i18n/README.es-ES.md) | [Français](i18n/README.fr-FR.md) | [Deutsch](i18n/README.de-DE.md) | [Português (BR)](i18n/README.pt-BR.md)
21
+
22
+ [![npm version](https://img.shields.io/npm/v/mcp-probe-kit.svg)](https://www.npmjs.com/package/mcp-probe-kit)
23
+ [![npm downloads](https://img.shields.io/npm/dm/mcp-probe-kit.svg)](https://www.npmjs.com/package/mcp-probe-kit)
24
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
25
+ [![GitHub stars](https://img.shields.io/github/stars/mybolide/mcp-probe-kit.svg)](https://github.com/mybolide/mcp-probe-kit/stargazers)
26
+
27
+ > 🚀 AI-Powered Complete Development Toolkit - Covering the Entire Development Lifecycle
28
+
29
+ A powerful MCP (Model Context Protocol) server providing **30 tools** covering the complete workflow from product analysis to final release (Requirements → Design → Development → Quality → Release), all tools support **structured output**.
30
+
31
+ **🎉 v3.0 Major Update**: Streamlined tool count, focus on core competencies, eliminate choice paralysis, let AI do more native work
32
+
33
+ **Supports All MCP Clients**: Cursor, Claude Desktop, Cline, Continue, and more
34
+
35
+ **Protocol Version**: MCP 2025-11-25 · **SDK**: @modelcontextprotocol/sdk 1.27.1
36
+
37
+ ---
38
+
39
+ ## 📚 Complete Documentation
40
+
41
+ **👉 [https://mcp-probe-kit.bytezonex.com](https://mcp-probe-kit.bytezonex.com/)**
42
+
43
+ - [Quick Start](https://mcp-probe-kit.bytezonex.com/pages/getting-started.html) - Setup in 5 minutes
44
+ - [Local Memory Stack (Qdrant + Nomic Embed)](docs/memory-local-setup.md) - Docker Compose, ports `50008` / `50012`, MCP env
45
+ - [All Tools](https://mcp-probe-kit.bytezonex.com/pages/all-tools.html) - Complete list of 30 tools
46
+ - [Best Practices](https://mcp-probe-kit.bytezonex.com/pages/examples.html) - Full development workflow guide
47
+ - [v3.0 Migration Guide](https://mcp-probe-kit.bytezonex.com/pages/migration.html) - Upgrade from v2.x to v3.0
48
+
49
+ ---
50
+
51
+ ## ✨ Core Features
52
+
53
+ ### 📦 30 Tools
54
+
55
+ - **🔄 Workflow Orchestration** (6 tools) - One-click complex development workflows
56
+ - `start_feature`, `start_bugfix`, `start_onboard`, `start_ui`, `start_product`, `start_ralph`
57
+ - **🔍 Code Analysis** (4 tools) - Code quality, refactoring, and graph insight
58
+ - `code_review`, `code_insight`, `fix_bug`, `refactor`
59
+ - **📝 Git Tools** (2 tools) - Git commits and work reports
60
+ - `gencommit`, `git_work_report`
61
+ - **⚡ Code Generation** (1 tool) - Test generation
62
+ - `gentest`
63
+ - **📦 Project Management** (7 tools) - Project initialization, requirements, and spec validation
64
+ - `init_project`, `init_project_context`, `add_feature`, `check_spec`, `estimate`, `interview`, `ask_user`
65
+ - **🎨 UI/UX Utilities** (3 tools) - Design systems and UI data synchronization
66
+ - `ui_design_system`, `ui_search`, `sync_ui_data`
67
+ - **🧠 Memory** (6 tools) - Reusable asset memory
68
+ - `search_memory`, `read_memory_asset`, `memorize_asset`, `update_memory_asset`, `delete_memory_asset`, `scan_and_extract_patterns`
69
+
70
+ ### 🛡️ Quality Constraints (single source of truth)
71
+
72
+ All hard quality rules live in one module (`src/lib/quality-constraints.ts`) and are injected into `code_review`, the `add_feature` task templates, and the UI tools. Change once, apply everywhere — inspired by [taste-skill](https://github.com/Leonxlnx/taste-skill) and [impeccable](https://github.com/pbakaus/impeccable).
73
+
74
+ - **Code limits**: single file ≤ 500 lines (split into modules/components when exceeded), function ≤ 50 lines, nesting ≤ 4, parameters ≤ 3.
75
+ - **Completeness blacklist**: `code_review` flags placeholder/elision patterns (`// ...`, `// TODO`, `// rest of code`, bare `...`) as CRITICAL — "a partial output is a broken output".
76
+ - **Anti-laziness task templates**: `add_feature` tasks now carry a Scope-lock deliverable count, a mandatory evidence block (read code before writing), a per-file line budget, and a binary zero-tolerance rule for placeholders. `check_spec` validates these (missing Scope-lock = error, thin task without evidence = warning).
77
+ - **UI hard red lines**: numeric, machine-checkable rules — 4pt spacing scale, WCAG contrast (4.5/3/3), type scale ≥ 1.25, hero font ≤ 6rem, OKLCH, eight interaction states, cognitive load ≤ 4, motion 150-300ms.
78
+ - **UI banned list + Pre-Flight checklist**: match-and-refuse blacklist for AI slop (default Inter/Roboto, AI purple-blue gradients, gradient text, cookie-cutter card grids, em-dash, cream/beige body backgrounds, nested cards) plus a delivery-gate self-check matrix.
79
+
80
+ ### 🧠 Code Graph Bridge (GitNexus)
81
+
82
+ - `code_insight` bridges GitNexus by default for query/context/impact analysis
83
+ - The bridge launches `npx -y gitnexus@latest mcp` by default to reduce stale package risk
84
+ - `init_project_context` bootstraps baseline graph docs under `docs/graph-insights/`; if `docs/project-context.md` already exists, it preserves the old context docs and only backfills graph docs plus the index entry
85
+ - `start_feature` refreshes the GitNexus index and runs task-level `query/context/impact` narrowing before spec generation to reduce over-scoping
86
+ - `start_bugfix` refreshes the GitNexus index and runs task-level graph analysis before TBP RCA to constrain failure boundary and blast radius
87
+ - Older projects that already have `project-context.md` but no graph docs are bootstrapped automatically through the `init_project_context` step
88
+ - If GitNexus is unavailable, the server falls back automatically without breaking orchestration
89
+ - Real graph queries read the `.gitnexus` index; `docs/graph-insights/latest.md|json` are readable snapshots for humans and AI agents
90
+ - Graph snapshots are exposed as MCP resources: Cursor lists **2 entries** (`probe://status`, `probe://graph/latest`); `latest` embeds history and file index. On-demand URIs (`probe://graph/history`, `probe://graph/latest.md`, `probe://graph/files`) remain readable via `resources/read`
91
+ - Graph snapshots are also persisted to readable files in `.mcp-probe-kit/graph-snapshots` (customizable via `MCP_GRAPH_SNAPSHOT_DIR`)
92
+ - Tool responses include `_meta.graph` with snapshot URI and local JSON/Markdown file paths
93
+
94
+ ### 🐛 TBP 8-Step RCA for Bug Workflows
95
+
96
+ - `start_bugfix` defaults to Toyota-style TBP 8-step root-cause analysis before repair
97
+ - `fix_bug` returns a structured TBP skeleton covering phenomenon, timeline, ruled-out paths, boundary, root cause, evidence, and repair plan
98
+ - This makes bug, regression, anomaly, and "why didn't it work" investigations follow analyze-first discipline instead of patching symptoms
99
+
100
+ ### 🧠 Memory Retrieval
101
+
102
+ - Memory tools use **Qdrant** as the vector database backend
103
+ - Embedding service supports two modes:
104
+ - `ollama`
105
+ - `openai-compatible`
106
+
107
+ **Memory tools:**
108
+ - `search_memory` - Semantic search across the shared memory pool (optionally prefer `type` / `tags`); text output includes `id`, `score`, summary, description, and a `--- content ---` body (default up to 1500 chars via `MEMORY_SEARCH_CONTENT_MAX_CHARS`)
109
+ - `memorize_asset` - Persist reusable code/spec/pattern assets into vector memory
110
+ - `read_memory_asset` - Read full asset content by `asset_id` (text output includes the full `content` body)
111
+ - `update_memory_asset` - Update an existing asset by `asset_id` (preserves ID; `content` changes re-embed)
112
+ - `delete_memory_asset` - Delete an asset by `asset_id` from the shared pool
113
+ - `scan_and_extract_patterns` - Extract reusable patterns from code/file/directory before deciding whether to persist
114
+
115
+ **Cross-repo memory pools:** do not rely on `source_project` / `source_path` for shared retrieval; put file paths in `content` instead. Search injection hides foreign `sourcePath` unless `MEMORY_REPO_ID` matches or `MEMORY_SEARCH_SHOW_SOURCE=true`.
116
+
117
+ **Memory backend and embedding configuration:**
118
+ - Vector database: **Qdrant**
119
+ - **Recommended local setup:** `Qdrant (port 50008) + Infinity / nomic-embed (port 50012)` — lighter than Ollama; see **[Local Memory Stack guide](docs/memory-local-setup.md)** (中文: [memory-local-setup.zh-CN.md](docs/memory-local-setup.zh-CN.md))
120
+ - Supported embedding providers:
121
+ - `ollama`
122
+ - `openai-compatible` (Infinity, OpenAI, etc.)
123
+ - Required environment variables for memory write/search:
124
+ - `MEMORY_QDRANT_URL`
125
+ - `MEMORY_EMBEDDING_URL`
126
+ - `MEMORY_EMBEDDING_MODEL`
127
+ - Optional environment variables:
128
+ - `MEMORY_QDRANT_API_KEY`
129
+ - `MEMORY_QDRANT_COLLECTION` (default: `mcp_probe_memory`)
130
+ - `MEMORY_EMBEDDING_API_KEY`
131
+ - `MEMORY_EMBEDDING_PROVIDER` (`ollama` by default)
132
+ - `MEMORY_SEARCH_LIMIT` (default: `3`)
133
+ - `MEMORY_SUMMARY_MAX_CHARS` (default: `280`)
134
+ - `MEMORY_SEARCH_MIN_SCORE` (default: `0` = disabled; try `0.72` for noisy pools)
135
+ - `MEMORY_SEARCH_SHOW_SOURCE` (default: `false`)
136
+ - `MEMORY_REPO_ID` (optional; show `sourcePath` only when `sourceProject` matches)
137
+ - `MEMORY_INJECTION_CONTENT_MAX_CHARS` (default: `1500`; max content per hit injected into `start_*` guides)
138
+ - Behavior notes:
139
+ - Read-only memory access only requires `MEMORY_QDRANT_URL`
140
+ - Memory write is enabled only when `MEMORY_QDRANT_URL`, `MEMORY_EMBEDDING_URL`, and `MEMORY_EMBEDDING_MODEL` are all configured
141
+ - The Qdrant collection is auto-created on first write, and vector dimension is inferred from the first embedding response
142
+
143
+ **Recommended local memory setup (Qdrant + Nomic Embed / Infinity):**
144
+
145
+ Full Docker Compose, ports, and troubleshooting: **[docs/memory-local-setup.md](docs/memory-local-setup.md)**
146
+
147
+ ```json
148
+ {
149
+ "mcpServers": {
150
+ "mcp-probe-kit": {
151
+ "command": "npx",
152
+ "args": ["-y", "mcp-probe-kit@latest"],
153
+ "env": {
154
+ "MEMORY_QDRANT_URL": "http://127.0.0.1:50008",
155
+ "MEMORY_QDRANT_API_KEY": "your-qdrant-api-key",
156
+ "MEMORY_QDRANT_COLLECTION": "mcp_probe_memory",
157
+ "MEMORY_EMBEDDING_PROVIDER": "openai-compatible",
158
+ "MEMORY_EMBEDDING_URL": "http://127.0.0.1:50012/embeddings",
159
+ "MEMORY_EMBEDDING_MODEL": "nomic-ai/nomic-embed-text-v1.5",
160
+ "MEMORY_EMBEDDING_API_KEY": "your-infinity-api-key",
161
+ "MEMORY_SEARCH_LIMIT": "3",
162
+ "MEMORY_SUMMARY_MAX_CHARS": "280"
163
+ }
164
+ }
165
+ }
166
+ }
167
+ ```
168
+
169
+ **Alternative: Qdrant + Ollama** (if you already run Ollama):
170
+
171
+ ```bash
172
+ docker run -d --name mcp-qdrant -p 6333:6333 qdrant/qdrant
173
+ ollama pull nomic-embed-text
174
+ ```
175
+
176
+ ```json
177
+ "MEMORY_QDRANT_URL": "http://127.0.0.1:6333",
178
+ "MEMORY_EMBEDDING_PROVIDER": "ollama",
179
+ "MEMORY_EMBEDDING_URL": "http://127.0.0.1:11434/api/embeddings",
180
+ "MEMORY_EMBEDDING_MODEL": "nomic-embed-text"
181
+ ```
182
+
183
+ **OpenAI-compatible embedding (hosted API):**
184
+ ```json
185
+ {
186
+ "mcpServers": {
187
+ "mcp-probe-kit": {
188
+ "command": "npx",
189
+ "args": ["-y", "mcp-probe-kit@latest"],
190
+ "env": {
191
+ "MEMORY_QDRANT_URL": "http://127.0.0.1:6333",
192
+ "MEMORY_QDRANT_COLLECTION": "mcp_probe_memory",
193
+ "MEMORY_EMBEDDING_PROVIDER": "openai-compatible",
194
+ "MEMORY_EMBEDDING_URL": "https://your-embedding-endpoint/v1/embeddings",
195
+ "MEMORY_EMBEDDING_API_KEY": "your-api-key",
196
+ "MEMORY_EMBEDDING_MODEL": "text-embedding-3-small"
197
+ }
198
+ }
199
+ }
200
+ }
201
+ ```
202
+
203
+ ### 🎯 Structured Output
204
+
205
+ Core and orchestration tools support **structured output**, returning machine-readable JSON data, improving AI parsing accuracy, supporting tool chaining and state tracking.
206
+
207
+ ### ⏱️ Native Tasks, Progress, and Cancellation
208
+
209
+ - Built on MCP SDK native task support (`taskStore` + `taskMessageQueue`)
210
+ - Supports task lifecycle endpoints: `tasks/get`, `tasks/result`, `tasks/list`, `tasks/cancel`
211
+ - Advertises `capabilities.tasks.requests.tools.call` so clients can create tasks for `tools/call`
212
+ - Emits `notifications/progress` when client provides `_meta.progressToken`
213
+ - Handles request cancellation via `AbortSignal` and returns a clear cancellation error
214
+ - Long-running orchestration tools (`start_*`) and `sync_ui_data` support cooperative cancellation/progress callbacks
215
+
216
+ ### 🔌 Extensions & UI Apps (Optional)
217
+
218
+ - Trace metadata passthrough: request `_meta.trace` is preserved in tool responses (`_meta.trace`)
219
+ - Optional extensions capability switch: enable with `MCP_ENABLE_EXTENSIONS_CAPABILITY=1`
220
+ - Optional MCP Apps resource output for UI tools: enable with `MCP_ENABLE_UI_APPS=1`
221
+ - UI tools can expose preview resources via `ui://...` and response `_meta.ui.resourceUri`
222
+
223
+ ### 🧭 Delegated Orchestration Protocol
224
+
225
+ All `start_*` orchestration tools return an **execution plan** in `structuredContent.metadata.plan`.
226
+ AI needs to **call tools step by step and persist files**, rather than the tool executing internally.
227
+
228
+ **Plan Schema (Core Fields)**:
229
+ ```json
230
+ {
231
+ "mode": "delegated",
232
+ "steps": [
233
+ {
234
+ "id": "spec",
235
+ "tool": "add_feature",
236
+ "args": { "feature_name": "user-auth", "description": "User authentication feature" },
237
+ "outputs": ["docs/specs/user-auth/requirements.md"]
238
+ }
239
+ ]
240
+ }
241
+ ```
242
+
243
+ **Field Description**:
244
+ - `mode`: Fixed as `delegated`
245
+ - `steps`: Array of execution steps
246
+ - `tool`: Tool name (e.g. `add_feature`)
247
+ - `action`: Manual action description when no tool (e.g. `update_project_context`)
248
+ - `args`: Tool parameters
249
+ - `outputs`: Expected artifacts
250
+ - `when/dependsOn/note`: Optional conditions and notes
251
+
252
+ ### 🧩 Structured Output Field Specification (Key Fields)
253
+
254
+ Both orchestration and atomic tools return `structuredContent`, common fields:
255
+ - `summary`: One-line summary
256
+ - `status`: Status (pending/success/failed/partial)
257
+ - `steps`: Execution steps (orchestration tools)
258
+ - `artifacts`: Artifact list (path + purpose)
259
+ - `metadata.plan`: Delegated execution plan (only start_*)
260
+ - `specArtifacts`: Specification artifacts (start_feature)
261
+ - `estimate`: Estimation results (start_feature / estimate)
262
+
263
+ ### 🧠 Requirements Clarification Mode (Requirements Loop)
264
+
265
+ When requirements are unclear, use `requirements_mode=loop` in `start_feature / start_bugfix / start_ui`.
266
+ This mode performs 1-2 rounds of structured clarification before entering spec/fix/UI execution.
267
+
268
+ **Example:**
269
+ ```json
270
+ {
271
+ "feature_name": "user-auth",
272
+ "description": "User authentication feature",
273
+ "requirements_mode": "loop",
274
+ "loop_max_rounds": 2,
275
+ "loop_question_budget": 5
276
+ }
277
+ ```
278
+
279
+ ### 🧩 Template System (Regular Model Friendly)
280
+
281
+ `add_feature` supports template profiles, default `auto` auto-selects: prefers `guided` when requirements are incomplete (includes detailed filling rules and checklists), selects `strict` when requirements are complete (more compact structure, suitable for high-capability models or archival scenarios).
282
+
283
+ **Example:**
284
+ ```json
285
+ {
286
+ "description": "Add user authentication feature",
287
+ "template_profile": "auto"
288
+ }
289
+ ```
290
+
291
+ **Applicable Tools**:
292
+ - `start_feature` passes `template_profile` to `add_feature`
293
+ - `start_bugfix` / `start_ui` also support `template_profile` for controlling guidance strength (auto/guided/strict)
294
+
295
+ **Template Profile Strategy**:
296
+ - `guided`: Less/incomplete requirements info, regular model priority
297
+ - `strict`: Requirements structured, prefer more compact guidance
298
+ - `auto`: Default recommendation, auto-selects guided/strict
299
+
300
+ ### 🔄 Workflow Orchestration
301
+
302
+ 6 intelligent orchestration tools that automatically combine multiple basic tools for one-click complex development workflows:
303
+ - `start_feature` - New feature development (Requirements → Design → Estimation)
304
+ - `start_bugfix` - Bug fixing (TBP 8-step RCA → Fix → Testing)
305
+ - `start_onboard` - Project onboarding (Generate project context docs)
306
+ - `start_ui` - UI development (Design system → Components → Code)
307
+ - `start_product` - Product design (PRD → Prototype → Design system → HTML)
308
+ - `start_ralph` - Ralph Loop (Iterative development until goal completion)
309
+
310
+ ### 🚀 Product Design Workflow
311
+
312
+ `start_product` is a complete product design orchestration tool, from requirements to interactive prototype:
313
+
314
+ **Workflow:**
315
+ 1. **Requirements Analysis** - Generate standard PRD (product overview, feature requirements, page list)
316
+ 2. **Prototype Design** - Generate detailed prototype docs for each page
317
+ 3. **Design System** - Generate design specifications based on product type
318
+ 4. **HTML Prototype** - Generate interactive prototype viewable in browser
319
+ 5. **Project Context** - Auto-update project documentation
320
+
321
+ **Structured Output Additions**:
322
+ - `start_product.structuredContent.artifacts`: Artifact list (PRD, prototypes, design system, etc.)
323
+ - `interview.structuredContent.mode`: `usage` / `questions` / `record`
324
+
325
+ ### 🎨 UI/UX Pro Max
326
+
327
+ 4 UI/UX tools with `start_ui` as the unified entry point:
328
+ - `start_ui` - One-click UI development (supports intelligent mode) (orchestration tool)
329
+ - `ui_design_system` - Intelligent design system generation
330
+ - `ui_search` - UI/UX data search (BM25 algorithm)
331
+ - `sync_ui_data` - Sync latest UI/UX data locally
332
+
333
+ **Note**: `start_ui` automatically calls `ui_design_system` and `ui_search`, you don't need to call them separately.
334
+
335
+ **Inspiration:**
336
+ - [ui-ux-pro-max-skill](https://github.com/nextlevelbuilder/ui-ux-pro-max-skill) - UI/UX design system philosophy
337
+ - [json-render](https://github.com/vercel-labs/json-render) - JSON template rendering engine
338
+
339
+ **Skill Bridge for UI/PRD workflows:**
340
+ - `start_ui` and `start_product` now include a Skill Bridge section in guidance and `structuredContent.metadata.skills`.
341
+ - Recommended skill call order: `ui-ux-pro-max` → `interaction-design` → `frontend-design`.
342
+ - If some skills are missing, workflow continues with MCP main plan and marks unavailable skills in metadata.
343
+
344
+ **Why use `sync_ui_data`?**
345
+
346
+ Our `start_ui` tool relies on a rich UI/UX database (colors, icons, charts, components, design patterns, etc.) to generate high-quality design systems and code. This data comes from npm package [uipro-cli](https://www.npmjs.com/package/uipro-cli), including:
347
+ - 🎨 Color schemes (mainstream brand colors, color palettes)
348
+ - 🔣 Icon libraries (React Icons, Heroicons, etc.)
349
+ - 📊 Chart components (Recharts, Chart.js, etc.)
350
+ - 🎯 Landing page templates (SaaS, e-commerce, government, etc.)
351
+ - 📐 Design specifications (spacing, fonts, shadows, etc.)
352
+
353
+ **Data Sync Strategy:**
354
+ 1. **Embedded Data**: Synced at build time, works offline
355
+ 2. **Background Auto Sync**: Downloads latest data to `~/.mcp-probe-kit/ui-ux-data/` without changing current session output
356
+ 3. **Next-Start Activation**: Newly downloaded data is applied on next process start (keeps current session deterministic)
357
+ 4. **Manual Sync**: Use `sync_ui_data` to force refresh cache immediately (still applies next start by default)
358
+
359
+ This ensures `start_ui` can generate professional-grade UI code even offline.
360
+
361
+ ### 🎤 Requirements Interview
362
+
363
+ 2 interview tools to clarify requirements before development:
364
+ - `interview` - Structured requirements interview
365
+ - `ask_user` - AI proactive questioning
366
+
367
+ ---
368
+
369
+ ## 🧭 Tool Selection Guide
370
+
371
+ ### When to use orchestration tools vs individual tools?
372
+
373
+ **Use orchestration tools (start_*) when:**
374
+ - ✅ Need complete workflow (multiple steps)
375
+ - ✅ Want to automate multiple tasks
376
+ - ✅ Need to generate multiple artifacts (docs, code, tests, etc.)
377
+
378
+ **Use individual tools when:**
379
+ - ✅ Only need specific functionality
380
+ - ✅ Already have project context docs
381
+ - ✅ Need more fine-grained control
382
+
383
+ ### Common Scenario Selection
384
+
385
+ | Scenario | Recommended Tool | Reason |
386
+ |---------|-----------------|--------|
387
+ | Develop new feature (complete flow) | `start_feature` | Auto-complete: spec→estimation |
388
+ | Only need feature spec docs | `add_feature` | More lightweight, only generates docs |
389
+ | Fix bug (complete flow) | `start_bugfix` | Root-cause-first flow: TBP RCA → fix → test |
390
+ | Only need bug analysis | `fix_bug` | TBP 8-step RCA only, without full orchestration |
391
+ | Generate design system | `ui_design_system` | Directly generate design specs |
392
+ | Develop UI components | `start_ui` | Complete flow: design→components→code |
393
+ | Product design (requirements to prototype) | `start_product` | One-click: PRD→prototype→HTML |
394
+ | One-sentence requirement analysis | `init_project` | Generate complete project spec docs |
395
+ | Project onboarding docs | `init_project_context` | Generate tech stack/architecture/conventions |
396
+
397
+ ---
398
+
399
+ ## 🚀 Quick Start
400
+
401
+ ### Method 1: Use directly with npx (Recommended)
402
+
403
+ No installation needed, use the latest version directly.
404
+
405
+ #### Cursor / Cline Configuration
406
+
407
+ **Config file location:**
408
+ - Windows: `%APPDATA%\Cursor\User\globalStorage\saoudrizwan.claude-dev\settings\cline_mcp_settings.json`
409
+ - macOS: `~/Library/Application Support/Cursor/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json`
410
+ - Linux: `~/.config/Cursor/User/globalStorage/saoudrizwan.claude-dev/settings/cline_mcp_settings.json`
411
+
412
+ **Config content:**
413
+ ```json
414
+ {
415
+ "mcpServers": {
416
+ "mcp-probe-kit": {
417
+ "command": "npx",
418
+ "args": ["-y", "mcp-probe-kit@latest"],
419
+ "env": {
420
+ "MCP_PROJECT_ROOT": "${workspaceFolder}"
421
+ }
422
+ }
423
+ }
424
+ }
425
+ ```
426
+
427
+ > **Skill 自动安装**:任意 MCP 工具调用会在用户项目写入 `.agents/skills/mcp-probe-kit/SKILL.md`。务必设置 `MCP_PROJECT_ROOT`(或 Cursor 注入的 `WORKSPACE_FOLDER_PATHS`),否则可能写到错误目录。需 **v3.6.1+**。
428
+
429
+ #### Claude Desktop Configuration
430
+
431
+ **Config file location:**
432
+ - Windows: `%APPDATA%\Claude\claude_desktop_config.json`
433
+ - macOS: `~/Library/Application Support/Claude/claude_desktop_config.json`
434
+ - Linux: `~/.config/Claude/claude_desktop_config.json`
435
+
436
+ **Config content:**
437
+ ```json
438
+ {
439
+ "mcpServers": {
440
+ "mcp-probe-kit": {
441
+ "command": "npx",
442
+ "args": ["-y", "mcp-probe-kit@latest"],
443
+ "env": {
444
+ "MCP_PROJECT_ROOT": "${workspaceFolder}"
445
+ }
446
+ }
447
+ }
448
+ }
449
+ ```
450
+
451
+ #### OpenCode Configuration
452
+
453
+ **Config file location:**
454
+ - Project-level: `opencode.json` (in project root)
455
+ - Global: `~/.config/opencode/opencode.json`
456
+
457
+ **Config content:**
458
+ ```json
459
+ {
460
+ "mcp": {
461
+ "mcp-probe-kit": {
462
+ "type": "local",
463
+ "command": ["npx", "-y", "mcp-probe-kit@latest"],
464
+ "enabled": true
465
+ }
466
+ }
467
+ }
468
+ ```
469
+
470
+ > **Note:** OpenCode uses `opencode.json` with a different schema from Cursor/Claude Desktop. The key `mcp` replaces `mcpServers`, `command` is an array, `type: "local"` is required, and environment variables use `environment` instead of `env`. See [OpenCode MCP docs](https://opencode.ai/docs/mcp) for details.
471
+
472
+ ### Method 2: Global Installation
473
+
474
+ ```bash
475
+ npm install -g mcp-probe-kit
476
+ ```
477
+
478
+ Use in config file:
479
+ ```json
480
+ {
481
+ "mcpServers": {
482
+ "mcp-probe-kit": {
483
+ "command": "mcp-probe-kit"
484
+ }
485
+ }
486
+ }
487
+ ```
488
+
489
+ ### Optional Memory System Setup
490
+
491
+ If you want to use `memorize_asset`, `update_memory_asset`, `read_memory_asset`, `delete_memory_asset`, and `scan_and_extract_patterns`, configure as follows:
492
+
493
+ - **Qdrant only** (`MEMORY_QDRANT_URL`): `read_memory_asset`, `delete_memory_asset`
494
+ - **Qdrant + embedding** (all three `MEMORY_*` write/search vars): `search_memory`, `memorize_asset`, `update_memory_asset`
495
+ - **No memory backend**: `scan_and_extract_patterns` (local scan only; persist via `memorize_asset` when ready)
496
+
497
+ For full write/search you need both:
498
+
499
+ 1. A **Qdrant** vector database
500
+ 2. An **embedding service** in either `ollama` or `openai-compatible` mode
501
+
502
+ **Full guide (Docker Compose for Qdrant + Infinity, ports `50008` / `50012`, MCP env, smoke tests):**
503
+
504
+ - English: [docs/memory-local-setup.md](docs/memory-local-setup.md)
505
+ - 中文: [docs/memory-local-setup.zh-CN.md](docs/memory-local-setup.zh-CN.md)
506
+
507
+ #### Option A: Qdrant + Nomic Embed / Infinity (recommended)
508
+
509
+ Lightweight local stack; no Ollama. Deploy Qdrant and `nomic-embed` via Docker Compose (see guide), then:
510
+
511
+ ```json
512
+ {
513
+ "mcpServers": {
514
+ "mcp-probe-kit": {
515
+ "command": "npx",
516
+ "args": ["-y", "mcp-probe-kit@latest"],
517
+ "env": {
518
+ "MEMORY_QDRANT_URL": "http://127.0.0.1:50008",
519
+ "MEMORY_QDRANT_API_KEY": "your-qdrant-api-key",
520
+ "MEMORY_QDRANT_COLLECTION": "mcp_probe_memory",
521
+ "MEMORY_EMBEDDING_PROVIDER": "openai-compatible",
522
+ "MEMORY_EMBEDDING_URL": "http://127.0.0.1:50012/embeddings",
523
+ "MEMORY_EMBEDDING_MODEL": "nomic-ai/nomic-embed-text-v1.5",
524
+ "MEMORY_EMBEDDING_API_KEY": "your-infinity-api-key",
525
+ "MEMORY_SEARCH_LIMIT": "3",
526
+ "MEMORY_SUMMARY_MAX_CHARS": "280"
527
+ }
528
+ }
529
+ }
530
+ }
531
+ ```
532
+
533
+ > Embedding URL must be `/embeddings` (not `/v1/embeddings`). Qdrant requires `api-key` when `QDRANT__SERVICE__API_KEY` is set.
534
+
535
+ #### Option B: Qdrant + Ollama
536
+
537
+ ```bash
538
+ docker run -d --name mcp-qdrant -p 6333:6333 qdrant/qdrant
539
+ ollama pull nomic-embed-text
540
+ ```
541
+
542
+ ```json
543
+ "MEMORY_QDRANT_URL": "http://127.0.0.1:6333",
544
+ "MEMORY_EMBEDDING_PROVIDER": "ollama",
545
+ "MEMORY_EMBEDDING_URL": "http://127.0.0.1:11434/api/embeddings",
546
+ "MEMORY_EMBEDDING_MODEL": "nomic-embed-text"
547
+ ```
548
+
549
+ #### Option C: Qdrant + hosted OpenAI-compatible API
550
+
551
+ ```json
552
+ "MEMORY_QDRANT_URL": "http://127.0.0.1:50008",
553
+ "MEMORY_EMBEDDING_PROVIDER": "openai-compatible",
554
+ "MEMORY_EMBEDDING_URL": "https://your-embedding-endpoint/v1/embeddings",
555
+ "MEMORY_EMBEDDING_API_KEY": "your-api-key",
556
+ "MEMORY_EMBEDDING_MODEL": "text-embedding-3-small"
557
+ ```
558
+
559
+ #### Memory Environment Variables
560
+
561
+ - `MEMORY_QDRANT_URL`: Qdrant base URL, required for all memory features
562
+ - `MEMORY_QDRANT_API_KEY`: Optional Qdrant API key
563
+ - `MEMORY_QDRANT_COLLECTION`: Collection name, default `mcp_probe_memory`
564
+ - `MEMORY_EMBEDDING_PROVIDER`: `ollama` or `openai-compatible`
565
+ - `MEMORY_EMBEDDING_URL`: Embedding endpoint URL
566
+ - `MEMORY_EMBEDDING_API_KEY`: Optional for Ollama, usually required for hosted OpenAI-compatible providers
567
+ - `MEMORY_EMBEDDING_MODEL`: Default is `nomic-embed-text`
568
+ - `MEMORY_SEARCH_LIMIT`: Default search result count is `3`
569
+ - `MEMORY_SUMMARY_MAX_CHARS`: Default summary truncation length is `280`
570
+
571
+ #### Notes
572
+
573
+ - Memory write capability is enabled only when `MEMORY_QDRANT_URL`, `MEMORY_EMBEDDING_URL`, and `MEMORY_EMBEDDING_MODEL` are configured
574
+ - Memory read capability only requires `MEMORY_QDRANT_URL`
575
+ - Qdrant collections are auto-created on first write with `Cosine` distance
576
+ - Vector size is inferred from the first embedding response
577
+
578
+ ### Windows Notes for Graph Tools
579
+
580
+ Applies to `code_insight`, `start_feature`, `start_bugfix`, and `init_project_context`.
581
+
582
+ - The GitNexus bridge uses `npx -y gitnexus@latest mcp` by default.
583
+ - On Windows, the first cold start can take 20+ seconds because `npx` may check/download packages.
584
+ - Some GitNexus dependencies use `tree-sitter-*` native modules. If your machine lacks Visual Studio Build Tools, the first install may fail with errors like `gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use`.
585
+
586
+ Recommended on Windows:
587
+
588
+ 1. Install Visual Studio Build Tools with the C++ workload if you use graph-aware tools regularly.
589
+ 2. Prefer stable local/global CLI usage for GitNexus when your MCP client supports `env`.
590
+ 3. Increase GitNexus connect/call timeouts on slower or first-run environments.
591
+
592
+ Quick install command (Windows):
593
+
594
+ ```powershell
595
+ winget install Microsoft.VisualStudio.2022.BuildTools
596
+ ```
597
+
598
+ Example config using a preinstalled `gitnexus` CLI:
599
+
600
+ ```json
601
+ {
602
+ "mcpServers": {
603
+ "mcp-probe-kit": {
604
+ "command": "mcp-probe-kit",
605
+ "env": {
606
+ "MCP_GITNEXUS_COMMAND": "gitnexus",
607
+ "MCP_GITNEXUS_ARGS": "mcp",
608
+ "MCP_GITNEXUS_CONNECT_TIMEOUT_MS": "30000",
609
+ "MCP_GITNEXUS_TIMEOUT_MS": "45000"
610
+ }
611
+ }
612
+ }
613
+ }
614
+ ```
615
+
616
+ ### Restart Client
617
+
618
+ After configuration, **completely quit and reopen** your MCP client.
619
+
620
+ **👉 [Detailed Installation Guide](https://mcp-probe-kit.bytezonex.com/pages/getting-started.html)**
621
+
622
+ ---
623
+
624
+ ## 💡 Usage Examples
625
+
626
+ ### Daily Development
627
+ ```bash
628
+ code_review @feature.ts # Code review
629
+ gentest @feature.ts # Generate tests
630
+ gencommit # Generate commit message
631
+ ```
632
+
633
+ ### New Feature Development
634
+ ```bash
635
+ start_feature user-auth "User authentication feature"
636
+ # Auto-complete: Requirements analysis → Design → Effort estimation
637
+ ```
638
+
639
+ ### Bug Fixing
640
+ ```bash
641
+ start_bugfix
642
+ # Then paste error message
643
+ # Auto-complete: Problem location → Fix solution → Test code
644
+ ```
645
+
646
+ ### Product Design
647
+ ```bash
648
+ start_product "Online Education Platform" --product_type=SaaS
649
+ # Auto-complete: PRD → Prototype → Design system → HTML prototype
650
+ ```
651
+
652
+ ### UI Development
653
+ ```bash
654
+ start_ui "Login Page" --mode=auto
655
+ # Auto-complete: Design system Component generation Code output
656
+ ```
657
+
658
+ ### Project Context Documentation
659
+ ```bash
660
+ # Single file mode (default) - Generate a complete project-context.md
661
+ init_project_context
662
+
663
+ # Modular mode - Generate 6 category docs (suitable for large projects)
664
+ init_project_context --mode=modular
665
+ # Generates: project-context.md (index) + 5 category docs
666
+ ```
667
+
668
+ ### Git Work Report
669
+ ```bash
670
+ # Generate daily report
671
+ git_work_report --date 2026-02-03
672
+
673
+ # Generate weekly report
674
+ git_work_report --start_date 2026-02-01 --end_date 2026-02-07
675
+
676
+ # Save to file
677
+ git_work_report --date 2026-02-03 --output_file daily-report.md
678
+ # Auto-analyze Git diff, generate concise professional report
679
+ # If direct command fails, auto-provides temp script solution (auto-deletes after execution)
680
+ ```
681
+
682
+ **👉 [More Usage Examples](https://mcp-probe-kit.bytezonex.com/pages/examples.html)**
683
+
684
+ ---
685
+
686
+ ## FAQ
687
+
688
+ ### Q1: Tool not working or errors?
689
+
690
+ Check detailed logs:
691
+
692
+ **Windows (PowerShell):**
693
+ ```powershell
694
+ npx -y mcp-probe-kit@latest 2>&1 | Tee-Object -FilePath .\mcp-probe-kit.log
695
+ ```
696
+
697
+ **macOS/Linux:**
698
+ ```bash
699
+ npx -y mcp-probe-kit@latest 2>&1 | tee ./mcp-probe-kit.log
700
+ ```
701
+
702
+ ### Q2: Client not recognizing tools after configuration?
703
+
704
+ 1. **Restart client** (completely quit then reopen)
705
+ 2. Check config file path is correct
706
+ 3. Confirm JSON format is correct, no syntax errors
707
+ 4. Check client developer tools or logs for error messages
708
+
709
+ ### Q3: How to update to latest version?
710
+
711
+ **npx method (Recommended):**
712
+ Use `@latest` tag in config, automatically uses latest version.
713
+
714
+ **Global installation method:**
715
+ ```bash
716
+ npm update -g mcp-probe-kit
717
+ ```
718
+
719
+ ### Q4: Why are graph-aware tools slow or timing out on Windows the first time?
720
+
721
+ This usually affects `code_insight`, `start_feature`, `start_bugfix`, and `init_project_context`.
722
+
723
+ Common causes:
724
+
725
+ 1. `npx -y gitnexus@latest mcp` performs a cold start and may spend 20+ seconds checking/downloading packages.
726
+ 2. GitNexus may need native `tree-sitter-*` modules, which can require Visual Studio Build Tools on Windows.
727
+
728
+ If you see logs like:
729
+
730
+ ```text
731
+ gyp ERR! find VS could not find a version of Visual Studio 2017 or newer to use
732
+ gyp ERR! find VS - missing any VC++ toolset
733
+ ```
734
+
735
+ Try this:
736
+
737
+ 1. Install Visual Studio Build Tools with the C++ workload.
738
+ 2. Retry once after dependencies finish installing.
739
+ 3. If your client supports `env`, switch the bridge to a preinstalled `gitnexus` CLI and raise:
740
+ `MCP_GITNEXUS_CONNECT_TIMEOUT_MS`
741
+ `MCP_GITNEXUS_TIMEOUT_MS`
742
+
743
+ **👉 [More FAQ](https://mcp-probe-kit.bytezonex.com/pages/getting-started.html)**
744
+
745
+ ---
746
+
747
+ ## 🤝 Contributing
748
+
749
+ Issues and Pull Requests welcome!
750
+
751
+ **Improvement suggestions:**
752
+ - Add useful tools
753
+ - Optimize existing tool prompts
754
+ - Improve documentation and examples
755
+ - Fix bugs
756
+
757
+ ---
758
+
759
+ ## 📄 License
760
+
761
+ MIT License
762
+
763
+ ---
764
+
765
+ ## 🔗 Related Links
766
+
767
+ - **Author**: [Kyle (小墨)](https://www.bytezonex.com/)
768
+ - **GitHub**: [mcp-probe-kit](https://github.com/mybolide/mcp-probe-kit)
769
+ - **npm**: [mcp-probe-kit](https://www.npmjs.com/package/mcp-probe-kit)
770
+ - **Documentation**: [https://mcp-probe-kit.bytezonex.com](https://mcp-probe-kit.bytezonex.com/)
771
+
772
+ **Related Projects:**
773
+ - [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) - Official MCP protocol docs
774
+ - [GitHub Spec-Kit](https://github.com/github/spec-kit) - GitHub spec-driven development toolkit
775
+ - [ui-ux-pro-max-skill](https://github.com/nextlevelbuilder/ui-ux-pro-max-skill) - UI/UX design system philosophy source
776
+ - [json-render](https://github.com/vercel-labs/json-render) - JSON template rendering engine inspiration
777
+ - [uipro-cli](https://www.npmjs.com/package/uipro-cli) - UI/UX data source
778
+
779
+ ---
780
+
781
+ **Made with ❤️ for AI-Powered Development**