GnistAI GnistAI
Log in

ClinicalTrials.gov

Search clinical trial registrations — study details, conditions, interventions, and status.

Overview   |   MCP   |   REST API   |   OpenAPI   |   CLI   |   Tutorial   |   Toolkits   |   Home
status: healthy status status healthy healthy tools: 5 tools tools 5 5 type: api wrapper type type api wrapper api wrapper lifecycle: maintained lifecycle lifecycle maintained maintained Science

Data source: ClinicalTrials.gov

MCP Endpoint (Streamable HTTP) https://context.gnist.ai/mcp/clinicaltrials/
Authentication

All requests require a Gnist-API-Key header (or api_key query parameter).

Free tier: 100 calls/day. Get your API key.

Tools (5)

search_trials

Search ClinicalTrials.gov for clinical trials with flexible filters.

Covers 500K+ registered clinical trials worldwide. Returns trial summaries
including NCT ID, title, status, phase, conditions, interventions, and sponsor.

Args:
query: General search term (searches all fields). Examples: "aspirin heart",
"mRNA vaccine", "CRISPR gene therapy".
condition: Filter by condition or disease. Examples: "diabetes",
"breast cancer", "Alzheimer's disease", "COVID-19".
intervention: Filter by intervention/treatment. Examples: "pembrolizumab",
"cognitive behavioral therapy", "radiation".
status: Filter by trial status. One of: RECRUITING, NOT_YET_RECRUITING,
ACTIVE_NOT_RECRUITING, COMPLETED, TERMINATED, WITHDRAWN, SUSPENDED,
ENROLLING_BY_INVITATION, UNKNOWN.
phase: Filter by trial phase. One of: EARLY_PHASE1, PHASE1, PHASE2,
PHASE3, PHASE4, NA.
sponsor: Filter by sponsor organization. Examples: "Pfizer", "NIH",
"Mayo Clinic".
max_results: Number of results to return (1-50, default 10).

Returns:
List of trial summaries with nct_id, brief_title, overall_status, phase,
conditions, interventions, sponsor, start_date, enrollment.

ParameterTypeRequiredDescription
queryanyoptionalGeneral search term (searches all fields). Examples: "aspirin heart", "mRNA vaccine", "CRISPR gene therapy".
conditionanyoptionalFilter by condition or disease. Examples: "diabetes", "breast cancer", "Alzheimer's disease", "COVID-19".
interventionanyoptionalFilter by intervention/treatment. Examples: "pembrolizumab", "cognitive behavioral therapy", "radiation".
statusanyoptionalFilter by trial status. One of: RECRUITING, NOT_YET_RECRUITING, ACTIVE_NOT_RECRUITING, COMPLETED, TERMINATED, WITHDRAWN, SUSPENDED, ENROLLING_BY_INVITATION, UNKNOWN.
phaseanyoptionalFilter by trial phase. One of: EARLY_PHASE1, PHASE1, PHASE2, PHASE3, PHASE4, NA.
sponsoranyoptionalFilter by sponsor organization. Examples: "Pfizer", "NIH", "Mayo Clinic".
max_resultsintegeroptionalNumber of results to return (1-50, default 10). (default: 10)
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "search_trials",
    "arguments": {}
  }
}
get_trial

Get detailed information about a specific clinical trial by NCT ID.

Returns comprehensive trial details including title, summary, status, phase,
conditions, interventions, sponsor, eligibility criteria, outcomes, and locations.

Args:
nct_id: ClinicalTrials.gov NCT identifier (e.g., "NCT03367897", "NCT04368728").
Found in search_trials results or on clinicaltrials.gov.

Returns:
Full trial record with nct_id, brief_title, official_title, brief_summary,
overall_status, phase, study_type, conditions, interventions (name/type/description),
sponsor, collaborators, start_date, completion_date, enrollment,
eligibility_criteria, primary_outcomes, locations.

ParameterTypeRequiredDescription
nct_idstringrequiredClinicalTrials.gov NCT identifier (e.g., "NCT03367897", "NCT04368728"). Found in search_trials results or on clinicaltrials.gov.
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "get_trial",
    "arguments": {
      "nct_id": "example"
    }
  }
}
get_trials_by_condition

Find clinical trials studying a specific condition or disease.

Shortcut for search_trials with condition filter pre-set. Useful for
quickly finding all trials for a disease.

Args:
condition: The condition or disease to search for. Examples: "lung cancer",
"type 2 diabetes", "major depressive disorder", "rheumatoid arthritis".
status: Optional status filter. One of: RECRUITING, NOT_YET_RECRUITING,
ACTIVE_NOT_RECRUITING, COMPLETED, TERMINATED, WITHDRAWN, SUSPENDED,
ENROLLING_BY_INVITATION, UNKNOWN.
max_results: Number of results to return (1-50, default 10).

Returns:
List of trial summaries matching the condition.

ParameterTypeRequiredDescription
conditionstringrequiredThe condition or disease to search for. Examples: "lung cancer", "type 2 diabetes", "major depressive disorder", "rheumatoid arthritis".
statusanyoptionalOptional status filter. One of: RECRUITING, NOT_YET_RECRUITING, ACTIVE_NOT_RECRUITING, COMPLETED, TERMINATED, WITHDRAWN, SUSPENDED, ENROLLING_BY_INVITATION, UNKNOWN.
max_resultsintegeroptionalNumber of results to return (1-50, default 10). (default: 10)
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "get_trials_by_condition",
    "arguments": {
      "condition": "example"
    }
  }
}
get_trials_by_sponsor

Find clinical trials run by a specific sponsor organization.

Useful for investigating a company's drug pipeline or an institution's
research portfolio.

Args:
sponsor: Sponsor organization name. Examples: "Pfizer", "Novartis",
"National Cancer Institute", "Mayo Clinic", "Roche".
status: Optional status filter. One of: RECRUITING, NOT_YET_RECRUITING,
ACTIVE_NOT_RECRUITING, COMPLETED, TERMINATED, WITHDRAWN, SUSPENDED,
ENROLLING_BY_INVITATION, UNKNOWN.
max_results: Number of results to return (1-50, default 10).

Returns:
List of trial summaries from the specified sponsor.

ParameterTypeRequiredDescription
sponsorstringrequiredSponsor organization name. Examples: "Pfizer", "Novartis", "National Cancer Institute", "Mayo Clinic", "Roche".
statusanyoptionalOptional status filter. One of: RECRUITING, NOT_YET_RECRUITING, ACTIVE_NOT_RECRUITING, COMPLETED, TERMINATED, WITHDRAWN, SUSPENDED, ENROLLING_BY_INVITATION, UNKNOWN.
max_resultsintegeroptionalNumber of results to return (1-50, default 10). (default: 10)
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "get_trials_by_sponsor",
    "arguments": {
      "sponsor": "123456789"
    }
  }
}
report_feedback

Report a bug, feature request, or general feedback for this data source.

Use this when something doesn't work as expected, when you'd like
a new feature, or when you have suggestions for improvement.

Args:
feedback: Describe the issue or suggestion.
feedback_type: One of 'bug', 'feature_request', or 'general'.

ParameterTypeRequiredDescription
feedbackstringrequired
feedback_typestringoptional (default: "general")
JSON-RPC Request
{
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "report_feedback",
    "arguments": {
      "feedback": "example"
    }
  }
}

Quick Start

Shell
curl -X POST "https://context.gnist.ai/mcp/clinicaltrials/" \
  -H "Content-Type: application/json" \
  -H "Accept: application/json, text/event-stream" \
  -H "Gnist-API-Key: YOUR_API_KEY" \
  -d '{"jsonrpc": "2.0", "method": "tools/call", "id": 1, "params": {"name": "get_trial", "arguments": {"nct_id": "example"}}}'
Python
import httpx

resp = httpx.post(
    "https://context.gnist.ai/mcp/clinicaltrials/",
    headers={"Gnist-API-Key": "YOUR_API_KEY", "Content-Type": "application/json"},
    json={
  "jsonrpc": "2.0",
  "method": "tools/call",
  "id": 1,
  "params": {
    "name": "get_trial",
    "arguments": {
      "nct_id": "example"
    }
  }
},
)
print(resp.json())

Related Toolkits (Science)

Resources