plugin/skills/tooluniverse-clinical-trial-design/SKILL.md
Strategic clinical trial design feasibility assessment. Analyzes 6 dimensions (endpoint, population, comparator, effect size, duration, regulatory pathway) using precedent trials and FDA guidance. Produces enrollment projections, endpoint recommendations, and approval-pathway analysis. Use for trial-protocol design, power/sample-size estimation, comparator selection, and FDA submission strategy. Driven by precedent-based reasoning rather than first-principles math.
npx skillsauth add mims-harvard/tooluniverse tooluniverse-clinical-trial-designInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Systematically assess clinical trial feasibility by analyzing 6 research dimensions. Produces comprehensive feasibility reports with quantitative enrollment projections, endpoint recommendations, and regulatory pathway analysis.
IMPORTANT: Always use English terms in tool calls (drug names, disease names, biomarker names), even if the user writes in another language. Only try original-language terms as a fallback if English returns no results. Respond in the user's language.
Trial design starts with the question, not the methods. Answer these four questions before running any tools — they determine everything else:
These four answers determine sample size, duration, and trial design. Look them up from precedent trials and FDA guidance — do not derive them from first principles.
LOOK UP DON'T GUESS: Never assume what the standard of care is for an indication — look it up with DrugBank and FDA tools. Never assume an endpoint is FDA-accepted — verify with search_clinical_trials precedents and OpenFDA_get_approval_history. Never estimate prevalence from memory — use OpenTargets, gnomAD, or COSMIC.
DO NOT show tool outputs to user. Instead:
[INDICATION]_trial_feasibility_report.md FIRST| Grade | Symbol | Criteria | Examples | |-------|--------|----------|----------| | A | 3-star | Regulatory acceptance, multiple precedents | FDA-approved endpoint in same indication | | B | 2-star | Clinical validation, single precedent | Phase 3 trial in related indication | | C | 1-star | Preclinical or exploratory | Phase 1 use, biomarker validation ongoing | | D | 0-star | Proposed, no validation | Novel endpoint, no precedent |
Weighted composite score:
Interpretation: >=75 HIGH (proceed), 50-74 MODERATE (additional validation), <50 LOW (de-risking required)
Apply when users:
Trigger phrases: "clinical trial design", "trial feasibility", "enrollment projections", "endpoint selection", "trial planning", "Phase 1/2 design", "basket trial", "biomarker trial"
Execute 6 parallel research dimensions. See STUDY_DESIGN_PROCEDURES.md for detailed steps per path.
Trial Design Query
|
+-- PATH 1: Patient Population Sizing
| Disease prevalence, biomarker prevalence, geographic distribution,
| eligibility criteria impact, enrollment projections
|
+-- PATH 2: Biomarker Prevalence & Testing
| Mutation frequency, testing availability, turnaround time,
| cost/reimbursement, alternative biomarkers
|
+-- PATH 3: Comparator Selection
| Standard of care, approved comparators, historical controls,
| placebo appropriateness, combination therapy
|
+-- PATH 4: Endpoint Selection
| Primary endpoint precedents, FDA acceptance history,
| measurement feasibility, surrogate vs clinical endpoints
|
+-- PATH 5: Safety Endpoints & Monitoring
| Mechanism-based toxicity, class effects, organ-specific monitoring,
| DLT history, safety monitoring plan
|
+-- PATH 6: Regulatory Pathway
Regulatory precedents (505(b)(1), 505(b)(2)), breakthrough therapy,
orphan drug, fast track, FDA guidance
Create [INDICATION]_trial_feasibility_report.md with all 14 sections. See REPORT_TEMPLATE.md for full templates with fillable fields.
OpenTargets_get_disease_id_description_by_name - Disease lookupOpenTargets_get_diseases_phenotypes_by_target_ensembl - Prevalence dataClinVar_search_variants - Biomarker mutation frequencygnomad_search_variants - Population allele frequenciesPubMed_search_articles - Epidemiology literaturesearch_clinical_trials - Enrollment feasibility from past trialsClinVar_get_variant_details - Variant pathogenicityCOSMIC_search_mutations - Cancer-specific mutation frequenciesgnomad_get_variant - Population geneticsPubMed_search_articles - CDx test performance, guidelinesdrugbank_get_drug_basic_info_by_drug_name_or_id - Drug infodrugbank_get_indications_by_drug_name_or_drugbank_id - Approved indicationsdrugbank_get_pharmacology_by_drug_name_or_drugbank_id - MechanismFDA_OrangeBook_search_drug - Generic availabilityOpenFDA_get_approval_history - Approval detailssearch_clinical_trials - Historical control datasearch_clinical_trials - Precedent trials, endpoints usedPubMed_search_articles - FDA acceptance history, endpoint validationOpenFDA_get_approval_history - Approved endpoints by indicationdrugbank_get_pharmacology_by_drug_name_or_drugbank_id - Mechanism toxicityFDA_get_warnings_and_cautions_by_drug_name - FDA black box warningsFAERS_search_reports_by_drug_and_reaction - Real-world adverse eventsFAERS_count_reactions_by_drug_event - AE frequencyFAERS_count_death_related_by_drug - Serious outcomesPubMed_search_articles - DLT definitions, monitoring strategiesOpenFDA_get_approval_history - Precedent approvalsPubMed_search_articles - Breakthrough designations, FDA guidancesearch_clinical_trials - Regulatory precedents (accelerated approval)from tooluniverse import ToolUniverse
tu = ToolUniverse(use_cache=True)
tu.load_tools()
# Example: EGFR+ NSCLC trial feasibility
# Step 1: Disease prevalence
disease_info = tu.tools.OpenTargets_get_disease_id_description_by_name(
diseaseName="non-small cell lung cancer"
)
prevalence = tu.tools.OpenTargets_get_diseases_phenotypes(
efoId=disease_info['data']['id']
)
# Step 2: Biomarker prevalence
variants = tu.tools.ClinVar_search_variants(gene="EGFR", significance="pathogenic")
# Step 3: Precedent trials
trials = tu.tools.search_clinical_trials(
condition="EGFR positive non-small cell lung cancer",
status="completed", phase="2"
)
# Step 4: Standard of care comparator
soc = tu.tools.FDA_OrangeBook_search_drug(ingredient="osimertinib")
# Compile into feasibility report...
See WORKFLOW_DETAILS.md for the complete 6-path Python workflow and use case examples.
When ToolUniverse tools return limited trial metadata, use the ClinicalTrials.gov v2 API directly:
import requests, pandas as pd
# Search with pagination (all lung cancer immunotherapy trials with results)
all_studies = []
token = None
while True:
params = {"query.cond": "lung cancer", "query.intr": "immunotherapy",
"filter.overallStatus": "COMPLETED", "filter.results": "WITH_RESULTS", "pageSize": 100}
if token: params["pageToken"] = token
resp = requests.get("https://clinicaltrials.gov/api/v2/studies", params=params).json()
all_studies.extend(resp.get("studies", []))
token = resp.get("nextPageToken")
if not token: break
# Extract structured data
rows = []
for s in all_studies:
proto = s.get("protocolSection", {})
rows.append({
"nctId": proto.get("identificationModule", {}).get("nctId"),
"title": proto.get("identificationModule", {}).get("briefTitle"),
"enrollment": proto.get("designModule", {}).get("enrollmentInfo", {}).get("count"),
"phase": proto.get("designModule", {}).get("phases", [None])[0] if proto.get("designModule", {}).get("phases") else None,
})
df = pd.DataFrame(rows)
# FDA drug approval history
drug = "pembrolizumab"
fda = requests.get(f"https://api.fda.gov/drug/drugsfda.json?search=openfda.brand_name:{drug}&limit=10").json()
See tooluniverse-data-wrangling skill for pagination, error handling, and bulk download patterns.
| File | Content |
|------|---------|
| REPORT_TEMPLATE.md | Full 14-section report template with fillable fields |
| STUDY_DESIGN_PROCEDURES.md | Detailed steps for each of the 6 research paths |
| WORKFLOW_DETAILS.md | Complete Python example workflow and 5 use case summaries |
| BEST_PRACTICES.md | Best practices, common pitfalls, output format requirements |
| EXAMPLES.md | Additional examples |
| QUICK_START.md | Quick start guide |
tools
PCR / qPCR primer and oligo design — design forward/reverse primers for a target region (SantaLucia nearest-neighbor thermodynamics), compute melting temperature (Tm) and annealing temperature (Ta), check GC content, and screen an oligo for hairpins and primer-dimers. Use when you need primers for a sequence, want to QC an existing primer pair, or need the Tm of an oligo. Covers the primer-design rules (Tm matching, GC clamp, 3'-end, length) and the tools' constraint quirks.
tools
Pharmacokinetic (PK) analysis of concentration-time data — non-compartmental analysis (NCA) for Cmax, Tmax, AUC (0-t and 0-∞), terminal half-life, clearance (CL), volume of distribution (Vd), MRT, and absolute bioavailability (F). Also one-compartment fitting. Use when you have plasma/serum drug concentrations over time after a dose and need PK parameters, or to compute bioavailability from IV + oral AUCs. NOT for ADMET property prediction from structure (use tooluniverse-admet-prediction).
tools
Molecular cloning assembly design — Gibson Assembly (overlap design for seamless multi-fragment joining) and Golden Gate Assembly (Type IIS / BsaI / BbsI design with unique 4-bp fusion overhangs). Use when you need to plan how to join DNA fragments into a construct, design assembly overlaps/overhangs, or decide between cloning methods. Covers the domestication (internal-site removal), overhang-uniqueness, and overlap-Tm rules. For PCR primers to generate the fragments, see tooluniverse-primer-design.
tools
Meta-analysis / evidence synthesis — pool effect sizes across studies (odds ratios, risk ratios, hazard ratios, mean differences, correlations, GWAS betas) with fixed- or random-effects models, quantify heterogeneity (Q, I², τ²), and build a forest plot. Use when you have results from MULTIPLE studies and need a single pooled estimate, or to synthesize evidence from a systematic review / multiple GWAS / replicated experiments. Handles the error-prone effect-size + standard-error preparation (converting OR/HR/CI, two-group means±SD, proportions, and correlations into the (effect, SE) the pooling step needs).