# mcp/clinicaltrials.py """ ClinicalTrials.gov helper – fetch recent trials for a keyword. """ import httpx, datetime from typing import List BASE = "https://clinicaltrials.gov/api/query/study_fields" async def search_trials(term: str, max_studies: int = 10) -> List[dict]: today = datetime.date.today().isoformat() params = { "expr": term, "fields": "NCTId,BriefTitle,Condition,InterventionName,Phase,OverallStatus,StartDate", "max_rnk": max_studies, "fmt": "json", "min_rnk": 1 } async with httpx.AsyncClient(timeout=20) as client: r = await client.get(BASE, params=params) r.raise_for_status() return r.json()["StudyFieldsResponse"]["StudyFields"]