| summary | 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 |
|---|---|
| breaking | false |
| security | false |
clinicaltrials_find_eligibleage bounds no longer drop studies that omitMinimumAge/MaximumAge— each bound is now ORed with itsMISSINGcounterpart, since anAREA[Field]RANGE[…]predicate previously matched only studies publishing that field. Recruiting matches for a 58-year-old with Type 2 Diabetes go from 406 to 744 nationally. (#105)- The enrollment sentinel filter no longer excludes studies with no
EnrollmentCountat all — restated asNOT AREA[EnrollmentCount]RANGE[99999999, MAX]instead of a bounded range, which had the same field-must-be-present gap as #105 and answered zero for every expanded-access record.clinicaltrials_search_studiesalso lifts the exclusion whennctIdsis supplied, so an explicit ID filter can no longer omit a study it names;sentinelFilterActivenow reports the exclusion that actually ran. (#106) - Three more upstream
sortrejection shapes are now classified assort_invalidinstead of falling through to a generic 400 — the 2-item cap, an unsortable field type, and an unrecognized field name each get their own message, the last with did-you-mean suggestions. (#107) - Empty-list inputs (
[]) are now rejected withblank_valueinstead of silently widening or falling back —.min(1)is removed from every list-typed parameter acrosssearch_studies,get_study_count,get_study_results,get_field_values, andfind_eligible, each paired with a handler-level guard so the rejection carries a reason and recovery hint instead of a bare-32602.search_studies.nctIds: []previously widened the query to the whole registry rather than being rejected.minItemsno longer appears in any tool's advertisedinputSchema. (#109, #110)
sortauto-corrects unambiguous casing and spacing mistakes before the request goes upstream —enrollmentCount:desc,EnrollmentCount:DESC, and a stray space after a comma are now normalized rather than rejected. (#107)- The seven
query.*-backed parameter descriptions onsearch_studiesandget_study_countnow name the fields they actually match, sourced from a live fetch of/studies/search-areas;docs/api-reference.mdcorrects thequeryfield count from "50+" to 57. (#108) clinicaltrials_get_field_valuesrejects an emptyfieldslist with reasonblank_valueinstead offield_invalid—field_invalid's recovery hint pointed callers at browsing the field tree, which doesn't fit a caller who supplied[]. (#109)