ClinicalTrials.gov
cyanheads
cyanheads
Integrates with ClinicalTrials.gov REST API to search clinical trials by conditions, interventions, locations, and status, plus retrieve detailed study information by NCT ID with automatic data cleaning and local backup storage.
Seven stored tools retained as an unverified snapshot until checked against README full tool reference.
clinicaltrials_search_studiesSearch for clinical trial studies from ClinicalTrials.gov. Supports full-text and field-specific queries, status/phase/geographic filters, pagination, sorting, and field selection. Returns a compact per-study index by default; pass the fields parameter to get specific leaves at full fidelity — full study records are ~70KB each.
Parameters: query, conditionQuery, interventionQuery, locationQuery, sponsorQuery, titleQuery, outcomeQuery, statusFilter, phaseFilter, advancedFilter, geoFilter, nctIds, fields, sort, pageSize, pageToken, countTotal, includeUnknownEnrollmentclinicaltrials_get_study_recordFetch a single clinical trial study by NCT ID from ClinicalTrials.gov. Returns the full study record including protocol details, eligibility criteria, outcomes, arms, interventions, contacts, and locations. Optional locationLimit / outcomeLimit / referenceLimit / nearLocation parameters trim locations, outcomes, and references — original totals are preserved in `filtersApplied` only when a cap actually trims the set.
Parameters: nctId, locationLimit, outcomeLimit, referenceLimit, nearLocationclinicaltrials_get_study_countGet total clinical trial study count from ClinicalTrials.gov matching a query, without fetching study data. Fast and lightweight. Use for quick statistics or to build breakdowns by calling multiple times with different filters (e.g., count by phase, count by status, count recruiting vs completed for a condition).
Parameters: query, conditionQuery, interventionQuery, locationQuery, sponsorQuery, titleQuery, outcomeQuery, statusFilter, phaseFilter, advancedFilter, includeUnknownEnrollmentclinicaltrials_get_field_valuesDiscover valid values for ClinicalTrials.gov fields with study counts per value. Use to explore available filter options before building a search — e.g., valid OverallStatus, Phase, InterventionType, StudyType, or LeadSponsorClass values.
Parameters: fieldsclinicaltrials_get_field_definitionsResolve valid field names from the ClinicalTrials.gov data model — the canonical PascalCase identifiers (OverallStatus, EnrollmentCount, LeadSponsorName) accepted by the `fields`, `advancedFilter`, and `sort` parameters of other tools, and as input to clinicaltrials_get_field_values. Select a mode: `"search"` — keyword search returning ranked matches (pass `query`, e.g. "enrollment", "sponsor", "adverse events"); `"drill"` — drill into a specific section by dot-notation path (pass `path`, e.g. "protocolSection.designModule"); `"overview"` — top-level summary of all sections (no additional args).
Parameters: mode, query, path, limit, includeIndexedOnlyclinicaltrials_get_study_resultsFetch clinical trial results data from ClinicalTrials.gov for completed studies — outcome measures with statistics, adverse events, participant flow, baseline characteristics, and results metadata (limitations & caveats, certain-agreement disclosure restrictions, results point of contact). Only available for studies where hasResults is true. Use clinicaltrials_search_studies first to find studies with results. A results-rich record can exceed 500KB per study in full mode — bound it with summary=true, narrower sections, or the outcomeLimit / adverseEventLimit caps; outcomeLimit / outcomeOffset also page summarized outcomes. A bounded list is resumable: outcomeOffset / seriousEventOffset / otherEventOffset start the next window, and each study's filtersApplied reports what was trimmed and the next offset for every list left short. A previous (alias) NCT ID resolves to its canonical study, named in canonicalNctId.
Parameters: nctIds, sections, summary, outcomeLimit, adverseEventLimit, outcomeOffset, seriousEventOffset, otherEventOffsetclinicaltrials_find_eligibleFind candidate clinical trials for a patient profile. Provide age, sex, conditions, and location to get studies with their demographic limits, contact information, and recruiting locations. Candidates are matched on age, sex, location, recruitment status, and ClinicalTrials.gov's fuzzy condition search only — inclusion/exclusion criteria are not checked, and a candidate can exclude the requested condition, so review each one's criteria with clinicaltrials_get_study_record before treating it as a match. Results are re-ranked so studies whose own condition matches a requested condition surface above tangential matches from ClinicalTrials.gov's fuzzy condition search. Each candidate returns only the sites matching the requested location (capped by locationLimit), not the study's full registered site list — a large trial can register hundreds of sites worldwide. When none of a candidate's matched sites is recruiting, one recruiting site is added so an enrollable site is never hidden behind
Parameters: age, sex, conditions, location, healthyVolunteer, recruitingOnly, maxResults, locationLimitThis server’s available tools can vary by account, permissions, or configuration. The list shown is not its full runtime catalog.
Name, description, publisher identifier, categories, transport, tool inventory, and install configuration.
Repository URL linked from the public profile; npm package repository metadata matched this GitHub repository.
Published package version 2.10.0 checked before launch. Registry repository: git+https://github.com/cyanheads/clinicaltrialsgov-mcp-server.git.
Maintainer repository confirms ClinicalTrials.gov search, study details/results and trial matching; complete current tool count not established in retrieved evidence.
Documentation checked 2026-10-28T00:00:00Z. Connection has not been runtime tested.
cyanheads
Integrates with ClinicalTrials.gov REST API to search clinical trials by conditions, interventions, locations, and status, plus retrieve detailed study information by NCT ID with automatic data cleaning and local backup storage.
Seven stored tools retained as an unverified snapshot until checked against README full tool reference.
clinicaltrials_search_studiesSearch for clinical trial studies from ClinicalTrials.gov. Supports full-text and field-specific queries, status/phase/geographic filters, pagination, sorting, and field selection. Returns a compact per-study index by default; pass the fields parameter to get specific leaves at full fidelity — full study records are ~70KB each.
Parameters: query, conditionQuery, interventionQuery, locationQuery, sponsorQuery, titleQuery, outcomeQuery, statusFilter, phaseFilter, advancedFilter, geoFilter, nctIds, fields, sort, pageSize, pageToken, countTotal, includeUnknownEnrollmentclinicaltrials_get_study_recordFetch a single clinical trial study by NCT ID from ClinicalTrials.gov. Returns the full study record including protocol details, eligibility criteria, outcomes, arms, interventions, contacts, and locations. Optional locationLimit / outcomeLimit / referenceLimit / nearLocation parameters trim locations, outcomes, and references — original totals are preserved in `filtersApplied` only when a cap actually trims the set.
Parameters: nctId, locationLimit, outcomeLimit, referenceLimit, nearLocationclinicaltrials_get_study_countGet total clinical trial study count from ClinicalTrials.gov matching a query, without fetching study data. Fast and lightweight. Use for quick statistics or to build breakdowns by calling multiple times with different filters (e.g., count by phase, count by status, count recruiting vs completed for a condition).
Parameters: query, conditionQuery, interventionQuery, locationQuery, sponsorQuery, titleQuery, outcomeQuery, statusFilter, phaseFilter, advancedFilter, includeUnknownEnrollmentclinicaltrials_get_field_valuesDiscover valid values for ClinicalTrials.gov fields with study counts per value. Use to explore available filter options before building a search — e.g., valid OverallStatus, Phase, InterventionType, StudyType, or LeadSponsorClass values.
Parameters: fieldsclinicaltrials_get_field_definitionsResolve valid field names from the ClinicalTrials.gov data model — the canonical PascalCase identifiers (OverallStatus, EnrollmentCount, LeadSponsorName) accepted by the `fields`, `advancedFilter`, and `sort` parameters of other tools, and as input to clinicaltrials_get_field_values. Select a mode: `"search"` — keyword search returning ranked matches (pass `query`, e.g. "enrollment", "sponsor", "adverse events"); `"drill"` — drill into a specific section by dot-notation path (pass `path`, e.g. "protocolSection.designModule"); `"overview"` — top-level summary of all sections (no additional args).
Parameters: mode, query, path, limit, includeIndexedOnlyclinicaltrials_get_study_resultsFetch clinical trial results data from ClinicalTrials.gov for completed studies — outcome measures with statistics, adverse events, participant flow, baseline characteristics, and results metadata (limitations & caveats, certain-agreement disclosure restrictions, results point of contact). Only available for studies where hasResults is true. Use clinicaltrials_search_studies first to find studies with results. A results-rich record can exceed 500KB per study in full mode — bound it with summary=true, narrower sections, or the outcomeLimit / adverseEventLimit caps; outcomeLimit / outcomeOffset also page summarized outcomes. A bounded list is resumable: outcomeOffset / seriousEventOffset / otherEventOffset start the next window, and each study's filtersApplied reports what was trimmed and the next offset for every list left short. A previous (alias) NCT ID resolves to its canonical study, named in canonicalNctId.
Parameters: nctIds, sections, summary, outcomeLimit, adverseEventLimit, outcomeOffset, seriousEventOffset, otherEventOffsetclinicaltrials_find_eligibleFind candidate clinical trials for a patient profile. Provide age, sex, conditions, and location to get studies with their demographic limits, contact information, and recruiting locations. Candidates are matched on age, sex, location, recruitment status, and ClinicalTrials.gov's fuzzy condition search only — inclusion/exclusion criteria are not checked, and a candidate can exclude the requested condition, so review each one's criteria with clinicaltrials_get_study_record before treating it as a match. Results are re-ranked so studies whose own condition matches a requested condition surface above tangential matches from ClinicalTrials.gov's fuzzy condition search. Each candidate returns only the sites matching the requested location (capped by locationLimit), not the study's full registered site list — a large trial can register hundreds of sites worldwide. When none of a candidate's matched sites is recruiting, one recruiting site is added so an enrollable site is never hidden behind
Parameters: age, sex, conditions, location, healthyVolunteer, recruitingOnly, maxResults, locationLimitThis server’s available tools can vary by account, permissions, or configuration. The list shown is not its full runtime catalog.
Name, description, publisher identifier, categories, transport, tool inventory, and install configuration.
Repository URL linked from the public profile; npm package repository metadata matched this GitHub repository.
Published package version 2.10.0 checked before launch. Registry repository: git+https://github.com/cyanheads/clinicaltrialsgov-mcp-server.git.
Maintainer repository confirms ClinicalTrials.gov search, study details/results and trial matching; complete current tool count not established in retrieved evidence.
Documentation checked 2026-10-28T00:00:00Z. Connection has not been runtime tested.