| name | clinicaltrials-db |
| description | Query the ClinicalTrials.gov API v2 to search for clinical trials, retrieve detailed study protocols, and analyze recruitment status; use when you need to find trials by condition/drug, export results, or verify study details by NCT ID. |
| license | MIT |
| author | AIPOCH |
Source: https://github.com/aipoch/medical-research-skills
When to Use
- You need to find clinical trials for a specific condition (e.g., “cancer”) and filter by recruitment status (e.g., Recruiting).
- You want to locate trials involving a particular intervention (drug/biologic/device) and quickly review matching studies.
- You need to retrieve full study protocol details (including eligibility criteria) for a known NCT identifier.
- You want to export or programmatically process trial metadata for downstream analysis or reporting.
- You need to validate study status and key fields (phase, locations, sponsor) from the authoritative ClinicalTrials.gov source.
Key Features
- Search studies via ClinicalTrials.gov API v2 using common filters (condition, intervention, recruitment status, result limits).
- Retrieve detailed study information by NCT ID, including protocol and eligibility criteria.
- Simple Python interface for integrating trial search and retrieval into scripts and pipelines.
- Reference documentation for advanced query parameters and field definitions (see
references/api_reference.md).
Dependencies
- Python 3.9+
requests >= 2.28
Example Usage
from scripts.query_clinicaltrials import search_studies, get_study_details
def main():
results = search_studies(
condition="cancer",
status="RECRUITING",
limit=10,
)
print("Search results:")
for i, item in enumerate(results, start=1):
print(f"\n[{i}] {item}")
nct_id = "NCT01234567"
study = get_study_details(nct_id)
print(f"\n\nStudy details for {nct_id}:")
print(study)
if __name__ == "__main__":
main()
Implementation Details
- API Backend: Uses ClinicalTrials.gov API v2 endpoints to query study records and fetch study details.
- Search Parameters:
condition: Condition/disease term used to match relevant studies.
status: Recruitment status filter (e.g., RECRUITING).
limit: Maximum number of records to return.
- Study Detail Retrieval:
get_study_details(nct_id) fetches the full record for a single study identified by its NCT ID and returns the protocol-level information (including eligibility criteria when available).
- Advanced Queries / Field Definitions:
- For additional query parameters, response fields, and definitions, refer to
references/api_reference.md.