ClinicalTrials.gov MCP by usefulapi
by usefulapi.io · remote · no sign-in to list tools · v1.16.3 · published by io.usefulapi
Search and read ClinicalTrials.gov studies, sites and outcomes.
7 tools: 7 only read.
Scanned Oct 21, 2026
- Deletes or cancels0Claude Code: deny
- Can't be undone0Claude Code: ask
- Changes things0Claude Code: ask
- Only reads7Claude Code: allow: see these tools
No check matched anything in the tool definitions. No finding is not a safety guarantee. How the checks work.
claude mcp add --transport http clinicaltrialsgov https://clinicaltrialsgov.usefulapi.io/mcpTools
Open a tool for its reasons and full description. Descriptions are the publisher's own words, shown as they are.
7 tools
Only reads 7Claude Code: allow
count_studiesReturn only the total NUMBER of studies matching a query, without fetching any records.No findings
Why it is in this group
- The name "count_studies" says "count": a word for reading.
Description, as the server wrote it Return only the total NUMBER of studies matching a query, without fetching any records. Accepts the same query terms and filters as search_studies (term, condition, intervention, title, location, sponsor, status, geoFilter, advanced). Returns { totalCount }. GET /studies with countTotal=true and pageSize=1.
Annotations the server declares
- title: Count matching clinical trials
- readOnlyHint: true
get_api_versionReturn the ClinicalTrials.gov API version and the timestamp of the underlying data snapshot: { apiVersion, dataTimestamp }.No findings
Why it is in this group
- The name "get_api_version" says "get": a word for reading.
Description, as the server wrote it Return the ClinicalTrials.gov API version and the timestamp of the underlying data snapshot: { apiVersion, dataTimestamp }. GET /version.
Annotations the server declares
- title: Get the ClinicalTrials.gov API version
- readOnlyHint: true
get_studies_statsReturn overall study-size statistics across the registry: { totalStudies, averageSizeBytes, percentiles, ranges, largestStudies }.No findings
Why it is in this group
- The name "get_studies_stats" says "get": a word for reading.
Description, as the server wrote it Return overall study-size statistics across the registry: { totalStudies, averageSizeBytes, percentiles, ranges, largestStudies }. Useful for understanding data volume. GET /stats/size.
Annotations the server declares
- title: Get study size statistics
- readOnlyHint: true
get_studyFetch a single ClinicalTrials.gov study by its NCT id (format NCT######## — the letters 'NCT' followed by digits, e.g.No findings
Why it is in this group
- The name "get_study" says "get": a word for reading.
Description, as the server wrote it Fetch a single ClinicalTrials.gov study by its NCT id (format NCT######## — the letters 'NCT' followed by digits, e.g. NCT00841061). Returns the full study object { protocolSection, derivedSection?, hasResults? }. Use `fields` to return only specific fields/modules. GET /studies/{nctId}.
Annotations the server declares
- title: Get a clinical trial by NCT ID
- readOnlyHint: true
get_study_metadataReturn the ClinicalTrials.gov study data model as a tree of module nodes (each with name/title/type/children).No findings
Why it is in this group
- The name "get_study_metadata" says "get": a word for reading.
Description, as the server wrote it Return the ClinicalTrials.gov study data model as a tree of module nodes (each with name/title/type/children). Use this to explore what fields/modules exist and their nesting, to build `fields` selections or `sort`/filter expressions. GET /studies/metadata.
Annotations the server declares
- title: Get the study data-model (field tree)
- readOnlyHint: true
list_field_valuesDiscover valid values / enums for one or more study fields.No findings
Why it is in this group
- The name "list_field_values" says "list": a word for reading.
Description, as the server wrote it Discover valid values / enums for one or more study fields. Returns per-field value statistics — for each field: its type, unique-value count and topValues [{value, studiesCount}]. Great for finding valid enum values (e.g. OverallStatus, Phase) before building a filter. GET /stats/field/values.
Annotations the server declares
- title: List value statistics for study fields
- readOnlyHint: true
search_studiesSearch the ClinicalTrials.gov v2 study registry.No findings
Why it is in this group
- The name "search_studies" says "search": a word for reading.
Description, as the server wrote it Search the ClinicalTrials.gov v2 study registry. Provide any combination of query terms (condition, intervention, title, location, sponsor, general term) — multiple query.* terms are ANDed together — plus optional filters (status, geo, advanced Essie expression, explicit NCT ids). Returns { totalCount?, studies: [...], nextPageToken? }. Use `fields` to trim the response to specific fields/modules, `sort` to order (e.g. '@relevance', 'LastUpdatePostDate:desc', 'EnrollmentCount:desc'), and pageSize/pageToken to page. GET /studies.
Annotations the server declares
- title: Search clinical trials (ClinicalTrials.gov)
- readOnlyHint: true
This is not a safety rating, and no finding is not a safety guarantee. The groups and findings come from fixed checks of the tool definitions the server returned on the date shown, not from its code or what it does when called. How the checks work.
Install
Pinned to version 1.16.3. Values in angle brackets are yours to fill in.
claude mcp add --transport http clinicaltrialsgov https://clinicaltrialsgov.usefulapi.io/mcpRun in a terminal.
Claude Code permissions
Allow the reads, ask before a change, deny the deletes. Paste into .claude/settings.json.
{
"permissions": {
"allow": [
"mcp__clinicaltrialsgov__search_studies",
"mcp__clinicaltrialsgov__get_study",
"mcp__clinicaltrialsgov__count_studies",
"mcp__clinicaltrialsgov__list_field_values",
"mcp__clinicaltrialsgov__get_study_metadata",
"mcp__clinicaltrialsgov__get_studies_stats",
"mcp__clinicaltrialsgov__get_api_version"
],
"ask": [],
"deny": []
}
}Tools that only read are allowed, tools that change things ask first, tools that delete or cancel are denied. It assumes the server is installed as clinicaltrialsgov. Review it before you use it.