pcl-mcp 0.2.5 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,17 +1,24 @@
1
+ <div align="center">
2
+
1
3
  # PCL — Product Context Layer
2
4
 
3
5
  **Give AI coding agents persistent, structured knowledge of your product.**
4
6
 
5
- Instead of re-explaining your personas, journeys, and architecture decisions every session, PCL serves them via MCP on demand. Any agent (Claude Code, Cursor, Windsurf) queries exactly what it needs, when it needs it.
6
-
7
- ## Quick Start
7
+ [![npm version](https://img.shields.io/npm/v/pcl-mcp?color=brightgreen)](https://www.npmjs.com/package/pcl-mcp)
8
+ [![npm downloads](https://img.shields.io/npm/dm/pcl-mcp)](https://www.npmjs.com/package/pcl-mcp)
9
+ [![Node >=22](https://img.shields.io/badge/node-%3E%3D22-blue)](https://nodejs.org)
10
+ [![MIT License](https://img.shields.io/badge/license-MIT-green)](LICENSE)
8
11
 
9
12
  ```bash
10
- npm install pcl-mcp
11
- npx pcl init
12
- # add MCP config (see Agent Configuration below), then start a new agent session
13
+ npx pcl-mcp init
13
14
  ```
14
15
 
16
+ </div>
17
+
18
+ Instead of re-explaining your personas, journeys, and architecture decisions every session, PCL serves them via MCP on demand. Any agent (Claude Code, Cursor, Windsurf) queries exactly what it needs, when it needs it.
19
+
20
+ ---
21
+
15
22
  ## Why PCL?
16
23
 
17
24
  **Without PCL**, every coding session starts from scratch:
@@ -34,21 +41,40 @@ You ask your agent: *"Build the checkout flow"*
34
41
 
35
42
  **With PCL:** The agent auto-loads critical billing rules at session start (~200 tokens). When it starts the checkout feature, it pulls the relevant persona, fetches the journey steps, and checks the spec's acceptance criteria — all on-demand, only what's needed. Every session, automatically.
36
43
 
44
+ ---
45
+
46
+ ## Quick Start
47
+
48
+ ```bash
49
+ npm install pcl-mcp
50
+ npx pcl init # prompts before adding example files, sets up CLAUDE.md
51
+ # add MCP config (see Agent Configuration below), then start a new agent session
52
+ ```
53
+
54
+ ---
55
+
37
56
  ## Stack
38
57
 
39
58
  | Layer | Technology | Why |
40
59
  |---|---|---|
41
60
  | Protocol | MCP (stdio) | Universal — works with every major agent |
42
61
  | Storage | SQLite + FTS5 | Zero infra, git-friendly, offline |
43
- | Keyword search | BM25 via FTS5 | Best-in-class for exact term matching |
44
- | Semantic search | `all-MiniLM-L6-v2` (local) | 23MB, zero API cost, ~3ms/doc |
45
- | Hybrid fusion | Reciprocal Rank Fusion (k=60) | Better than either alone, no tuning |
46
- | Validation | Zod schemas | Agents rely on predictable frontmatter |
62
+ | Keyword search | BM25 via FTS5 (title-weighted 10×) | Best-in-class for exact terms, IDs, proper nouns |
63
+ | Semantic search | `all-mpnet-base-v2` (local, 768d) | Higher quality than MiniLM, zero API cost, ~3ms/doc |
64
+ | Embedding strategy | Split body + title embeddings | Separate semantic channels for body and title matching |
65
+ | Hybrid fusion | Adaptive RRF (corpus-size-aware k) | Better recall on both small and large corpora |
66
+ | Score filtering | 15% gap threshold | Prevents low-quality tail results from surfacing |
67
+ | Cross-references | Auto frontmatter link resolution | Pulls related files into results automatically |
68
+ | Validation | Zod schemas | Agents get predictable, parseable frontmatter |
47
69
  | File watching | Chokidar v4 | Live reindex on save |
48
70
 
71
+ ---
72
+
49
73
  ## Prerequisites
50
74
 
51
- - **Node.js >= 22** (required — PCL uses modern Node APIs)
75
+ **Node.js >= 22** (required — PCL uses modern Node APIs)
76
+
77
+ ---
52
78
 
53
79
  ## Install
54
80
 
@@ -59,6 +85,8 @@ npx pcl init # creates ./product with templates
59
85
 
60
86
  Also available on GitHub Packages as `@michaelgorski/pcl-mcp`.
61
87
 
88
+ ---
89
+
62
90
  ## Import existing docs
63
91
 
64
92
  If you already have markdown documentation in your repo, PCL can scan, classify, and import it automatically:
@@ -77,8 +105,12 @@ The scanner:
77
105
 
78
106
  Supported classifications: **persona**, **journey**, **spec**, **decision**, **domain**, **product**
79
107
 
108
+ ---
109
+
80
110
  ## Agent configuration
81
111
 
112
+ Works with any MCP-compatible agent. Configuration examples below.
113
+
82
114
  ### Claude Code — `.claude/mcp.json`
83
115
  ```json
84
116
  {
@@ -113,6 +145,8 @@ Supported classifications: **persona**, **journey**, **spec**, **decision**, **d
113
145
  }
114
146
  ```
115
147
 
148
+ ---
149
+
116
150
  ## File structure
117
151
 
118
152
  ```
@@ -131,19 +165,23 @@ Supported classifications: **persona**, **journey**, **spec**, **decision**, **d
131
165
  .pcl.db ← SQLite index (auto-generated, gitignore this)
132
166
  ```
133
167
 
168
+ ---
169
+
134
170
  ## Tools available to agents
135
171
 
136
172
  | Tool | Params | Description |
137
173
  |---|---|---|
138
174
  | `pcl_product_summary` | — | Load the product north-star document. Call at session start. |
139
- | `pcl_get_persona(id)` | `id`: persona ID | Get a user persona by ID. Call before any user-facing feature. |
140
- | `pcl_get_journey(id)` | `id`: journey ID | Get a user journey by ID including step-by-step detail. |
141
- | `pcl_get_spec(id)` | `id`: spec ID | Get a feature spec by ID including acceptance criteria. |
142
- | `pcl_get_decision(id)` | `id`: decision ID | Get an architecture decision record (ADR) by ID. |
143
- | `pcl_get_domain(id)` | `id`: domain ID or `"*critical"` | Get domain rules by ID. Pass `"*critical"` to load all critical rules. |
144
- | `pcl_list({ type })` | `type`: `"personas"` \| `"journeys"` \| `"specs"` \| `"decisions"` \| `"domain"` | List all files of a given type with IDs, titles, and summaries. |
145
- | `pcl_search({ query })` | `query`, `mode?` (`"hybrid"` \| `"semantic"` \| `"keyword"`), `types?`, `top_k?` | Hybrid semantic + keyword search across all product files. |
146
- | `pcl_related(id)` | `id`: source file ID, `top_k?` | Find files semantically related to a given file ID. |
175
+ | `pcl_get_persona` | `id` | Get a user persona by ID. Call before any user-facing feature. |
176
+ | `pcl_get_journey` | `id` | Get a user journey by ID including step-by-step detail. |
177
+ | `pcl_get_spec` | `id` | Get a feature spec by ID including acceptance criteria. |
178
+ | `pcl_get_decision` | `id` | Get an architecture decision record (ADR) by ID. |
179
+ | `pcl_get_domain` | `id` or `"*critical"` | Get domain rules by ID. Pass `"*critical"` to load all critical rules. |
180
+ | `pcl_list` | `type`: `"personas"` \| `"journeys"` \| `"specs"` \| `"decisions"` \| `"domain"` | List all files of a given type with IDs, titles, and summaries. |
181
+ | `pcl_search` | `query`, `mode?` (`"hybrid"` \| `"semantic"` \| `"keyword"`), `types?`, `top_k?` | Hybrid semantic + keyword search across all product files. |
182
+ | `pcl_related` | `id`, `top_k?` | Find files semantically related to a given file ID. |
183
+
184
+ ---
147
185
 
148
186
  ## Prompts & Resources
149
187
 
@@ -153,25 +191,92 @@ In addition to tools, PCL exposes MCP prompts and resources:
153
191
 
154
192
  **Resources: `pcl://files/{type}/{id}`** — Each indexed file is available as an MCP resource. Agents can browse and read individual files directly via the resource URI (e.g., `pcl://files/persona/example-user`).
155
193
 
194
+ ---
195
+
156
196
  ## How hybrid search works
157
197
 
198
+ PCL runs three parallel retrieval signals and fuses them with Reciprocal Rank Fusion:
199
+
158
200
  ```
159
201
  query: "what does Max find frustrating about onboarding"
160
202
 
161
- BM25 (FTS5): [persona-max, journey-onboarding, spec-magic-link, ...]
162
- ranked by term frequency + IDF
203
+ BM25 (FTS5, title-weighted 10×):
204
+ persona-max, journey-onboarding, spec-magic-link
205
+ ↓ ranked by bm25(title=10×, body=1×) — exact terms, IDs, proper nouns
206
+
207
+ Semantic — body embedding (all-mpnet-base-v2, 768d):
208
+ → journey-onboarding, persona-max, domain-core-rules
209
+ ↓ cosine similarity on full-text embedding
163
210
 
164
- Cosine similarity: [journey-onboarding, persona-max, domain-core-rules, ...]
165
- ranked by embedding dot product (MiniLM-L6-v2)
211
+ Semantic title embedding (all-mpnet-base-v2, 768d):
212
+ persona-max, journey-onboarding, spec-onboarding-ux
213
+ ↓ cosine similarity on title + summary embedding
166
214
 
167
- RRF fusion: score(d) = Σ 1 / (60 + rank(d))
168
- combines both rankings without weight tuning
215
+ Adaptive RRF (k = corpus_size / 10):
216
+ score(d) = Σ 1 / (k + rank(d)) fused across all three lists
169
217
 
170
- Result: 1. journey-onboarding (0.94)
171
- 2. persona-max (0.87)
172
- 3. spec-onboarding-ux (0.71)
218
+ Score gap filter (15% threshold):
219
+ Drops results below 0.15 × top_score — removes noise
220
+
221
+ Cross-reference resolution:
222
+ journey-onboarding.frontmatter.persona = "max"
223
+ → auto-includes persona-max even if it ranked outside top-k
224
+
225
+ Result: 1. journey-onboarding (0.94)
226
+ 2. persona-max (0.87)
227
+ 3. spec-onboarding-ux (0.71)
173
228
  ```
174
229
 
230
+ **Why split embeddings?** Body and title carry different semantic signals. A query like *"checkout persona"* should match a persona file by title even if its body content is mostly demographic data. Indexing them separately gives the fusion step two distinct semantic channels rather than one diluted one.
231
+
232
+ **Why adaptive RRF k?** Fixed k=60 over-smooths rankings on small corpora (10–20 files). Corpus-aware k scales down on small collections to let strong matches separate from weak ones.
233
+
234
+ ---
235
+
236
+ ## Testing & Benchmarks
237
+
238
+ PCL ships with a full test suite and a multi-dimensional benchmark framework.
239
+
240
+ ### Tests
241
+
242
+ ```bash
243
+ npm test # run all tests (vitest)
244
+ npm run test:watch # watch mode
245
+ ```
246
+
247
+ Six test suites cover the full stack:
248
+
249
+ | Suite | Coverage |
250
+ |---|---|
251
+ | `db.test.ts` | SQLite operations, FTS5 queries, embedding storage |
252
+ | `embeddings.test.ts` | Embedding generation, cache hits, dimension checks |
253
+ | `indexer.test.ts` | File discovery, schema extraction, change detection |
254
+ | `schemas.test.ts` | Zod frontmatter validation for all file types |
255
+ | `search.test.ts` | Hybrid search, RRF, multi-hop decomposition, cross-refs |
256
+ | `tools.test.ts` | MCP tool handlers, response formatting, error paths |
257
+
258
+ ### Benchmarks
259
+
260
+ ```bash
261
+ npm run bench # all benchmarks
262
+ npm run bench:perf # latency benchmarks (search + embedding speed)
263
+ npm run bench:quality # search quality: Precision@k, Recall@k, NDCG, MRR
264
+ npm run bench:tokens # token efficiency across search modes
265
+ npm run bench:ablation # hybrid vs keyword-only vs semantic-only comparison
266
+ npm run bench:ai # Claude-judged result quality (requires ANTHROPIC_API_KEY)
267
+ npm run bench:report # generate markdown report from results
268
+ ```
269
+
270
+ | Suite | Measures |
271
+ |---|---|
272
+ | Performance | Search + embedding latency (p50/p95) |
273
+ | Search quality | Precision@k, Recall@k, NDCG, MRR on labeled corpus |
274
+ | Token efficiency | Tokens consumed per query across search modes |
275
+ | Ablation | Quality delta: hybrid vs keyword-only vs semantic-only |
276
+ | AI quality | Claude-judged relevance score for top-k results |
277
+
278
+ ---
279
+
175
280
  ## Human workflow
176
281
 
177
282
  The system is only as good as what you put in. Discipline:
@@ -184,12 +289,16 @@ The system is only as good as what you put in. Discipline:
184
289
 
185
290
  The agent does the rest.
186
291
 
292
+ ---
293
+
187
294
  ## Gitignore
188
295
 
189
296
  ```gitignore
190
297
  product/.pcl.db # SQLite index — auto-regenerated
191
298
  ```
192
299
 
300
+ ---
301
+
193
302
  ## License
194
303
 
195
304
  MIT
package/dist/bin/pcl.js CHANGED
@@ -265,24 +265,31 @@ async function init() {
265
265
  }
266
266
  let created = 0;
267
267
  let skipped = 0;
268
- for (const [rel, content] of Object.entries(TEMPLATES)) {
269
- // Skip templates for categories already covered by scan imports
270
- const category = templateTypeMap[rel];
271
- if (category && coveredTypes.has(category)) {
272
- console.log(` ↷ ${rel} (category covered by scan, skipped)`);
273
- skipped++;
274
- continue;
275
- }
276
- const dest = join(productDir, rel);
277
- try {
278
- await access(dest, constants.F_OK);
279
- console.log(` ↷ ${rel} (exists, skipped)`);
280
- skipped++;
281
- }
282
- catch {
283
- await writeFile(dest, content, "utf8");
284
- console.log(` ✓ ${rel}`);
285
- created++;
268
+ const addExamples = await promptYesNo("Scaffold example files (product, personas, journeys, specs, decisions, domain)?");
269
+ if (!addExamples) {
270
+ console.log(` ↷ Example files skipped`);
271
+ skipped += Object.keys(TEMPLATES).length;
272
+ }
273
+ else {
274
+ for (const [rel, content] of Object.entries(TEMPLATES)) {
275
+ // Skip templates for categories already covered by scan imports
276
+ const category = templateTypeMap[rel];
277
+ if (category && coveredTypes.has(category)) {
278
+ console.log(` ↷ ${rel} (category covered by scan, skipped)`);
279
+ skipped++;
280
+ continue;
281
+ }
282
+ const dest = join(productDir, rel);
283
+ try {
284
+ await access(dest, constants.F_OK);
285
+ console.log(` ↷ ${rel} (exists, skipped)`);
286
+ skipped++;
287
+ }
288
+ catch {
289
+ await writeFile(dest, content, "utf8");
290
+ console.log(` ✓ ${rel}`);
291
+ created++;
292
+ }
286
293
  }
287
294
  }
288
295
  // Write CLAUDE.md bridge
@@ -422,10 +429,16 @@ ${BRIDGE_END}`;
422
429
  }
423
430
  console.log(`\nDone! Created: ${created}, skipped: ${skipped}`);
424
431
  console.log("\nNext steps:");
425
- console.log(" 1. Edit product/product.md with your actual product details");
426
- console.log(" 2. Rename and fill in the example persona, journey, and spec files");
427
- console.log(" 3. Add your MCP server config (see README)");
428
- console.log(" 4. Start a new agent session PCL loads automatically\n");
432
+ if (addExamples) {
433
+ console.log(" 1. Edit product/product.md with your actual product details");
434
+ console.log(" 2. Rename and fill in the example persona, journey, and spec files");
435
+ console.log(" 3. Add your MCP server config (see README)");
436
+ console.log(" 4. Start a new agent session — PCL loads automatically\n");
437
+ }
438
+ else {
439
+ console.log(" 1. Add your MCP server config (see README)");
440
+ console.log(" 2. Start a new agent session — PCL loads automatically\n");
441
+ }
429
442
  }
430
443
  // ─── Status ──────────────────────────────────────────────────────────────────
431
444
  /** Count .md files on disk per subdirectory (no DB needed) */
@@ -533,7 +546,7 @@ function printHelp() {
533
546
  pcl — Product Context Layer CLI (v${version})
534
547
 
535
548
  Commands:
536
- init [dir] Scaffold /product folder with templates (default: ./product)
549
+ init [dir] Set up PCL prompts before adding example files (default: ./product)
537
550
  init --scan [dir] Scan repo for existing .md files, import, then scaffold remaining templates
538
551
  init --scan-only [dir] Scan and import only, don't scaffold templates
539
552
  serve Start the MCP server (reads --product-dir flag)
@@ -1 +1 @@
1
- {"version":3,"file":"pcl.js","sourceRoot":"","sources":["../../bin/pcl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pcl.js","sourceRoot":"","sources":["../../bin/pcl.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "pcl-mcp",
3
- "version": "0.2.5",
3
+ "version": "0.3.0",
4
4
  "description": "Product Context Layer — MCP server for AI-assisted product development",
5
5
  "type": "module",
6
6
  "main": "./dist/src/server.js",