clinicaltrialsgov-mcp-server 2.8.4 → 2.8.5
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 +1 -1
- package/dist/mcp-server/tools/definitions/get-study-results.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-study-results.tool.js +275 -104
- package/dist/mcp-server/tools/definitions/get-study-results.tool.js.map +1 -1
- package/dist/mcp-server/tools/definitions/get-study.tool.d.ts.map +1 -1
- package/dist/mcp-server/tools/definitions/get-study.tool.js +307 -56
- package/dist/mcp-server/tools/definitions/get-study.tool.js.map +1 -1
- package/dist/services/clinical-trials/types.d.ts +164 -67
- package/dist/services/clinical-trials/types.d.ts.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
|
|
8
8
|
<div align="center">
|
|
9
9
|
|
|
10
|
-
[](https://www.npmjs.com/package/clinicaltrialsgov-mcp-server) [](https://github.com/users/cyanheads/packages/container/package/clinicaltrialsgov-mcp-server) [](https://www.npmjs.com/package/clinicaltrialsgov-mcp-server) [](https://github.com/users/cyanheads/packages/container/package/clinicaltrialsgov-mcp-server) [](./CHANGELOG.md) [](https://modelcontextprotocol.io/) [](./LICENSE) [](https://www.typescriptlang.org/) [](https://bun.sh/)
|
|
11
11
|
|
|
12
12
|
</div>
|
|
13
13
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-study-results.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-study-results.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;
|
|
1
|
+
{"version":3,"file":"get-study-results.tool.d.ts","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-study-results.tool.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAQ,CAAC,EAAE,MAAM,wBAAwB,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,+BAA+B,CAAC;AAgoBjE,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;cAoP1B,CAAC"}
|
|
@@ -36,7 +36,9 @@ function displayMeasurementValue(value, paramType) {
|
|
|
36
36
|
return (v === 'NA' || v === 'NR') && paramType === 'MEDIAN' ? 'not reached' : v;
|
|
37
37
|
}
|
|
38
38
|
/**
|
|
39
|
-
* Extract top-line per-group stats from a raw outcome object
|
|
39
|
+
* Extract top-line per-group stats from a raw outcome object for summary mode's
|
|
40
|
+
* `topStats`. Reads only the first class/category — deliberate condensation, and
|
|
41
|
+
* the reason full mode walks the whole tree in format() instead of calling this.
|
|
40
42
|
* Returns undefined if no measurement values are present.
|
|
41
43
|
*/
|
|
42
44
|
function extractTopStats(o) {
|
|
@@ -205,39 +207,196 @@ function groupMap(obj) {
|
|
|
205
207
|
function shortGroup(title, max = 40) {
|
|
206
208
|
return title.length <= max ? title : `${title.slice(0, max - 1)}…`;
|
|
207
209
|
}
|
|
210
|
+
/** Coerce a raw value to a trimmed display string, or undefined when absent/blank. */
|
|
211
|
+
function text(value) {
|
|
212
|
+
if (value == null)
|
|
213
|
+
return;
|
|
214
|
+
const s = String(value).trim();
|
|
215
|
+
return s.length > 0 ? s : undefined;
|
|
216
|
+
}
|
|
217
|
+
/**
|
|
218
|
+
* Render the arm roster for a results section. `id` is the join key every
|
|
219
|
+
* measurement, count, and stat references, and `description` is the arm's
|
|
220
|
+
* definition — both belong on the text channel alongside the title.
|
|
221
|
+
*/
|
|
222
|
+
function renderGroupRoster(obj, indent, lines, label = 'Groups') {
|
|
223
|
+
const groups = (obj.groups ?? obj.eventGroups);
|
|
224
|
+
if (!groups?.length)
|
|
225
|
+
return;
|
|
226
|
+
lines.push(`${indent}${label}:`);
|
|
227
|
+
for (const g of groups) {
|
|
228
|
+
const head = [text(g.id), text(g.title)].filter(Boolean).join(': ');
|
|
229
|
+
lines.push(`${indent}- ${head || 'Group'}`);
|
|
230
|
+
const desc = text(g.description);
|
|
231
|
+
if (desc)
|
|
232
|
+
lines.push(`${indent} ${desc}`);
|
|
233
|
+
const rollup = [
|
|
234
|
+
g.deathsNumAffected != null
|
|
235
|
+
? `deaths ${g.deathsNumAffected}/${g.deathsNumAtRisk ?? '?'}`
|
|
236
|
+
: '',
|
|
237
|
+
g.seriousNumAffected != null
|
|
238
|
+
? `serious ${g.seriousNumAffected}/${g.seriousNumAtRisk ?? '?'}`
|
|
239
|
+
: '',
|
|
240
|
+
g.otherNumAffected != null ? `other ${g.otherNumAffected}/${g.otherNumAtRisk ?? '?'}` : '',
|
|
241
|
+
].filter(Boolean);
|
|
242
|
+
if (rollup.length)
|
|
243
|
+
lines.push(`${indent} ${rollup.join(' | ')}`);
|
|
244
|
+
}
|
|
245
|
+
}
|
|
246
|
+
/** Render denominator rows — the units and the per-group counts they apply to. */
|
|
247
|
+
function renderDenoms(denoms, gm, indent, lines) {
|
|
248
|
+
for (const d of denoms ?? []) {
|
|
249
|
+
const counts = (d.counts ?? [])
|
|
250
|
+
.map((c) => {
|
|
251
|
+
const g = shortGroup(gm.get(c.groupId) ?? String(c.groupId));
|
|
252
|
+
return c.value != null ? `${g}: ${c.value}` : g;
|
|
253
|
+
})
|
|
254
|
+
.join(', ');
|
|
255
|
+
const units = text(d.units);
|
|
256
|
+
const label = units ? `Denominator (${units})` : 'Denominator';
|
|
257
|
+
lines.push(`${indent}${[label, counts].filter(Boolean).join(': ')}`);
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
/**
|
|
261
|
+
* Render per-group participant counts as `Group: subjects / units (comment)`
|
|
262
|
+
* segments — the shape both participant-flow milestone achievements and
|
|
263
|
+
* drop/withdraw reasons publish.
|
|
264
|
+
*/
|
|
265
|
+
function countsByGroup(rows, gm) {
|
|
266
|
+
return (rows ?? [])
|
|
267
|
+
.map((r) => {
|
|
268
|
+
const gName = shortGroup(gm.get(r.groupId) ?? r.groupId);
|
|
269
|
+
const comment = text(r.comment);
|
|
270
|
+
const count = [r.numSubjects, r.numUnits].filter((v) => v != null).join(' / ') || '?';
|
|
271
|
+
return `${gName}: ${count}${comment ? ` (${comment})` : ''}`;
|
|
272
|
+
})
|
|
273
|
+
.join(', ');
|
|
274
|
+
}
|
|
275
|
+
/** Render one measurement cell — value, spread, confidence limits, and comment. */
|
|
276
|
+
function measurementCell(m, gm, paramType) {
|
|
277
|
+
const parts = [];
|
|
278
|
+
if (m.value != null)
|
|
279
|
+
parts.push(displayMeasurementValue(m.value, paramType));
|
|
280
|
+
if (m.spread != null)
|
|
281
|
+
parts.push(`±${m.spread}`);
|
|
282
|
+
if (m.lowerLimit != null || m.upperLimit != null)
|
|
283
|
+
parts.push(`[${m.lowerLimit ?? ''} to ${m.upperLimit ?? ''}]`);
|
|
284
|
+
const comment = text(m.comment);
|
|
285
|
+
if (comment)
|
|
286
|
+
parts.push(`(${comment})`);
|
|
287
|
+
if (parts.length === 0)
|
|
288
|
+
return;
|
|
289
|
+
const g = shortGroup(gm.get(m.groupId) ?? String(m.groupId));
|
|
290
|
+
return `${g}: ${parts.join(' ')}`;
|
|
291
|
+
}
|
|
292
|
+
/**
|
|
293
|
+
* Walk a measure's complete classes → categories → measurements tree. Every
|
|
294
|
+
* level carries data — class and category titles, per-class denominators, and
|
|
295
|
+
* the per-group cells — so reading only the first entry drops the rest of the
|
|
296
|
+
* measure from the text channel.
|
|
297
|
+
*/
|
|
298
|
+
function renderClasses(classes, gm, paramType, indent, lines) {
|
|
299
|
+
for (const cls of classes ?? []) {
|
|
300
|
+
const clsTitle = text(cls.title);
|
|
301
|
+
if (clsTitle)
|
|
302
|
+
lines.push(`${indent}_${clsTitle}_`);
|
|
303
|
+
renderDenoms(cls.denoms, gm, `${indent} `, lines);
|
|
304
|
+
for (const cat of cls.categories ?? []) {
|
|
305
|
+
const catTitle = text(cat.title);
|
|
306
|
+
const cells = (cat.measurements ?? [])
|
|
307
|
+
.map((m) => measurementCell(m, gm, paramType))
|
|
308
|
+
.filter((v) => Boolean(v));
|
|
309
|
+
// Label the row even when upstream titles neither the class nor the
|
|
310
|
+
// category, so a measurement row is never mistaken for a denominator row.
|
|
311
|
+
const prefix = catTitle ?? clsTitle ?? 'Values';
|
|
312
|
+
if (cells.length > 0)
|
|
313
|
+
lines.push(`${indent} ${prefix}: ${cells.join(', ')}`);
|
|
314
|
+
else if (catTitle)
|
|
315
|
+
lines.push(`${indent} ${catTitle}`);
|
|
316
|
+
}
|
|
317
|
+
}
|
|
318
|
+
}
|
|
208
319
|
/** Render one analysis (summary or full) as a single-line bullet. */
|
|
209
320
|
function formatAnalysisLine(a) {
|
|
321
|
+
const ci = [
|
|
322
|
+
a.ciPctValue != null ? `${a.ciPctValue}%` : '',
|
|
323
|
+
text(a.ciNumSides),
|
|
324
|
+
a.ciLowerLimit != null || a.ciUpperLimit != null
|
|
325
|
+
? `CI [${a.ciLowerLimit ?? ''}, ${a.ciUpperLimit ?? ''}]`
|
|
326
|
+
: '',
|
|
327
|
+
text(a.ciLowerLimitComment),
|
|
328
|
+
text(a.ciUpperLimitComment),
|
|
329
|
+
]
|
|
330
|
+
.filter(Boolean)
|
|
331
|
+
.join(' ');
|
|
210
332
|
const parts = [
|
|
211
333
|
a.statisticalMethod ? `Method: ${a.statisticalMethod}` : '',
|
|
334
|
+
text(a.statisticalComment),
|
|
212
335
|
a.pValue ? `p=${a.pValue}` : '',
|
|
213
|
-
a.
|
|
214
|
-
a.
|
|
215
|
-
?
|
|
336
|
+
text(a.pValueComment),
|
|
337
|
+
a.testedNonInferiority != null
|
|
338
|
+
? `non-inferiority tested: ${a.testedNonInferiority ? 'yes' : 'no'}`
|
|
216
339
|
: '',
|
|
217
340
|
a.nonInferiorityType ? `(${a.nonInferiorityType})` : '',
|
|
341
|
+
text(a.nonInferiorityComment),
|
|
342
|
+
a.paramValue ? `${a.paramType ?? 'estimate'}=${a.paramValue}` : '',
|
|
343
|
+
a.dispersionType ? `dispersion: ${a.dispersionType}` : '',
|
|
344
|
+
a.dispersionValue != null ? `±${a.dispersionValue}` : '',
|
|
345
|
+
ci,
|
|
346
|
+
text(a.estimateComment),
|
|
347
|
+
text(a.otherAnalysisDescription),
|
|
348
|
+
Array.isArray(a.groupIds) ? `groups: ${a.groupIds.join(', ')}` : '',
|
|
349
|
+
text(a.groupDescription),
|
|
218
350
|
].filter(Boolean);
|
|
219
351
|
return parts.length ? ` Analysis: ${parts.join(', ')}` : '';
|
|
220
352
|
}
|
|
221
353
|
function formatOutcomes(outcomes, lines) {
|
|
222
354
|
lines.push(`\n### Outcomes (${outcomes.length} measures)`);
|
|
223
355
|
for (const o of outcomes) {
|
|
224
|
-
const
|
|
225
|
-
const title = o.title ?? 'Untitled';
|
|
226
|
-
const timeFrame = o.timeFrame
|
|
227
|
-
const paramType = o.paramType ?? '';
|
|
228
|
-
const unitOfMeasure = o.unitOfMeasure ?? '';
|
|
356
|
+
const gm = groupMap(o);
|
|
357
|
+
const title = text(o.title) ?? 'Untitled';
|
|
358
|
+
const timeFrame = text(o.timeFrame);
|
|
229
359
|
const groupCount = o.groupCount ??
|
|
230
360
|
(Array.isArray(o.groups) ? o.groups.length : undefined);
|
|
231
|
-
const
|
|
361
|
+
const classCount = o.classCount ??
|
|
362
|
+
(Array.isArray(o.classes) ? o.classes.length : undefined);
|
|
363
|
+
const meta = [
|
|
364
|
+
text(o.type),
|
|
365
|
+
text(o.paramType),
|
|
366
|
+
text(o.dispersionType),
|
|
367
|
+
text(o.unitOfMeasure),
|
|
368
|
+
groupCount != null ? `${groupCount} groups` : '',
|
|
369
|
+
classCount != null ? `${classCount} classes` : '',
|
|
370
|
+
o.reportingStatus ? `reporting: ${o.reportingStatus}` : '',
|
|
371
|
+
]
|
|
232
372
|
.filter(Boolean)
|
|
233
373
|
.join(', ');
|
|
234
|
-
|
|
235
|
-
|
|
236
|
-
|
|
237
|
-
|
|
374
|
+
lines.push(`- **${title}**${meta ? ` (${meta})` : ''}${timeFrame ? ` [${timeFrame}]` : ''}`);
|
|
375
|
+
const description = text(o.description);
|
|
376
|
+
if (description)
|
|
377
|
+
lines.push(` ${description}`);
|
|
378
|
+
const population = text(o.populationDescription);
|
|
379
|
+
if (population)
|
|
380
|
+
lines.push(` Population: ${population}`);
|
|
381
|
+
const unitsAnalyzed = text(o.typeUnitsAnalyzed);
|
|
382
|
+
const denomUnits = text(o.denomUnitsSelected);
|
|
383
|
+
const anticipatedPosting = text(o.anticipatedPostingDate);
|
|
384
|
+
const outcomeUnits = [
|
|
385
|
+
unitsAnalyzed ? `Units analyzed: ${unitsAnalyzed}` : '',
|
|
386
|
+
denomUnits ? `Denominator units: ${denomUnits}` : '',
|
|
387
|
+
anticipatedPosting ? `Anticipated posting: ${anticipatedPosting}` : '',
|
|
388
|
+
].filter(Boolean);
|
|
389
|
+
if (outcomeUnits.length)
|
|
390
|
+
lines.push(` ${outcomeUnits.join(' | ')}`);
|
|
391
|
+
// Summary mode: the per-group top-line stats the handler condensed.
|
|
392
|
+
const topStats = o.topStats;
|
|
238
393
|
if (topStats?.length) {
|
|
239
394
|
lines.push(` ${topStats.map((s) => `${s.group}: ${s.value}${s.spread ? ` ±${s.spread}` : ''}`).join(' | ')}`);
|
|
240
395
|
}
|
|
396
|
+
// Full mode: the complete arm roster, denominators, and measurement tree.
|
|
397
|
+
renderGroupRoster(o, ' ', lines);
|
|
398
|
+
renderDenoms(o.denoms, gm, ' ', lines);
|
|
399
|
+
renderClasses(o.classes, gm, o.paramType, ' ', lines);
|
|
241
400
|
// Summary mode: single condensed analysis lifted from analyses[0].
|
|
242
401
|
const topAnalysis = o.topAnalysis;
|
|
243
402
|
if (topAnalysis) {
|
|
@@ -246,28 +405,34 @@ function formatOutcomes(outcomes, lines) {
|
|
|
246
405
|
lines.push(line);
|
|
247
406
|
}
|
|
248
407
|
// Full mode: render every analysis on the measure.
|
|
249
|
-
const
|
|
250
|
-
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
if (line)
|
|
254
|
-
lines.push(line);
|
|
255
|
-
}
|
|
408
|
+
for (const a of o.analyses ?? []) {
|
|
409
|
+
const line = formatAnalysisLine(a);
|
|
410
|
+
if (line)
|
|
411
|
+
lines.push(line);
|
|
256
412
|
}
|
|
257
413
|
}
|
|
258
414
|
}
|
|
259
415
|
function formatAdverseEvents(ae, lines) {
|
|
260
416
|
lines.push('\n### Adverse Events');
|
|
261
417
|
const gm = groupMap(ae);
|
|
262
|
-
const timeFrame = ae.timeFrame;
|
|
418
|
+
const timeFrame = text(ae.timeFrame);
|
|
263
419
|
if (timeFrame)
|
|
264
420
|
lines.push(`Assessment period: ${timeFrame}`);
|
|
265
|
-
const
|
|
266
|
-
|
|
267
|
-
|
|
268
|
-
|
|
421
|
+
const description = text(ae.description);
|
|
422
|
+
if (description)
|
|
423
|
+
lines.push(description);
|
|
424
|
+
const threshold = text(ae.frequencyThreshold);
|
|
425
|
+
if (threshold)
|
|
426
|
+
lines.push(`Frequency threshold: ${threshold}%`);
|
|
427
|
+
const mortality = text(ae.allCauseMortalityComment);
|
|
428
|
+
if (mortality)
|
|
429
|
+
lines.push(`All-cause mortality: ${mortality}`);
|
|
430
|
+
// Summary shape — counts plus the ranked top-events view, no raw event arrays.
|
|
431
|
+
// Detected on the summarizer's own keys, so a full module that happens to
|
|
432
|
+
// publish no events still takes the full path and renders its event groups.
|
|
433
|
+
if ('groupCount' in ae || 'seriousEventCount' in ae || 'otherEventCount' in ae) {
|
|
269
434
|
const parts = [
|
|
270
|
-
|
|
435
|
+
ae.groupCount != null ? `${ae.groupCount} groups` : '',
|
|
271
436
|
ae.seriousEventCount != null ? `${ae.seriousEventCount} serious events` : '',
|
|
272
437
|
ae.otherEventCount != null ? `${ae.otherEventCount} other events` : '',
|
|
273
438
|
].filter(Boolean);
|
|
@@ -283,22 +448,33 @@ function formatAdverseEvents(ae, lines) {
|
|
|
283
448
|
}
|
|
284
449
|
return;
|
|
285
450
|
}
|
|
286
|
-
// Full shape —
|
|
287
|
-
//
|
|
288
|
-
//
|
|
451
|
+
// Full shape — every event group, event, and per-group stat the handler
|
|
452
|
+
// returned. Payload control is summary mode (which condenses per item), never
|
|
453
|
+
// a format()-side cap or a per-event field subset (channel parity).
|
|
454
|
+
renderGroupRoster(ae, '', lines, 'Event Groups');
|
|
289
455
|
const renderEvents = (label, events) => {
|
|
290
456
|
lines.push(`\n**${label}** (${events.length})`);
|
|
291
457
|
for (const ev of events) {
|
|
292
|
-
const
|
|
293
|
-
|
|
458
|
+
const meta = [
|
|
459
|
+
text(ev.organSystem),
|
|
460
|
+
text(ev.sourceVocabulary),
|
|
461
|
+
text(ev.assessmentType),
|
|
462
|
+
].filter(Boolean);
|
|
463
|
+
const statStr = (ev.stats ?? [])
|
|
294
464
|
.map((s) => {
|
|
295
465
|
const gName = shortGroup(gm.get(s.groupId) ?? s.groupId);
|
|
296
|
-
|
|
466
|
+
const events_ = s.numEvents != null ? ` (${s.numEvents} events)` : '';
|
|
467
|
+
return `${gName}: ${s.numAffected}/${s.numAtRisk}${events_}`;
|
|
297
468
|
})
|
|
298
469
|
.join(', ');
|
|
299
|
-
lines.push(`- ${ev.term}${statStr ? ` — ${statStr}` : ''}`);
|
|
470
|
+
lines.push(`- ${ev.term}${meta.length ? ` _(${meta.join(' | ')})_` : ''}${statStr ? ` — ${statStr}` : ''}`);
|
|
471
|
+
const notes = text(ev.notes);
|
|
472
|
+
if (notes)
|
|
473
|
+
lines.push(` ${notes}`);
|
|
300
474
|
}
|
|
301
475
|
};
|
|
476
|
+
const serious = ae.seriousEvents;
|
|
477
|
+
const other = ae.otherEvents;
|
|
302
478
|
if (serious?.length)
|
|
303
479
|
renderEvents('Serious Events', serious);
|
|
304
480
|
if (other?.length)
|
|
@@ -307,9 +483,8 @@ function formatAdverseEvents(ae, lines) {
|
|
|
307
483
|
function formatParticipantFlow(pf, lines) {
|
|
308
484
|
lines.push('\n### Participant Flow');
|
|
309
485
|
const gm = groupMap(pf);
|
|
310
|
-
|
|
311
|
-
|
|
312
|
-
if (!periods) {
|
|
486
|
+
// Summary shape — only counts.
|
|
487
|
+
if ('groupCount' in pf || 'periodCount' in pf) {
|
|
313
488
|
const parts = [
|
|
314
489
|
pf.groupCount != null ? `${pf.groupCount} groups` : '',
|
|
315
490
|
pf.periodCount != null ? `${pf.periodCount} periods` : '',
|
|
@@ -318,33 +493,30 @@ function formatParticipantFlow(pf, lines) {
|
|
|
318
493
|
lines.push(parts.join(' | '));
|
|
319
494
|
return;
|
|
320
495
|
}
|
|
321
|
-
// Full shape —
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
496
|
+
// Full shape — recruitment context, the arm roster, then per-period milestones.
|
|
497
|
+
const recruitment = text(pf.recruitmentDetails);
|
|
498
|
+
if (recruitment)
|
|
499
|
+
lines.push(`Recruitment: ${recruitment}`);
|
|
500
|
+
const preAssignment = text(pf.preAssignmentDetails);
|
|
501
|
+
if (preAssignment)
|
|
502
|
+
lines.push(`Pre-assignment: ${preAssignment}`);
|
|
503
|
+
const unitsAnalyzed = text(pf.typeUnitsAnalyzed);
|
|
504
|
+
if (unitsAnalyzed)
|
|
505
|
+
lines.push(`Units analyzed: ${unitsAnalyzed}`);
|
|
506
|
+
renderGroupRoster(pf, '', lines);
|
|
507
|
+
for (const period of pf.periods ?? []) {
|
|
508
|
+
const periodTitle = text(period.title);
|
|
509
|
+
if (periodTitle)
|
|
510
|
+
lines.push(`\n**${periodTitle}**`);
|
|
511
|
+
for (const ms of period.milestones ?? []) {
|
|
512
|
+
const achStr = countsByGroup(ms.achievements, gm);
|
|
513
|
+
const msComment = text(ms.comment);
|
|
514
|
+
lines.push(`- **${text(ms.type) ?? 'Milestone'}**: ${achStr}${msComment ? ` — ${msComment}` : ''}`);
|
|
335
515
|
}
|
|
336
|
-
const
|
|
337
|
-
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
const rStr = (reasons ?? [])
|
|
341
|
-
.map((r) => {
|
|
342
|
-
const gName = shortGroup(gm.get(r.groupId) ?? r.groupId);
|
|
343
|
-
return `${gName}: ${r.numSubjects ?? '?'}`;
|
|
344
|
-
})
|
|
345
|
-
.join(', ');
|
|
346
|
-
lines.push(`- Drop/Withdraw — ${d.type ?? 'reason'}: ${rStr}`);
|
|
347
|
-
}
|
|
516
|
+
for (const d of period.dropWithdraws ?? []) {
|
|
517
|
+
const rStr = countsByGroup(d.reasons, gm);
|
|
518
|
+
const dComment = text(d.comment);
|
|
519
|
+
lines.push(`- Drop/Withdraw — ${text(d.type) ?? 'reason'}: ${rStr}${dComment ? ` — ${dComment}` : ''}`);
|
|
348
520
|
}
|
|
349
521
|
}
|
|
350
522
|
}
|
|
@@ -352,49 +524,47 @@ function formatBaseline(bl, lines) {
|
|
|
352
524
|
lines.push('\n### Baseline Characteristics');
|
|
353
525
|
const gm = groupMap(bl);
|
|
354
526
|
const measures = bl.measures;
|
|
355
|
-
// Summary shape —
|
|
356
|
-
|
|
357
|
-
|
|
358
|
-
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
527
|
+
// Summary shape — counts plus each measure's identifying metadata.
|
|
528
|
+
if ('groupCount' in bl || 'measureCount' in bl) {
|
|
529
|
+
const parts = [
|
|
530
|
+
bl.groupCount != null ? `${bl.groupCount} groups` : '',
|
|
531
|
+
bl.measureCount != null ? `${bl.measureCount} measures` : '',
|
|
532
|
+
].filter(Boolean);
|
|
533
|
+
if (parts.length)
|
|
534
|
+
lines.push(parts.join(' | '));
|
|
535
|
+
for (const m of measures ?? []) {
|
|
536
|
+
const meta = [text(m.paramType), text(m.unitOfMeasure)].filter(Boolean);
|
|
537
|
+
lines.push(`- ${text(m.title) ?? 'Measure'}${meta.length ? ` (${meta.join(', ')})` : ''}`);
|
|
365
538
|
}
|
|
366
539
|
return;
|
|
367
540
|
}
|
|
368
|
-
// Full shape —
|
|
369
|
-
|
|
370
|
-
|
|
541
|
+
// Full shape — population context, the arm roster, then every measure's tree.
|
|
542
|
+
const population = text(bl.populationDescription);
|
|
543
|
+
if (population)
|
|
544
|
+
lines.push(`Population: ${population}`);
|
|
545
|
+
const unitsAnalyzed = text(bl.typeUnitsAnalyzed);
|
|
546
|
+
if (unitsAnalyzed)
|
|
547
|
+
lines.push(`Units analyzed: ${unitsAnalyzed}`);
|
|
548
|
+
renderGroupRoster(bl, '', lines);
|
|
549
|
+
renderDenoms(bl.denoms, gm, '', lines);
|
|
371
550
|
for (const m of measures ?? []) {
|
|
372
|
-
const title = m.title ?? 'Measure';
|
|
373
|
-
const unit =
|
|
374
|
-
const
|
|
375
|
-
|
|
376
|
-
const
|
|
377
|
-
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
|
|
381
|
-
|
|
382
|
-
|
|
383
|
-
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
const gName = shortGroup(gm.get(v.groupId) ?? v.groupId);
|
|
390
|
-
const spread = v.spread != null ? ` ±${v.spread}` : '';
|
|
391
|
-
return `${gName}: ${displayMeasurementValue(v.value, paramType)}${spread}`;
|
|
392
|
-
})
|
|
393
|
-
.join(', ');
|
|
394
|
-
if (vals)
|
|
395
|
-
lines.push(` ${prefix ? `${prefix}: ` : ''}${vals}`);
|
|
396
|
-
}
|
|
397
|
-
}
|
|
551
|
+
const title = text(m.title) ?? 'Measure';
|
|
552
|
+
const unit = text(m.unitOfMeasure);
|
|
553
|
+
const desc = [text(m.paramType), text(m.dispersionType)].filter(Boolean).join(', ');
|
|
554
|
+
lines.push(`- **${title}**${unit ? ` (${unit})` : ''}${desc ? ` [${desc}]` : ''}`);
|
|
555
|
+
const mDescription = text(m.description);
|
|
556
|
+
if (mDescription)
|
|
557
|
+
lines.push(` ${mDescription}`);
|
|
558
|
+
const mPopulation = text(m.populationDescription);
|
|
559
|
+
if (mPopulation)
|
|
560
|
+
lines.push(` Population: ${mPopulation}`);
|
|
561
|
+
if (m.calculatePct != null)
|
|
562
|
+
lines.push(` Percentages: ${m.calculatePct ? 'yes' : 'no'}`);
|
|
563
|
+
const denomUnits = text(m.denomUnitsSelected);
|
|
564
|
+
if (denomUnits)
|
|
565
|
+
lines.push(` Denominator units: ${denomUnits}`);
|
|
566
|
+
renderDenoms(m.denoms, gm, ' ', lines);
|
|
567
|
+
renderClasses(m.classes, gm, m.paramType, ' ', lines);
|
|
398
568
|
}
|
|
399
569
|
}
|
|
400
570
|
function formatMoreInfo(mi, lines) {
|
|
@@ -423,7 +593,8 @@ function formatMoreInfo(mi, lines) {
|
|
|
423
593
|
lines.push(` ${agr.otherDetails}`);
|
|
424
594
|
}
|
|
425
595
|
if (poc) {
|
|
426
|
-
const
|
|
596
|
+
const phone = poc.phoneExt ? `${poc.phone} ext. ${poc.phoneExt}` : poc.phone;
|
|
597
|
+
const parts = [poc.title, poc.organization, poc.email, phone].filter(Boolean);
|
|
427
598
|
if (parts.length)
|
|
428
599
|
lines.push(`**Point of Contact:** ${parts.join(' | ')}`);
|
|
429
600
|
}
|
|
@@ -467,7 +638,7 @@ export const getStudyResults = tool('clinicaltrials_get_study_results', {
|
|
|
467
638
|
summary: z
|
|
468
639
|
.boolean()
|
|
469
640
|
.default(false)
|
|
470
|
-
.describe('Return condensed summaries instead of full data.
|
|
641
|
+
.describe('Return condensed summaries instead of full data. Full mode renders every row and field on both output channels, so a large results set can exceed 500KB per study; summary mode reduces that to ~5KB. Summaries include outcome titles, types, timeframes, group counts, and top-level stats — omitting individual measurements, analyses, and per-group data.'),
|
|
471
642
|
}),
|
|
472
643
|
output: z.object({
|
|
473
644
|
results: z
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get-study-results.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-study-results.tool.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"get-study-results.tool.js","sourceRoot":"","sources":["../../../../src/mcp-server/tools/definitions/get-study-results.tool.ts"],"names":[],"mappings":"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"}
|