Skip to content

Latest commit

 

History

History
239 lines (120 loc) · 13.2 KB

File metadata and controls

239 lines (120 loc) · 13.2 KB

Changelog

All notable changes to this project. Each entry links to its full per-version file in changelog/.

2.9.3 — 2026-09-02 · 🛡️ Security

A cancelled caller surfaces RequestCancelled instead of being retried or walked one ID at a time; mcp-ts-core ^0.12.5 classifies upstream 500/501 as ServiceUnavailable and closes an SSRF DNS-guard bypass

2.9.2 — 2026-08-21

mcp-ts-core ^0.12.3 (MCP SDK v2 migration); find_eligible/get_study_record nested option bags reject undeclared keys; toolchain refresh clears the last bun audit advisories

2.9.1 — 2026-08-18

nearestPieces field/sort suggestions require a similarity floor instead of always returning three; the blank_value recovery hint leads with the fix that works on required parameters; dead Cloudflare Worker scripts and devDependency removed

2.9.0 — 2026-08-18 · ⚠️ Breaking

clinicaltrials://{nctId} now returns a bounded wrapper instead of the raw study (breaking); get_study_results and find_eligible gain new caps; find_eligible no longer hides an enrollable site behind a closed one; remaining-field labels disambiguate on collision

2.8.7 — 2026-08-18

find_eligible age bounds and the enrollment sentinel filter no longer exclude studies with a missing field; sort rejections reclassified and normalized; query.* parameter descriptions completed; empty-list rejection extended to nctIds and get_field_values

2.8.6 — 2026-08-18

search_studies and get_study_results fixes: array cross-contamination, stale pagination tokens, rate-limit retry storm, and an unreachable error contract; blank-value rejection added across five tools and the analyze_trial_landscape prompt; mcp-ts-core 0.11.5 maintenance

2.8.5 — 2026-07-26

get_study_record and get_study_results format() render leaves structuredContent already carried but text output silently dropped, including the full classes/categories/measurements results tree

2.8.4 — 2026-07-26

get_study_record renders the Locations header and reason on a nearLocation match of zero; find_eligible carries each site's LocationStatus into content[]; get_field_definitions surfaces the pre-cap totalMatches in search mode

2.8.3 — 2026-07-26

throttle() serializes concurrent requests instead of firing them together; search_studies classifies malformed geoFilter/sort by reading the offending parameter from the upstream body; Essie query-parse errors name the actual offending token and correct the bracket-reservation rule; mcp-ts-core ^0.11.0 maintenance

2.8.2 — 2026-07-09

clinicaltrials_get_field_definitions path_not_found recovery hint now names the current mode-based call shape instead of the removed no-args overview; docs/design.md synced to mode/query/path/limit/includeIndexedOnly

2.8.1 — 2026-07-09

search_studies, get_field_values, and find_eligible content-output renders no longer clip long values or cap lists below what structuredContent already carries; find_eligible echoes reproducible upstream query strings; mcp-ts-core ^0.10.14 + Socket/minimumReleaseAge supply-chain guard maintenance

2.8.0 — 2026-06-30 · ⚠️ Breaking · 🛡️ Security

search_studies bounds structuredContent to a compact per-study index by default (breaking) — pass fields or use get_study_record for full leaves; find_eligible re-rank drops shared-word false friends; @cyanheads/mcp-ts-core ^0.10.10 clears a transitive js-yaml DoS advisory

2.7.4 — 2026-06-21

geoFilter searches lead with the matched site (distanceMi), get_field_values flags multi-valued fields, and query parse errors drop the raw Essie grammar dump

2.7.3 — 2026-06-20

mcp-ts-core 0.10.9 maintenance — floating-specifier and plugin-manifest devcheck guards, 14 skill syncs, dependency refresh

2.7.2 — 2026-06-14

Outcome rendering and filter-disclosure correctness — not-reached arms retained in summaries, truncation/cap flags gated on real overflow, empty field lists rejected

2.7.1 — 2026-06-14

toArray tolerates JSON-stringified array arguments from LLM callers — get_field_values fields no longer silently wraps a stringified array into one bogus element

2.7.0 — 2026-06-11

find_eligible condition re-rank; get_study_record referenceLimit; search_studies EnrollmentCount:desc guidance

2.6.6 — 2026-06-11

mcp-ts-core 0.9.21 → 0.10.6: createApp identity pair, bundle clean step, .mcpbignore re-anchoring, truncation enrichment on field-definitions, skills sync

2.6.5 — 2026-06-08

Fix phaseFilter/sort error messages and correct reserved-char docs for free-text query params

2.6.4 — 2026-06-05

Remove local SQLite study mirror (CT_MIRROR_*); fix find_eligible recruitingOnly to exclude NOT_YET_RECRUITING

2.6.3 — 2026-06-04

node-cron declared as direct dep; CT_MIRROR_ENABLED and CT_MIRROR_FALLBACK_LIVE now parse z.stringbool() so "false" disables correctly

2.6.2 — 2026-06-04

Opt-in local SQLite mirror for offline study search and count (CT_MIRROR_* env vars)

2.6.1 — 2026-06-02

get_study_results gains moreInfo section — limitations & caveats, certain-agreement restrictions, results point of contact

2.6.0 — 2026-06-02 · ⚠️ Breaking

typed enum_invalid contract on search/count tools, always-on searchCriteria echo, get_study_count query parity, topEvents in summary mode, channel parity for results and record

2.5.5 — 2026-06-02

adopt @cyanheads/mcp-ts-core 0.9.21: per-request log context fix, fetchWithTimeout secret scrubbing, withRetry fail-fast on non-retryable errors

2.5.4 — 2026-05-30

get-study-results: drop unreachable ids_not_found contract; get-field-values: auto-correct RecruitmentStatus/RecruitingStatus to OverallStatus, ranking favors fields matched tokens cover more fully

2.5.3 — 2026-05-30

Enrichment adoption: search/field/eligibility tools now surface query echoes, result totals, and empty-result guidance in a typed enrichment block reaching both structuredContent and content[] trailer

2.5.2 — 2026-05-28

mcp-ts-core ^0.9.9 → ^0.9.13: 413 body cap, HTTP session-init gate, quieter 401/403/400/404 logging, GET /mcp surfaces keywords; landing.requireAuth explicit; plugin metadata scaffolded

2.5.1 — 2026-05-25

mcp-ts-core ^0.9.6 → ^0.9.9 (git-wrapup skill, release artifact verification, tag annotation format)

2.5.0 — 2026-05-25

get_field_definitions mode discriminator, enum error translation, funnel-aware no-match hints, transport framing removed from get_study_record description

2.4.12 — 2026-05-23

mcp-ts-core ^0.9.1 → ^0.9.6, zod added as direct dep, manifest.json + .mcpbignore scaffolded for MCPB bundle support, install badges added to README.

2.4.11 — 2026-05-21

Description hardening — advancedFilter anchors AREA[FieldName]value with composition examples (#47); path_not_found hint on clinicaltrials_get_field_definitions promotes query mode (#48).

2.4.10 — 2026-05-20

Fix clinicaltrials_get_study_record surface divergence (#46) — locationLimit / outcomeLimit / nearLocation now trim both surfaces identically, defaults flip to no cap, upstream totals surface in filtersApplied.

2.4.9 — 2026-05-20

Auto-normalize case/whitespace field-name mistakes (#44), surface Essie query parse errors with recovery hints (#34, #39), add locationLimit/outcomeLimit/nearLocation render controls on get_study_record (#40), and lift topAnalysis (p-value, CI, method) into get_study_results summary mode (#42).

2.4.8 — 2026-05-16

Framework 0.8.20 → 0.9.1: adopt server-level instructions on createApp (spec orientation text broadcast on initialize), summary cap 250 → 350 chars, bun outdated parser fix for markdown-style rows, skill resyncs including the new portability lint family in api-linter.

2.4.7 — 2026-05-10

Framework 0.8.14 → 0.8.20, engines bumped to Bun ≥1.3 / Node ≥24, search/count format() renders array criteria as [a, b], fuzz coverage for 3 tools, new api-telemetry skill, template-fork dep cleanup.

2.4.6 — 2026-05-04

search_studies fields description hardened against Sponsor/*List hallucinations; three tool descriptions anchor on "clinical trial"; framework bumped to 0.8.14 with skill sync.

2.4.5 — 2026-05-03

find_eligible adds match-prioritized location sort + 3-stage funnel diagnostics; search/count default-filter the EnrollmentCount=99999999 sentinel; search format() lifts truncation cap when fields is explicit.

2.4.4 — 2026-05-03

Polish LLM-facing definition language — flatten clinicaltrials_get_field_definitions description, enrich opaque output schemas in search/get-study/get-study-results, expand landscape prompt to all relevant tools.

2.4.3 — 2026-05-03

Field-name validation cache + did-you-mean suggestions (fixes #35); new query mode in clinicaltrials_get_field_definitions; typed error contracts on every tool/resource; framework 0.7.6 → 0.8.13

2.4.2 — 2026-04-27

Bump @cyanheads/mcp-ts-core 0.7.0 → 0.7.6, resync 7 skills and 1 script (+ 1 new), adopt 0.7.4 form-client safety guidance in CLAUDE.md/AGENTS.md checklist

2.4.1 — 2026-04-24

Bump @cyanheads/mcp-ts-core 0.6.17 → 0.7.0, resync 5 skills and 2 framework scripts, adopt expanded CLAUDE.md/AGENTS.md checklist and Changelog/Agent-skill-dir callouts

2.4.0 — 2026-04-24 · ⚠️ Breaking

Uppercase find_eligible.sex enum (breaking); specific offending-field error on field-values 404; directory-based changelog; new security-pass skill; framework 0.6.17

2.3.5 — 2026-04-23

Adopt rateLimited() error factory; document MCP_PUBLIC_URL; refresh bundled skills from mcp-ts-core 0.6

2.3.4 — 2026-04-21

Fix format()/structuredContent parity across 6 tools via new format-parity linter; sync scripts and skills from mcp-ts-core 0.5.3

2.3.3 — 2026-04-21

Fix format() drop-offs across 4 tools; fall back to per-ID calls when batch rejects on a single bad NCT

2.3.2 — 2026-04-21

Surface nextPageToken in search_studies format() so content[]-only agents can paginate

2.3.1 — 2026-04-21

Stop slicing conditions in format() for search_studies and find_eligible; narrow test-side types under strict tsconfig

2.3.0 — 2026-04-20

Rewrite get_study_record format() for full coverage; harden retry/backoff; consolidate duplicated NCT ID regex

2.2.0 — 2026-04-20

Catch invalid-field-name errors in search_studies with a piece-vs-module hint and pointer to get_field_definitions

2.1.1 — 2026-04-13

Add add-app-tool skill; broad skill refresh (13 updated); tool description rewrites across 4 tools

2.1.0 — 2026-04-04

Shared format-helpers utility (formatRemainingStudyFields); expanded test coverage; mirrored test directory layout

2.0.6 — 2026-03-30

Skill refresh for add-tool/add-resource/design-mcp-server; dependency bumps

2.0.5 — 2026-03-28

Bump @cyanheads/mcp-ts-core 0.2.3 → 0.2.8

2.0.4 — 2026-03-28

Refactor get_study_results format() into dedicated helpers; richer rendering for outcomes, adverse events, flow, and baseline

2.0.3 — 2026-03-28

Add BOOLEAN field support to get_field_values; validate NCT ID format and cap batch at 20 for get_study_results

2.0.2 — 2026-03-28

Batch get_study_results via /studies?filter.ids (single request); lift 5-NCT-ID cap; fix field name references

2.0.1 — 2026-03-28

Rewrite format() for 4 tools to produce full structured markdown reports; expand RawStudyShape

2.0.0 — 2026-03-27 · ⚠️ Breaking

Ground-up rewrite on @cyanheads/mcp-ts-core; 7 redesigned tools, new resource, new prompt, and full test suite