@clien-ai/mcp 0.2.0 → 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.
@@ -13,15 +13,35 @@
13
13
  * tests working.
14
14
  */
15
15
  import { zodToInputSchema } from './schema.js';
16
+ import { normalizeParamAliases } from './param-aliases.js';
16
17
  import { ResearchInputSchema, runResearch } from './research.js';
17
18
  import { StatusInputSchema, getResearchStatus } from './status.js';
18
- import { ListProjectsInputSchema, CreateProjectInputSchema, listProjects, createProject, } from './projects.js';
19
- import { CreatePersonaInputSchema, createPersona, GeneratePersonaInputSchema, generatePersona, EnrichPersonaInputSchema, enrichPersona, } from './personas.js';
19
+ import { ListProjectsInputSchema, CreateProjectInputSchema, GetProjectInputSchema, listProjects, createProject, getProject, } from './projects.js';
20
+ import { CreatePersonaInputSchema, CREATE_PERSONA_ALIASES, createPersona, GeneratePersonaInputSchema, GENERATE_PERSONA_ALIASES, generatePersona, EnrichPersonaInputSchema, ENRICH_PERSONA_ALIASES, enrichPersona, ListPersonasInputSchema, listPersonas, GetPersonaInputSchema, getPersona, UpdatePersonaInputSchema, UPDATE_PERSONA_ALIASES, updatePersona, } from './personas.js';
20
21
  import { ListReportsInputSchema, GetReportInputSchema, listReports, getReport, } from './reports.js';
21
- import { InterviewPersonaInputSchema, interviewPersona } from './interview.js';
22
+ import { InterviewPersonaInputSchema, INTERVIEW_PERSONA_ALIASES, interviewPersona, ListInterviewsInputSchema, listInterviews, GetInterviewInputSchema, getInterview, } from './interview.js';
22
23
  import { ScanCompetitorsInputSchema, scanCompetitors, SearchForumsInputSchema, searchForums, } from './scoped-research.js';
24
+ import { ListCompetitorsInputSchema, listCompetitors, ListCommunitySignalsInputSchema, listCommunitySignals, } from './collections.js';
25
+ /**
26
+ * `paramAliases` defaults to `{}` — a tool with no legacy spellings declares
27
+ * nothing. The handler is wrapped rather than each tool calling the normalizer
28
+ * itself: that keeps alias rewriting impossible to forget and keeps every
29
+ * handler seeing canonical snake_case keys only.
30
+ *
31
+ * The wrapper is `async` so that `normalizeParamAliases` throwing on an
32
+ * ambiguous input surfaces as a REJECTED PROMISE, not a synchronous throw —
33
+ * `ToolDefinition.handler` promises `Promise<ToolResult>`, and a caller that
34
+ * relies on `.catch()` rather than try/catch must not be blindsided.
35
+ */
23
36
  function defineTool(def) {
24
- return { ...def, jsonSchema: zodToInputSchema(def.zodSchema) };
37
+ const paramAliases = def.paramAliases ?? {};
38
+ const inner = def.handler;
39
+ return {
40
+ ...def,
41
+ paramAliases,
42
+ jsonSchema: zodToInputSchema(def.zodSchema),
43
+ handler: async (args, deps) => inner(normalizeParamAliases(args, paramAliases), deps),
44
+ };
25
45
  }
26
46
  export const TOOLS = [
27
47
  defineTool({
@@ -40,9 +60,25 @@ export const TOOLS = [
40
60
  'e.g. 3/3); when `flipped` is true, trust `robustness.downgradedStatus` as the real verdict, NOT the ' +
41
61
  'top-level `status`. ' +
42
62
  '(3) `personas[]` — besides `sources[]` receipts, check `qaFlagged` (persona failed a quality check) ' +
43
- 'before relying on its claims. ' +
63
+ 'before relying on its claims. Two DIFFERENT grounding models ride here: forum `sources[]` are ' +
64
+ 'receipt-eligible clickable posts, whereas `identityProvenance` (when present) is a PII-free ' +
65
+ 'aggregate calibration line ("calibrated against N real ICP profiles") — NEVER a receipt, so do ' +
66
+ 'not treat it as a source URL; `identityPriors` (seniority + career path) is typed enrichment, not a receipt either. ' +
44
67
  '(4) `sycophancySignals` — broken-persona flags (`lowDiscrimination`), disagreement splits, and ' +
45
68
  'explicit `totalRejections`. ' +
69
+ '(5) `reportClaims[]` — the SEPARATE market/competitor spine (never crosses the persona one): each ' +
70
+ 'GROUNDED / SPECULATION / NO_RECEIPT, and a GROUNDED claim\'s `sourceId` of the form "RRCP-s{n}" ' +
71
+ 'indexes `reportEvidence[n]` (its own pool), so a market/competitor figure follows to the cached ' +
72
+ 'source page a verbatim span was matched against. On THIS spine a NO_RECEIPT claim carries one of ' +
73
+ 'two provenance readings: if it has an `attestation` marker ({sourceId, quote}) it is ' +
74
+ '"Model-attested" — Claude read a supporting page and an independent check vouched it supports the ' +
75
+ 'figure, though no exact quote could be pinned (stronger than recall, but NOT a verified receipt; ' +
76
+ 'its `attestation.sourceId` indexes `reportEvidence[n]` the same way, but a marker\'s presence NEVER ' +
77
+ 'implies grounding — key on `state`, not on whether a sourceId is present); ' +
78
+ 'otherwise it is "from model knowledge — unverified": an evidence-shaped figure Claude wrote from ' +
79
+ 'its own training knowledge that could not be verified against a source — often directionally right ' +
80
+ '(a recalled analyst estimate), but treat it as unconfirmed, NOT as a checked fact. Neither reading ' +
81
+ 'is ever counted as grounded. ' +
46
82
  'Typical wall time 15-25 minutes; progress ' +
47
83
  'is streamed via notifications/progress. ' +
48
84
  'This hero tool runs the whole curated pipeline in one call. PREFER it over hand-assembling ' +
@@ -85,12 +121,24 @@ export const TOOLS = [
85
121
  'to the full clien_research report when you only need the COMPETITOR dimension. Runs one web ' +
86
122
  'researcher (not the whole H1-H8 pipeline): typical wall time 2-10 minutes, progress streamed ' +
87
123
  'via notifications/progress. Returns a structured list of competitors in `_meta.competitors` — ' +
88
- 'each with name, url, description, pricing, strengths[], weaknesses[], and relevantHypotheses[] — ' +
89
- 'plus a readable summary. ' +
124
+ 'each with name, url, description, pricing, strengths[], weaknesses[], relevantHypotheses[], ' +
125
+ 'and the four company facts (`funding`, `employeeCount`, `founded`, `hqLocation`) — plus a ' +
126
+ 'readable summary. ' +
127
+ 'TRUST: those four company facts are UN-RECEIPTED here — this tool stores the value the ' +
128
+ 'researcher wrote, not the URL it came from, and attaches no grounding object to any of ' +
129
+ 'them. Treat all four as unverified, and do not cite them as source-checked. The surface ' +
130
+ 'that DOES carry per-fact provenance is `list_competitors`, where each of the same four ' +
131
+ 'facts has a sibling `<fact>Grounding` field ({ state: GROUNDED | SPECULATION | NO_RECEIPT, ' +
132
+ 'sourceUrl?, sourceRetrievedAt? }) — key on `state` there, and treat anything that is not ' +
133
+ 'GROUNDED as unverified. ' +
90
134
  'WHAT COUNTS AS A COMPETITOR: direct and adjacent products/services a target user would ' +
91
135
  'realistically evaluate or already use to solve the same problem — including incumbents, ' +
92
136
  'startups, and notable open-source or DIY alternatives; not tangential tools. Depth is a ' +
93
137
  'focused landscape scan (roughly 3-10 competitors), not an exhaustive market map. ' +
138
+ 'CHECK THE FREE READ FIRST: `list_competitors` returns the competitors a project has already ' +
139
+ 'accumulated across every past run and the web app, at no credit cost. Read it (or ' +
140
+ '`get_project`) before spending here, so you do not pay to rediscover what the project ' +
141
+ 'already knows. Use this tool when you need a FRESH scan or the project has no competitors yet. ' +
94
142
  'ATTACH TO A PROJECT so results are saved to the web app\'s Research → Competitors tab: pass ' +
95
143
  '`project_id` for an existing project, or `project_name` to auto-create one. Without either, ' +
96
144
  'the scan still returns competitors here but does NOT persist them. ' +
@@ -115,6 +163,11 @@ export const TOOLS = [
115
163
  'WHAT IT LOOKS FOR: evidence about the PROBLEM and demand — people describing the pain point, ' +
116
164
  'asking for a solution, or complaining about existing tools — not generic keyword hits. This is ' +
117
165
  'NOT a generic web search; frame the topic as a user problem/audience for the best threads. ' +
166
+ 'CHECK THE FREE READ FIRST: `list_community_signals` returns the threads a project has ' +
167
+ 'already accumulated across every past run and the web app, at no credit cost — including ' +
168
+ 'each thread\'s cached verbatim `relevantQuotes[]`, the same field this tool returns. Read it ' +
169
+ '(or `get_project`) before spending here, so you do not pay to rediscover user voice the ' +
170
+ 'project already holds. Use this tool when you need FRESH threads or the project has none yet. ' +
118
171
  'ATTACH TO A PROJECT so results are saved to the web app\'s Research → Community tab: pass ' +
119
172
  '`project_id` for an existing project, or `project_name` to auto-create one. Without either, the ' +
120
173
  'threads are returned here but NOT persisted. ' +
@@ -150,13 +203,49 @@ export const TOOLS = [
150
203
  zodSchema: CreateProjectInputSchema,
151
204
  handler: (args, deps) => createProject(args, deps),
152
205
  }),
206
+ defineTool({
207
+ name: 'get_project',
208
+ description: 'Orient on a Clien.ai project in ONE call: the project\'s metadata plus the counts, ids, ' +
209
+ 'and one-line summaries of everything in it — personas, interviews, competitors, ' +
210
+ 'community signals, and research reports. START HERE when you pick up an existing ' +
211
+ 'project and need to know what it already holds; it replaces the five separate ' +
212
+ '`list_*` calls that answer the same question. Reading it BEFORE `clien_research`, ' +
213
+ '`scan_competitors`, or `search_forums` is the cheapest way to avoid paying to ' +
214
+ 'rediscover work the project already has. ' +
215
+ 'Pass `include` (any of "personas", "interviews", "competitors", "community", ' +
216
+ '"reports") to inline those collections\' full records instead of summaries, and ' +
217
+ '`limit` to cap how many records per collection come back. Inlined interviews carry ' +
218
+ '`messageCount` but NOT transcripts — use `get_interview` for one. ' +
219
+ 'DEGRADED RESULTS ARE NORMAL AND MUST BE READ CAREFULLY: each collection is fetched ' +
220
+ 'independently, so one failing read does not lose the others — it comes back as ' +
221
+ '`{ error: "unavailable", detail }` under its key in `_meta.collections`. ' +
222
+ '`_meta.project` uses that SAME shape, so check for an `error` key there too ' +
223
+ 'before reading `.name` — the project metadata can be the one part that failed ' +
224
+ 'while every collection loaded. An `unavailable` entry is NOT an empty one: never ' +
225
+ 'conclude a project has no competitors (and never start a paid scan) on the ' +
226
+ 'strength of a collection that failed to load. A collection also comes back ' +
227
+ '`unavailable` when the server answers without a usable count, precisely so a ' +
228
+ 'broken response can never read as "this project has none". Re-read just that ' +
229
+ 'collection with its `list_*` tool. ' +
230
+ 'COUNTS: `count` is the project-wide total and `countExact` is true for personas, ' +
231
+ 'interviews, competitors, and community signals. For REPORTS the endpoint returns no ' +
232
+ 'total, so a full page yields `countExact: false` and `count` is a LOWER BOUND — ' +
233
+ 'there may be more. ' +
234
+ 'ORDERING differs per collection and is not interchangeable: personas by newest ' +
235
+ 'created, interviews by newest started, reports by newest created, competitors by ' +
236
+ 'most recently SEEN (a competitor re-sighted by a later run moves back to the top), ' +
237
+ 'and community signals by newest DISCOVERED (stable — a thread seen again does not ' +
238
+ 'move). Read-only: no credit cost, no side effects.',
239
+ zodSchema: GetProjectInputSchema,
240
+ handler: (args, deps) => getProject(args, deps),
241
+ }),
153
242
  defineTool({
154
243
  name: 'create_persona',
155
244
  description: 'Create a persona (a target user/customer profile) in a Clien.ai project from ' +
156
245
  'fields you already know. Returns the created persona (including its `id`) in ' +
157
- '`_meta.persona`. Requires a `projectId` — call `list_projects` first to find one, ' +
246
+ '`_meta.persona`. Requires a `project_id` — call `list_projects` first to find one, ' +
158
247
  'or `create_project` to make one. Provide `name` and `role` at minimum; add ' +
159
- '`company`, `description` (background/goals/pain points), `companySize`, `industry`, ' +
248
+ '`company`, `description` (background/goals/pain points), `company_size`, `industry`, ' +
160
249
  'and `location` when you have them. Set `ephemeral: true` for a scratch persona you ' +
161
250
  'do NOT want counted in the project\'s aggregate insights (e.g. a quick one-off). ' +
162
251
  'Compose with `interview_persona` to validate a NEW MARKET cheaply: create a persona ' +
@@ -166,14 +255,18 @@ export const TOOLS = [
166
255
  'generate the background/company/industry from just a name + role, use `generate_persona` instead ' +
167
256
  '(that path debits 1 credit).',
168
257
  zodSchema: CreatePersonaInputSchema,
258
+ paramAliases: CREATE_PERSONA_ALIASES,
169
259
  handler: (args, deps) => createPersona(args, deps),
170
260
  }),
171
261
  defineTool({
172
262
  name: 'generate_persona',
173
263
  description: 'AI-generate a persona from a short brief and save it to a Clien.ai project. Supply at minimum ' +
174
- '`projectId`, `name`, and `role`; the model fills a believable background, company, industry, ' +
175
- 'company size, and location. Add `company`, `industry`, or `companySize` to pin those yourself, ' +
176
- 'and `additionalContext` (a free-form brief) to steer the persona toward the product/market you ' +
264
+ '`project_id`, `name`, and `role`; the model fills a believable background, company, industry, ' +
265
+ 'company size, and location, plus a decision endowment (what they use today, what they pay for ' +
266
+ 'it, switching cost, and who pays vs. who uses) and a credibility domain (what the persona is ' +
267
+ 'credible on, and not beyond) folded into the background so interviews reason from a real status ' +
268
+ 'quo. Add `company`, `industry`, or `company_size` to pin those yourself, ' +
269
+ 'and `additional_context` (a free-form brief) to steer the persona toward the product/market you ' +
177
270
  'are validating. Set `ephemeral: true` for a scratch persona excluded from the project\'s ' +
178
271
  'aggregate insights. Returns the created persona (including its `id`) in `_meta.persona`. ' +
179
272
  'This DEBITS 1 credit per generated persona (the explicit, no-AI `create_persona` is free — use ' +
@@ -181,15 +274,16 @@ export const TOOLS = [
181
274
  'with your balance and a top-up link, and nothing is charged. A failed generation is never ' +
182
275
  'charged, so a surfaced error is safe to retry.',
183
276
  zodSchema: GeneratePersonaInputSchema,
277
+ paramAliases: GENERATE_PERSONA_ALIASES,
184
278
  handler: (args, deps) => generatePersona(args, deps),
185
279
  }),
186
280
  defineTool({
187
281
  name: 'enrich_persona',
188
282
  description: 'AI-enrich an EXISTING persona: fill in the thin scalar fields it is missing (background/' +
189
- 'description, company, industry, company size, location) using the model. Supply `personaId`; ' +
283
+ 'description, company, industry, company size, location) using the model. Supply `persona_id`; ' +
190
284
  'the model fills only the fields that are currently BLANK — it never overwrites content you ' +
191
285
  'already entered. To regenerate specific already-populated fields, pass `refresh` (e.g. ' +
192
- '["description", "industry"]). Add `additionalContext` (a free-form brief) to steer the ' +
286
+ '["description", "industry"]). Add `additional_context` (a free-form brief) to steer the ' +
193
287
  'enrichment toward the product/market you are validating. Returns the updated persona in ' +
194
288
  '`_meta.persona` and the filled fields in `_meta.enriched`. ' +
195
289
  'This DEBITS 1 credit per enrichment (use `create_persona` to set fields explicitly for free, ' +
@@ -198,8 +292,55 @@ export const TOOLS = [
198
292
  'clear error with your balance and a top-up link. A failed enrichment is always refunded, so a ' +
199
293
  'surfaced error is safe to retry. Provenance (source, insights inclusion) is left unchanged.',
200
294
  zodSchema: EnrichPersonaInputSchema,
295
+ paramAliases: ENRICH_PERSONA_ALIASES,
201
296
  handler: (args, deps) => enrichPersona(args, deps),
202
297
  }),
298
+ defineTool({
299
+ name: 'list_personas',
300
+ description: 'List the personas in a Clien.ai project (newest first, paginated). Returns each ' +
301
+ 'persona\'s name, role, and id as text, plus the raw persona array and pagination in ' +
302
+ '`_meta.personas` / `_meta.pagination`. Requires a `project_id` — call `list_projects` ' +
303
+ 'to find one. This is the KEYSTONE discovery read: it surfaces personas created in the ' +
304
+ 'web app too, so you can get a persona `id` to pass to `get_persona`, `update_persona`, ' +
305
+ '`enrich_persona`, or `interview_persona` — previously an agent could only reach personas ' +
306
+ 'it created in the same session. This is the entity list, NOT the grounding surface: ' +
307
+ 'persona forum + identity grounding lives in `report_data` (read it via `get_report`). ' +
308
+ 'Read-only: no credit cost, no side effects.',
309
+ zodSchema: ListPersonasInputSchema,
310
+ handler: (args, deps) => listPersonas(args, deps),
311
+ }),
312
+ defineTool({
313
+ name: 'get_persona',
314
+ description: 'Fetch a single persona by its `persona_id` (from a `list_personas` entry or a persona\'s ' +
315
+ '`_meta.persona.id`). Returns a one-line summary as text plus the full persona entity ' +
316
+ '(name, role, company, industry, company size, location, background/description, source, ' +
317
+ 'lock state) in `_meta.persona`. Use it to inspect a persona before correcting it with ' +
318
+ '`update_persona` or interviewing it with `interview_persona`. NOTE: this returns the ' +
319
+ 'persona ENTITY, not its grounding — forum `sources[]` and identity grounding ' +
320
+ '(`identityPriors` / `identityProvenance`) live on `report_data.personas[]`, read them via ' +
321
+ '`get_report`. Read-only: no credit cost, no side effects.',
322
+ zodSchema: GetPersonaInputSchema,
323
+ handler: (args, deps) => getPersona(args, deps),
324
+ }),
325
+ defineTool({
326
+ name: 'update_persona',
327
+ description: 'Correct explicit scalar fields of an EXISTING persona (fix a wrong role, company, ' +
328
+ 'industry, background, etc.). Supply `persona_id` and at least one of `name`, `role`, ' +
329
+ '`company`, `description`, `company_size`, `industry`, `location`; only the fields you pass ' +
330
+ 'are changed. Returns the updated persona in `_meta.persona` and the changed fields in ' +
331
+ '`_meta.updated` — named as they appear on the persona ENTITY (so `company_size` reports ' +
332
+ 'back as `companySize`, matching `_meta.persona`). This is a FREE, unmetered explicit edit ' +
333
+ '— it does NOT use the AI or ' +
334
+ 'debit a credit (use `enrich_persona` to AI-fill blank fields instead, or `generate_persona` ' +
335
+ 'to AI-create a new one). Completes the read → correct → interview loop from the agent: ' +
336
+ 'discover a persona with `list_personas`, fix it here, then `interview_persona`. Rejected ' +
337
+ 'with a 404 if you do not own the persona (call `list_personas` to confirm the id); a persona ' +
338
+ 'locked by subscription limits is refused separately with an upgrade prompt. ' +
339
+ 'Identity priors (seniority / career path) are not editable here.',
340
+ zodSchema: UpdatePersonaInputSchema,
341
+ paramAliases: UPDATE_PERSONA_ALIASES,
342
+ handler: (args, deps) => updatePersona(args, deps),
343
+ }),
203
344
  defineTool({
204
345
  name: 'list_reports',
205
346
  description: 'List the caller\'s past `clien_research` runs (newest first, paginated by `limit`). ' +
@@ -220,7 +361,16 @@ export const TOOLS = [
220
361
  'plus structured `report_data` (hypotheses, competitors[], key findings) in `_meta` — ' +
221
362
  'the same shape `clien_research` returns, including the typed TRUST layer: `claims[]` with ' +
222
363
  'GROUNDED / SPECULATION / NO_RECEIPT classifications + `sourceId` receipts (a GROUNDED claim\'s ' +
223
- '"RCP-p{i}-s{j}" sourceId indexes `personas[i].sources[j]`), `personas[].sources[]` + `qaFlagged`, ' +
364
+ '"RCP-p{i}-s{j}" sourceId indexes `personas[i].sources[j]`), the SEPARATE `reportClaims[]` ' +
365
+ 'market/competitor spine (a GROUNDED claim\'s "RRCP-s{n}" sourceId indexes `reportEvidence[n]`; on ' +
366
+ 'this spine a NO_RECEIPT claim with an `attestation` marker reads as "Model-attested" — Claude read ' +
367
+ 'a supporting page a check vouched for, no exact quote pinned (its `attestation.sourceId` also ' +
368
+ 'indexes `reportEvidence[n]`, but presence never implies grounding — key on `state`) — and ' +
369
+ 'otherwise as "from model knowledge — unverified", a figure Claude recalled that was not verified ' +
370
+ 'against a source; neither is counted as grounded), ' +
371
+ '`personas[].sources[]` + `qaFlagged` (plus the Exa Rail identity grounding: `identityPriors` ' +
372
+ 'and `identityProvenance` — a PII-free aggregate calibration line that is NEVER a receipt, unlike ' +
373
+ 'the clickable `sources[]`), ' +
224
374
  '`hypothesisResults[].robustness` survival counts (prefer `downgradedStatus` when `flipped`), and ' +
225
375
  '`sycophancySignals`. Use this to RETRIEVE past research instead of ' +
226
376
  're-running `clien_research`, which would debit credits again for the same idea. ' +
@@ -234,11 +384,11 @@ export const TOOLS = [
234
384
  defineTool({
235
385
  name: 'interview_persona',
236
386
  description: 'Run a real, stateful multi-turn interview with a persona and get its full replies. ' +
237
- 'Drive it as a loop: `action:start` once (with projectId + personaId) opens the interview ' +
387
+ 'Drive it as a loop: `action:start` once (with project_id + persona_id) opens the interview ' +
238
388
  'and seeds the persona\'s greeting, returning the interview id in `_meta.interview.id`. ' +
239
- 'Then `action:turn` (interviewId + content) repeatedly — each call posts one question and ' +
389
+ 'Then `action:turn` (interview_id + content) repeatedly — each call posts one question and ' +
240
390
  'returns THAT persona\'s full reply as the result text; read it, then ask the next question. ' +
241
- '`action:transcript` (interviewId) re-reads the whole conversation. `action:complete` closes ' +
391
+ '`action:transcript` (interview_id) re-reads the whole conversation. `action:complete` closes ' +
242
392
  'the interview when you\'ve learned enough (5-12 turns is typical); `action:reopen` resumes a ' +
243
393
  'completed one. Interviews and their auto-summary/message-count behave exactly like the web app. ' +
244
394
  'Set `ephemeral:true` on `start` for a scratch interview excluded from the project\'s aggregate ' +
@@ -247,7 +397,76 @@ export const TOOLS = [
247
397
  'interviews together yourself. Each `turn` generates a real AI reply (metered by your monthly ' +
248
398
  'usage; per-turn credit pricing is not yet applied).',
249
399
  zodSchema: InterviewPersonaInputSchema,
400
+ paramAliases: INTERVIEW_PERSONA_ALIASES,
250
401
  handler: (args, deps) => interviewPersona(args, deps),
251
402
  }),
403
+ defineTool({
404
+ name: 'list_interviews',
405
+ description: 'List the interviews in a Clien.ai project (newest first, paginated). Returns each ' +
406
+ 'interview\'s status, persona id, message count, and id as text, plus the raw interview ' +
407
+ 'array (with full message transcripts) and pagination in `_meta.interviews` / ' +
408
+ '`_meta.pagination`. Requires a `project_id` — call `list_projects` to find one. Use it to ' +
409
+ 'RECOVER a past interview id (including interviews started in the web app) so you can ' +
410
+ 're-read its transcript with `get_interview` — previously an interview id was only ' +
411
+ 'obtainable from `interview_persona action:start` in the same session. Read-only: no ' +
412
+ 'credit cost, no side effects.',
413
+ zodSchema: ListInterviewsInputSchema,
414
+ handler: (args, deps) => listInterviews(args, deps),
415
+ }),
416
+ defineTool({
417
+ name: 'get_interview',
418
+ description: 'Fetch a single interview by its `interview_id` (from a `list_interviews` entry or an ' +
419
+ 'interview\'s `_meta.interview.id`). Returns the full message transcript as text plus the ' +
420
+ 'interview entity (status, personaId, messages, completedAt) in `_meta.interview`. Use it ' +
421
+ 'to re-read a completed interview without re-running it. This is the read-only twin of ' +
422
+ '`interview_persona action:transcript`, reachable from just an id. Read-only: no credit ' +
423
+ 'cost, no side effects.',
424
+ zodSchema: GetInterviewInputSchema,
425
+ handler: (args, deps) => getInterview(args, deps),
426
+ }),
427
+ defineTool({
428
+ name: 'list_competitors',
429
+ description: 'List the competitors recorded for a Clien.ai project (most-recently-seen first, ' +
430
+ 'paginated). Returns each competitor\'s name, pricing, description, url, and company ' +
431
+ 'facts as text, plus the full competitor array and pagination in `_meta.competitors` / ' +
432
+ '`_meta.pagination`. Requires a `project_id` — call `list_projects` to find one. ' +
433
+ 'This reads the project\'s DEDUPED, ACCUMULATED competitor set — merged across every ' +
434
+ 'research run and the web app — so unlike `get_report` (one run\'s view) or ' +
435
+ '`scan_competitors` (a fresh, credit-debiting scan), it answers "what does this project ' +
436
+ 'already know?" without spending anything. Check here BEFORE running `scan_competitors` ' +
437
+ 'to avoid paying to rediscover competitors you already have. ' +
438
+ 'TRUST: each of the four company facts (`funding`, `employeeCount`, `founded`, ' +
439
+ '`hqLocation`) carries its own grounding in the sibling `<fact>Grounding` field ' +
440
+ '({ state: GROUNDED | SPECULATION | NO_RECEIPT, sourceUrl?, sourceRetrievedAt? }), ' +
441
+ 'persisted in lockstep with the value so it always describes the figure shown. ' +
442
+ 'A `null` grounding means no source was attributed — key on `state` and treat anything ' +
443
+ 'that is not GROUNDED as unverified; the presence of a grounding object never by itself ' +
444
+ 'means the fact is checked. ' +
445
+ 'Read-only: no credit cost, no side effects.',
446
+ zodSchema: ListCompetitorsInputSchema,
447
+ handler: (args, deps) => listCompetitors(args, deps),
448
+ }),
449
+ defineTool({
450
+ name: 'list_community_signals',
451
+ description: 'List the community signals (forum/Reddit/HN threads) recorded for a Clien.ai project ' +
452
+ '(newest-discovered first, paginated). Returns each thread\'s title, platform, ' +
453
+ 'sentiment summary, url, a representative quote, and engagement as text, plus the full ' +
454
+ 'signal array and pagination in `_meta.communitySignals` / `_meta.pagination`. Requires ' +
455
+ 'a `project_id` — call `list_projects` to find one. ' +
456
+ 'This reads the project\'s DEDUPED, ACCUMULATED thread set — merged across every research ' +
457
+ 'run and the web app — so unlike `get_report` (one run\'s view) or `search_forums` (a ' +
458
+ 'fresh, credit-debiting scan), it answers "what user voice has this project already ' +
459
+ 'collected?" for free. Check here BEFORE running `search_forums` to avoid paying to ' +
460
+ 'rediscover threads you already have. Each signal\'s `relevantQuotes[]` are the verbatim ' +
461
+ 'user-voice excerpts cached at collection — the same field `search_forums` returns — so ' +
462
+ 'they stay readable even if the thread later disappears. ' +
463
+ 'ORDERING differs from `list_competitors` on purpose: this feed is ordered by when the ' +
464
+ 'project FIRST saw a thread and that order is STABLE — a thread a later run sees again ' +
465
+ 'does not move back to page one. So page one is the newest DISCOVERIES, not the newest ' +
466
+ 'activity; do not read a thread\'s position as a recency signal. ' +
467
+ 'Read-only: no credit cost, no side effects.',
468
+ zodSchema: ListCommunitySignalsInputSchema,
469
+ handler: (args, deps) => listCommunitySignals(args, deps),
470
+ }),
252
471
  ];
253
472
  //# sourceMappingURL=registry.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/tools/registry.ts"],"names":[],"mappings":"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"}
@@ -469,9 +469,19 @@ function renderCompetitors(competitors, topic, persistenceLine) {
469
469
  const header = `${i + 1}. **${c.name || 'Unnamed competitor'}**${c.pricing ? ` — ${c.pricing}` : ''}`;
470
470
  const desc = c.description ? `\n ${truncate(c.description, 240)}` : '';
471
471
  const url = c.url ? `\n ${c.url}` : '';
472
+ // FUL-179: the M1b company-metadata fields. Rendered as a single "·"-joined line so a
473
+ // competitor missing all four adds no noise, and one with a couple stays compact. These are
474
+ // un-receipted (see CompetitorProfileSchema) — presented as plain facts, not cited claims.
475
+ 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);
481
+ const metaLine = meta.length ? `\n ${meta.join(' · ')}` : '';
472
482
  const strengths = c.strengths?.length ? `\n Strengths: ${c.strengths.join('; ')}` : '';
473
483
  const weaknesses = c.weaknesses?.length ? `\n Weaknesses: ${c.weaknesses.join('; ')}` : '';
474
- return `${header}${desc}${url}${strengths}${weaknesses}`;
484
+ return `${header}${desc}${url}${metaLine}${strengths}${weaknesses}`;
475
485
  });
476
486
  return (`Found ${competitors.length} competitor${competitors.length === 1 ? '' : 's'} for "${truncate(topic, 120)}":\n\n` +
477
487
  `${lines.join('\n\n')}\n\n${persistenceLine}`);
@@ -493,11 +503,17 @@ function renderThreads(threads, topic, persistenceLine) {
493
503
  }
494
504
  /**
495
505
  * When a refusal echoes the project id, tell the agent to reuse it on retry —
496
- * without this, a projectName-only retry creates a duplicate project.
506
+ * without this, a `project_name`-only retry creates a duplicate project.
507
+ *
508
+ * The param named here MUST be the one these tools actually accept. Both scoped
509
+ * tools take `project_id` and carry NO deprecated aliases, so the old
510
+ * `projectId` wording sent the agent to a field `additionalProperties: false`
511
+ * drops — the retry silently minted the duplicate project this hint exists to
512
+ * prevent.
497
513
  */
498
514
  function projectReuseHint(parsed) {
499
515
  return typeof parsed?.project_id === 'string' && parsed.project_id.length > 0
500
- ? ` The project for this attempt already exists (id ${parsed.project_id}) — pass projectId: "${parsed.project_id}" when you retry so a duplicate is not created.`
516
+ ? ` The project for this attempt already exists (id ${parsed.project_id}) — pass project_id: "${parsed.project_id}" when you retry so a duplicate is not created.`
501
517
  : '';
502
518
  }
503
519
  /** Map a non-ok POST /scoped/start response to a user-facing ScopedResearchToolError. */
@@ -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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"}