Server data from the Official MCP Registry
ClinicalTrials MCP — wraps ClinicalTrials.gov API v2 (free, no auth)
About
ClinicalTrials MCP — wraps ClinicalTrials.gov API v2 (free, no auth)
Remote endpoints: streamable-http: https://gateway.pipeworx.io/clinicaltrials/mcp
Security Report
Valid MCP server (1 strong, 0 medium validity signals). No known CVEs in dependencies. Imported from the Official MCP Registry. Trust signals: trusted author (133/133 approved). 1 finding(s) downgraded by scanner intelligence.
6 tools verified · Open access · 1 issue found
Security scores are indicators to help you make informed decisions, not guarantees. Always review permissions before connecting any MCP server.
Permissions Required
This plugin requests these system permissions. Most are normal for its category.
How to Connect
Remote Plugin
No local installation needed. Your AI client connects to the remote endpoint directly.
Add this to your MCP configuration to connect:
{
"mcpServers": {
"io-github-pipeworx-io-clinicaltrials": {
"url": "https://gateway.pipeworx.io/clinicaltrials/mcp"
}
}
}Documentation
View on GitHubFrom the project's GitHub README.
ClinicalTrials.gov — Clinical Trial Registry
The NIH-operated public registry of clinical trials worldwide. Every interventional study (and most observational ones) registered with the FDA must be filed here. ~470,000 studies covering Phase 1–4, conditions across the medical spectrum, and post-market safety surveillance. Free, no auth.
Part of Pipeworx — an MCP gateway connecting AI agents to 1476+ live data sources.
Why this matters for AI agents
If your agent is answering anything about drug development, clinical research, or medical product safety, ClinicalTrials.gov is the source of truth for what's being studied. The data is structured: NCT IDs, phases, statuses, sponsors, conditions, interventions, primary/secondary outcomes, results.
Three core flows:
1. Search. "What's being studied for Alzheimer's?" → ct_search({query: "Alzheimer's disease"}) → studies matching, with NCT IDs, phase, status.
2. Specific study. "Tell me about this trial." → ct_get_study({nct_id: "NCT04280705"}) → full structured record including protocol, results, references.
3. Sponsor / volume. "How many trials does Pfizer run?" → ct_sponsor_trials({sponsor: "Pfizer"}) → enumerated by phase and status.
4. Sponsor comparison. "Who has more recruiting Phase 3 obesity trials, Novo Nordisk or Eli Lilly?" → ct_compare_sponsors({sponsors: ["Novo Nordisk", "Eli Lilly and Company"], condition: "obesity", status: "RECRUITING", phase: "PHASE3"}) → lead-sponsor counts ranked under identical filters with sample NCT records.
For drug-level synthesis (combining trials with FDA approvals and adverse events), use pharma_drug_profile compound or [compare_entities({type: "drug", values: [...]})].
Citable URI
pipeworx://clinicaltrials/study/{nct_id}
NCT IDs are stable forever. Once issued, never reused. Embed in agent output as the canonical study reference.
Status filtering
When users ask about "active" trials, they usually mean one of two things:
- Currently recruiting:
status=Recruiting— open to new participants - In progress:
status=Recruiting OR Active, not recruiting OR Enrolling by invitation
The default ct_search returns all statuses; filter on status field of results for the meaning you want. Common confusion: "Completed" trials are studies that finished collecting data, not necessarily ones with published results.
Update cadence
- Sponsors are required to update studies at least once per year, more often for material changes (status transitions, completion).
- Primary results must be posted within 12 months of primary completion date.
- Pipeworx caches per-study responses with a 24-hour TTL. Most studies don't change daily; this is fine for almost all use cases.
Common pitfalls
- Results vs. results. "Has results" means primary outcome data is posted on ClinicalTrials.gov. Many completed trials publish papers in peer-reviewed journals but never post here. For literature, cross-reference with
semantic-scholarorcrossref. - Phase confusion. A "Phase 2/3" trial counts as both phases. Filtering by phase requires careful boolean logic.
- Sponsor name normalization. "Pfizer Inc." and "Pfizer" return different result counts in
ct_sponsor_trials. Try the more permissive form first. - Lead sponsor versus collaborator.
ct_compare_sponsorsdeliberately counts the registered lead-sponsor field so collaborator records do not inflate a head-to-head comparison. Registered corporate spellings and subsidiaries can still divide a company portfolio; inspect the returned lead-sponsor names. - Geographic scope. ClinicalTrials.gov is US-based but registers studies worldwide if any US site is involved. For purely-foreign studies, use the WHO ICTRP — not currently in Pipeworx.
- Recently terminated trials. "Terminated" means the study stopped before completion. Look at
whyStoppedin the full study record for context (safety signal vs. enrollment problems vs. funding).
Quick Start
Add to your MCP client (Claude Desktop, Cursor, Windsurf, etc.):
{
"mcpServers": {
"clinicaltrials": {
"url": "https://gateway.pipeworx.io/clinicaltrials/mcp"
}
}
}
What this endpoint actually serves
tools/list at https://gateway.pipeworx.io/clinicaltrials/mcp returns the tools in the table
above plus the shared Pipeworx meta-tools — ask_pipeworx,
discover_tools, search_within, remember/recall and the rest of the
gateway-wide set. So the tool count you see is larger than this table: a
single-pack endpoint currently lists roughly 30 shared tools alongside the
pack's own. The connection's initialize response states its exact scope, and
is the authoritative answer for a given day.
This is deliberate, not multiplexing by accident. The meta-tools are what let a
scoped connection answer a question this pack does not cover — via
ask_pipeworx, which routes across the whole catalog — without you adding a
second MCP server. There is currently no way to mount a pack endpoint without
them; if the extra schemas cost you more context than the routing is worth,
connect to the full gateway once rather than to several pack endpoints.
Or connect to the full Pipeworx gateway to get every pack's tools listed directly, instead of just this one's:
{
"mcpServers": {
"pipeworx": {
"url": "https://gateway.pipeworx.io/mcp"
}
}
}
Both URLs reach the same gateway and the same 1476+ data sources. The
only difference is which pack's tools are listed directly; ask_pipeworx
reaches all of them from either one.
Using with ask_pipeworx
Instead of calling tools directly, you can ask questions in plain English — this works on the pack endpoint above as well as on the full gateway:
ask_pipeworx({ question: "your question about Clinicaltrials data" })
The gateway picks the right tool and fills the arguments automatically.
More
License
MIT
Reviews
No reviews yet
Be the first to review this server!
More Developer Tools MCP Servers
Git
Freeby Modelcontextprotocol · Developer Tools
Read, search, and manipulate Git repositories programmatically
Fetch
Freeby Modelcontextprotocol · Developer Tools
Web content fetching and conversion for efficient LLM usage
Toleno
Freeby Toleno · Developer Tools
Toleno Network MCP Server — Manage your Toleno mining account with Claude AI using natural language.
mcp-creator-python
Freeby mcp-marketplace · Developer Tools
Create, build, and publish Python MCP servers to PyPI — conversationally.
MCP Marketplace
Freeby mcp-marketplace · Developer Tools
Search and install MCP servers from inside your AI client.
MarkItDown
Freeby Microsoft · Content & Media
Convert files (PDF, Word, Excel, images, audio) to Markdown for LLM consumption
