@clien-ai/mcp 0.3.0 → 0.5.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.
@@ -28,7 +28,7 @@ import { z } from 'zod';
28
28
  import { CompetitorProfileSchema, ForumThreadSchema, } from '../types/report.js';
29
29
  import { ToolError } from './errors.js';
30
30
  import { buildFailureGuidance } from './failure-guidance.js';
31
- import { apiCall, categorizeFetchError, truncate, webJobUrl, } from './research.js';
31
+ import { apiCall, categorizeFetchError, safeInline, truncate, webJobUrl, } from './research.js';
32
32
  // Per-endpoint timeouts. Node fetch has no implicit timeout, so a hung endpoint would otherwise
33
33
  // wedge the MCP server forever (mirrors research.ts:START/EVENTS/REPORT_TIMEOUT_MS).
34
34
  const START_TIMEOUT_MS = 30_000;
@@ -463,42 +463,106 @@ function extractItems(reportData, path, schema) {
463
463
  }
464
464
  function renderCompetitors(competitors, topic, persistenceLine) {
465
465
  if (competitors.length === 0) {
466
- return `No competitors surfaced for "${truncate(topic, 120)}". ${persistenceLine}`;
466
+ return `No competitors surfaced for "${safeInline(topic, 120) ?? 'this topic'}". ${persistenceLine}`;
467
467
  }
468
468
  const lines = competitors.map((c, i) => {
469
- const header = `${i + 1}. **${c.name || 'Unnamed competitor'}**${c.pricing ? ` — ${c.pricing}` : ''}`;
470
- const desc = c.description ? `\n ${truncate(c.description, 240)}` : '';
471
- const url = c.url ? `\n ${c.url}` : '';
469
+ // FUL-253: same guard `list_competitors` got in FUL-252, applied to the OTHER
470
+ // surface over the same rows. These fields are written by a research agent from
471
+ // scraped pages, so they are third-party text however they arrive. This render
472
+ // is worse than the persisted one in one specific way: it appends a `TRUST:`
473
+ // paragraph, so a newline here can forge a trust-surface CLAIM about the facts
474
+ // above it, not merely an extra competitor row.
475
+ const nameText = safeInline(c.name, 120);
476
+ const pricingText = safeInline(c.pricing, 80);
477
+ const header = `${i + 1}. **${nameText ?? 'Unnamed competitor'}**${pricingText ? ` — ${pricingText}` : ''}`;
478
+ const descText = safeInline(c.description, 240);
479
+ const desc = descText ? `\n ${descText}` : '';
480
+ const urlText = safeInline(c.url, 200);
481
+ const url = urlText ? `\n ${urlText}` : '';
472
482
  // FUL-179: the M1b company-metadata fields. Rendered as a single "·"-joined line so a
473
483
  // competitor missing all four adds no noise, and one with a couple stays compact. These are
474
484
  // un-receipted (see CompetitorProfileSchema) — presented as plain facts, not cited claims.
475
485
  const meta = [
476
- c.funding && `Funding: ${truncate(c.funding, 80)}`,
477
- c.employeeCount && `Employees: ${truncate(c.employeeCount, 40)}`,
478
- c.founded && `Founded: ${truncate(c.founded, 40)}`,
479
- c.hqLocation && `HQ: ${truncate(c.hqLocation, 80)}`,
480
- ].filter(Boolean);
486
+ ['Funding', safeInline(c.funding, 80)],
487
+ ['Employees', safeInline(c.employeeCount, 40)],
488
+ ['Founded', safeInline(c.founded, 40)],
489
+ ['HQ', safeInline(c.hqLocation, 80)],
490
+ ]
491
+ .filter(([, v]) => v !== null)
492
+ .map(([label, v]) => `${label}: ${v}`);
481
493
  const metaLine = meta.length ? `\n ${meta.join(' · ')}` : '';
482
- const strengths = c.strengths?.length ? `\n Strengths: ${c.strengths.join('; ')}` : '';
483
- const weaknesses = c.weaknesses?.length ? `\n Weaknesses: ${c.weaknesses.join('; ')}` : '';
494
+ // Guarded per ITEM, not on the joined string: one flattened bullet must not be
495
+ // able to swallow its siblings past a shared truncate, and an item that
496
+ // collapses to nothing is dropped rather than rendered as an empty `; ;` gap.
497
+ const strengthList = (c.strengths ?? []).map((s) => safeInline(s, 120)).filter(Boolean);
498
+ const strengths = strengthList.length ? `\n Strengths: ${strengthList.join('; ')}` : '';
499
+ const weaknessList = (c.weaknesses ?? []).map((w) => safeInline(w, 120)).filter(Boolean);
500
+ const weaknesses = weaknessList.length ? `\n Weaknesses: ${weaknessList.join('; ')}` : '';
484
501
  return `${header}${desc}${url}${metaLine}${strengths}${weaknesses}`;
485
502
  });
486
- return (`Found ${competitors.length} competitor${competitors.length === 1 ? '' : 's'} for "${truncate(topic, 120)}":\n\n` +
487
- `${lines.join('\n\n')}\n\n${persistenceLine}`);
503
+ // FUL-247: state the ABSENCE of grounding here, in the text.
504
+ //
505
+ // This surface renders the SAME four company facts as `list_competitors`, and
506
+ // that tool now suffixes each one with a `[GROUNDED]`-style bracket. The
507
+ // divergence is legitimate — `CompetitorProfileSchema` has no `*_grounding`
508
+ // fields at all, because these are raw values a research agent just wrote and
509
+ // there is genuinely nothing to bracket. But legitimacy is not the risk. An
510
+ // agent that called `list_competitors` earlier in a session has been taught
511
+ // that a bracket IS the trust signal on a company fact; seeing none here, it
512
+ // can read the silence as "nothing flagged" rather than "categorically
513
+ // unverified". The tool description says so, but a description is read once and
514
+ // may be far outside the context window by now — so say it beside the facts.
515
+ const hasCompanyFacts = competitors.some((c) => Boolean(c.funding || c.employeeCount || c.founded || c.hqLocation));
516
+ const trustLine = hasCompanyFacts
517
+ ? '\n\nTRUST: the company facts above are UN-RECEIPTED — this surface has no per-fact ' +
518
+ 'grounding to show, so the ABSENCE of a `[GROUNDED]`-style bracket here means "not ' +
519
+ 'checked", never "checked and fine". `list_competitors` carries the same facts with ' +
520
+ 'per-fact trust state once this run is persisted.'
521
+ : '';
522
+ return (`Found ${competitors.length} competitor${competitors.length === 1 ? '' : 's'} for "${safeInline(topic, 120) ?? 'this topic'}":\n\n` +
523
+ `${lines.join('\n\n')}\n\n${persistenceLine}${trustLine}`);
488
524
  }
489
525
  function renderThreads(threads, topic, persistenceLine) {
490
526
  if (threads.length === 0) {
491
- return `No community threads surfaced for "${truncate(topic, 120)}". ${persistenceLine}`;
527
+ return `No community threads surfaced for "${safeInline(topic, 120) ?? 'this topic'}". ${persistenceLine}`;
492
528
  }
493
529
  const lines = threads.map((t, i) => {
494
- const platform = t.platform ? ` [${t.platform}${t.subreddit ? `/${t.subreddit}` : ''}]` : '';
495
- const header = `${i + 1}. **${truncate(t.title || 'Untitled thread', 160)}**${platform}`;
496
- const sentiment = t.sentimentSummary ? `\n ${truncate(t.sentimentSummary, 240)}` : '';
497
- const url = t.url ? `\n ${t.url}` : '';
498
- const quote = t.relevantQuotes?.length ? `\n "${truncate(t.relevantQuotes[0] ?? '', 200)}"` : '';
499
- return `${header}${sentiment}${url}${quote}`;
530
+ // FUL-253: `search_forums` renders the SAME verbatim forum text as
531
+ // `list_community_signals` — one endpoint, two surfaces — and only the
532
+ // persisted one was guarded. This row shape is identical (`N. ` header plus
533
+ // `\n ` continuation lines), so a newline in a cached quote forges a sibling
534
+ // thread here exactly as it did there. `truncate` alone never stopped it: it
535
+ // bounds LENGTH, and a forged line only needs one `\n` well inside the cap.
536
+ const platformText = safeInline(t.platform, 40);
537
+ const subredditText = safeInline(t.subreddit, 40);
538
+ const platform = platformText ? ` [${platformText}${subredditText ? `/${subredditText}` : ''}]` : '';
539
+ const header = `${i + 1}. **${safeInline(t.title, 160) ?? 'Untitled thread'}**${platform}`;
540
+ const sentimentText = safeInline(t.sentimentSummary, 240);
541
+ const sentiment = sentimentText ? `\n ${sentimentText}` : '';
542
+ const urlText = safeInline(t.url, 200);
543
+ const url = urlText ? `\n ${urlText}` : '';
544
+ // Branch on the RENDERED value, matching `list_community_signals`: a quote of
545
+ // ' ' collapses to nothing, and `""` alone on a line reads as "quoted, and
546
+ // the quote was empty" rather than "no quote was cached".
547
+ const quoteText = safeInline(t.relevantQuotes?.[0], 200);
548
+ const quote = quoteText ? `\n "${quoteText}"` : '';
549
+ // FUL-247: engagement volume, rendered here because `list_community_signals`
550
+ // renders it for the SAME underlying rows. The finding was never that this
551
+ // number is essential — it is that two surfaces over one dataset disagreed
552
+ // about whether it was worth an agent's attention, and a reader who compares
553
+ // them has no way to know which surface to believe.
554
+ //
555
+ // `!== undefined`, not truthiness: `ForumThreadSchema` marks both `.optional()`,
556
+ // so `0` is a real, meaningful value (a thread nobody engaged with) that a
557
+ // truthy guard would silently drop — turning "zero upvotes" into "unknown".
558
+ const engagement = [
559
+ t.upvotes !== undefined && `${t.upvotes} upvotes`,
560
+ t.commentCount !== undefined && `${t.commentCount} comments`,
561
+ ].filter(Boolean);
562
+ const engagementLine = engagement.length ? `\n ${engagement.join(' · ')}` : '';
563
+ return `${header}${sentiment}${url}${quote}${engagementLine}`;
500
564
  });
501
- return (`Found ${threads.length} community thread${threads.length === 1 ? '' : 's'} for "${truncate(topic, 120)}":\n\n` +
565
+ return (`Found ${threads.length} community thread${threads.length === 1 ? '' : 's'} for "${safeInline(topic, 120) ?? 'this topic'}":\n\n` +
502
566
  `${lines.join('\n\n')}\n\n${persistenceLine}`);
503
567
  }
504
568
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"scoped-research.js","sourceRoot":"","sources":["../../src/tools/scoped-research.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"scoped-research.js","sourceRoot":"","sources":["../../src/tools/scoped-research.ts"],"names":[],"mappings":"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"}
@@ -39,7 +39,8 @@ import { z } from 'zod';
39
39
  import { ResearchReportDataSchema } from '../types/report.js';
40
40
  import { ToolError } from './errors.js';
41
41
  import { buildFailureGuidance } from './failure-guidance.js';
42
- import { apiCall, categorizeFetchError, truncate, webJobUrl, } from './research.js';
42
+ import { buildTrustDigest } from './report-digest.js';
43
+ import { apiCall, categorizeFetchError, safeInline, truncate, webJobUrl, } from './research.js';
43
44
  const EVENTS_FETCH_TIMEOUT_MS = 30_000;
44
45
  const REPORT_FETCH_TIMEOUT_MS = 60_000;
45
46
  const LIST_FETCH_TIMEOUT_MS = 30_000;
@@ -187,8 +188,18 @@ export async function getResearchStatus(input, deps) {
187
188
  console.error('[clien-mcp] status: report_data failed schema validation; passing through raw payload:', parsedReport.error.issues[0]);
188
189
  }
189
190
  }
191
+ // FUL-243: same appended trust digest as `clien_research` / `get_report` —
192
+ // this tool returns the identical report payload (it is the recovery path
193
+ // for a dropped run), so it must deliver the trust spine through the TEXT
194
+ // too. Leaving it in `_meta` here would mean a recovered run silently loses
195
+ // the receipts the same run would have shown had it not disconnected.
190
196
  return {
191
- content: [{ type: 'text', text: reportJson.reportMarkdown }],
197
+ content: [
198
+ {
199
+ type: 'text',
200
+ text: `${reportJson.reportMarkdown}\n\n---\n\n${buildTrustDigest(reportData, '_meta')}`,
201
+ },
202
+ ],
192
203
  _meta: {
193
204
  job_id: jobId,
194
205
  status: reportJson.status ?? status,
@@ -314,9 +325,18 @@ async function resolveJobId(ctx, deps) {
314
325
  return { kind: 'disambiguate', result: buildDisambiguation(jobs, 'recent') };
315
326
  }
316
327
  function buildDisambiguation(jobs, kind) {
328
+ // FUL-253: `safeInline` rather than `trim` + `truncate`. `prompt` is the user's
329
+ // own research idea reaching a LINE-STRUCTURED render, and `trim` only strips the
330
+ // ENDS — an interior newline survived it. This text exists for one purpose: to
331
+ // make an agent pick a `job_id`. A prompt containing
332
+ // `\n2. job_id: <attacker uuid>\n idea: "…"` forged a whole extra run in the
333
+ // picker, which is the most directly actionable forgery in the package.
334
+ // Flattened here rather than at the render below so `_meta.runs.idea` — already a
335
+ // clipped snippet, not the full prompt — carries the same guarantee, and so the
336
+ // value is never truncated twice at different widths.
317
337
  const runs = jobs.map((j) => ({
318
338
  job_id: j.id,
319
- idea: truncate((j.prompt ?? '').trim() || '(no idea text)', IDEA_SNIPPET_MAX),
339
+ idea: safeInline(j.prompt, IDEA_SNIPPET_MAX) ?? '(no idea text)',
320
340
  status: j.status ?? 'unknown',
321
341
  started_at: j.createdAt ?? '',
322
342
  ...(j.projectId ? { project_id: j.projectId } : {}),
@@ -324,8 +344,24 @@ function buildDisambiguation(jobs, kind) {
324
344
  const label = kind === 'active' ? 'active (in-flight)' : 'recent';
325
345
  const lines = runs
326
346
  .map((r, i) => {
327
- const started = r.started_at ? `, started ${r.started_at}` : '';
328
- return `${i + 1}. job_id: ${r.job_id}\n idea: "${r.idea}"\n status: ${r.status}${started}`;
347
+ // FUL-253: the remaining fields are endpoint strings that reached this render
348
+ // untouched — no truncate, no collapse. `idea` is already flattened above.
349
+ const startedAt = safeInline(r.started_at, 40);
350
+ const started = startedAt ? `, started ${startedAt}` : '';
351
+ // FUL-247: this text EXISTS to disambiguate between runs, and the project is
352
+ // the natural discriminator — a user who researched the same idea under two
353
+ // projects was previously given no way at all to tell the rows apart.
354
+ // Omitted when absent rather than printed as "unknown": a run genuinely may
355
+ // not carry a project, and a placeholder would look like a third run id.
356
+ //
357
+ // Branched on the RAW value, then rendered through the guard: `safeInline`
358
+ // collapses "no project" and "the endpoint sent an empty project" into one
359
+ // `null`, and only the first of those may drop the line.
360
+ const projectId = r.project_id ? (safeInline(r.project_id, 60) ?? 'unknown') : null;
361
+ const project = projectId ? `\n project_id: ${projectId}` : '';
362
+ const jobId = safeInline(r.job_id, 60) ?? 'unknown';
363
+ const status = safeInline(r.status, 40) ?? 'unknown';
364
+ return `${i + 1}. job_id: ${jobId}\n idea: "${r.idea}"\n status: ${status}${started}${project}`;
329
365
  })
330
366
  .join('\n');
331
367
  const text = `Found ${runs.length} ${label} research runs on this account and can't tell which one ` +
@@ -1 +1 @@
1
- {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/tools/status.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"status.js","sourceRoot":"","sources":["../../src/tools/status.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,63 @@
1
+ /**
2
+ * In-process single-flight: collapse N concurrent callers onto ONE execution.
3
+ *
4
+ * The first caller runs `fn` and the returned promise is stored; callers that
5
+ * arrive while it is still pending get that SAME promise back instead of
6
+ * starting their own run. When it settles the slot is cleared, so the next
7
+ * caller starts a fresh run.
8
+ *
9
+ * Why this exists (FUL-236): `get_project` fans out six parallel bearer reads
10
+ * over one `Session`. On an expired access token each leg independently hits a
11
+ * 401 and calls `session.refresh()`. The cross-process disk lock
12
+ * (`withTokenLock`) SERIALIZES those six refreshes but does not COLLAPSE them —
13
+ * six sequential lock acquisitions plus six token round-trips, against a
14
+ * refresh token the server rotates on every use. Single-flight is the
15
+ * in-process layer ABOVE that lock, not a replacement for it: the lock still
16
+ * coordinates separate PROCESSES, this collapses callers within one.
17
+ *
18
+ * See `docs/solutions/architecture-patterns/cross-process-token-rotation-locking-2026-04-27.md`.
19
+ *
20
+ * ⚠️ The slot is cleared on SETTLE — success AND failure. Clearing only on
21
+ * success would let one failed refresh poison every later call for the life of
22
+ * the process: every subsequent caller would await the same already-rejected
23
+ * promise and re-throw a stale error, with no way back short of a restart.
24
+ */
25
+ export function createSingleFlight() {
26
+ let pending = null;
27
+ return {
28
+ get inFlight() {
29
+ return pending !== null;
30
+ },
31
+ run(fn) {
32
+ const joined = pending;
33
+ if (joined)
34
+ return joined;
35
+ let started;
36
+ try {
37
+ started = fn();
38
+ }
39
+ catch (err) {
40
+ // `fn` threw synchronously rather than returning a rejected promise.
41
+ // Nothing was ever stored, so there is nothing to clear — but we must
42
+ // not leave `pending` set to a value we never assigned.
43
+ return Promise.reject(err);
44
+ }
45
+ pending = started;
46
+ // Attached BEFORE the promise is handed back, so this clear runs ahead of
47
+ // any caller's `await` continuation: by the time a caller resumes, the
48
+ // slot is already free and a genuinely-later call starts a new run.
49
+ //
50
+ // Registering a rejection handler here also means a rejected run is
51
+ // always "handled" from Node's perspective, so joining callers that
52
+ // settle later never trip an unhandled-rejection warning.
53
+ const clear = () => {
54
+ // Identity guard: only ever clear OUR run, never a successor's.
55
+ if (pending === started)
56
+ pending = null;
57
+ };
58
+ started.then(clear, clear);
59
+ return started;
60
+ },
61
+ };
62
+ }
63
+ //# sourceMappingURL=single-flight.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"single-flight.js","sourceRoot":"","sources":["../../src/util/single-flight.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAYH,MAAM,UAAU,kBAAkB;IAChC,IAAI,OAAO,GAAsB,IAAI,CAAA;IAErC,OAAO;QACL,IAAI,QAAQ;YACV,OAAO,OAAO,KAAK,IAAI,CAAA;QACzB,CAAC;QAED,GAAG,CAAC,EAAoB;YACtB,MAAM,MAAM,GAAG,OAAO,CAAA;YACtB,IAAI,MAAM;gBAAE,OAAO,MAAM,CAAA;YAEzB,IAAI,OAAmB,CAAA;YACvB,IAAI,CAAC;gBACH,OAAO,GAAG,EAAE,EAAE,CAAA;YAChB,CAAC;YAAC,OAAO,GAAG,EAAE,CAAC;gBACb,qEAAqE;gBACrE,sEAAsE;gBACtE,wDAAwD;gBACxD,OAAO,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC5B,CAAC;YAED,OAAO,GAAG,OAAO,CAAA;YAEjB,0EAA0E;YAC1E,uEAAuE;YACvE,oEAAoE;YACpE,EAAE;YACF,oEAAoE;YACpE,oEAAoE;YACpE,0DAA0D;YAC1D,MAAM,KAAK,GAAG,GAAS,EAAE;gBACvB,gEAAgE;gBAChE,IAAI,OAAO,KAAK,OAAO;oBAAE,OAAO,GAAG,IAAI,CAAA;YACzC,CAAC,CAAA;YACD,OAAO,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;YAE1B,OAAO,OAAO,CAAA;QAChB,CAAC;KACF,CAAA;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@clien-ai/mcp",
3
- "version": "0.3.0",
3
+ "version": "0.5.0",
4
4
  "description": "Clien.ai MCP server — deep product research from Claude Code.",
5
5
  "keywords": [
6
6
  "mcp",
@@ -23,7 +23,8 @@
23
23
  },
24
24
  "files": [
25
25
  "dist/",
26
- "README.md"
26
+ "README.md",
27
+ "CHANGELOG.md"
27
28
  ],
28
29
  "scripts": {
29
30
  "build": "tsc",