Catalog / ClinicalTrials.gov

ClinicalTrials.gov API

clinicaltrials.gov

Read-only access to ClinicalTrials.gov study search, full study records, the study data model, search-area mappings, and source enumeration data. Responses are fetched live from the public API.

  • Health
  • clinical trials
  • ClinicalTrials.gov
  • health research
  • NIH
5 endpointsDocs updated

Endpoint health

Loading verification…

Connect your agent

Connect through MCP so your agent can find this API, read its docs, and call its endpoints.

Setup guide

Add the server from your terminal.

Claude Code · terminal
claude mcp add --transport http agent-data https://agent-data.motie.dev/mcp

In Claude Code, run /mcp, select agent-data, then Authenticate. Sign in to your agent-data account in the browser.

Then ask your agent to use the ClinicalTrials.gov API for your task.

Call it over HTTP

Get an API key

Sign up free, generate an API key, and set it as AGENT_DATA_API_KEY in your environment. Your first 100 calls each month are free.

Search clinical studies

Optional parameters 10

Source sort expression.

Comma-separated source fields to return.

Response format for this JSON API.

Number of studies per page, from 1 through 1000.

Opaque token returned by a previous search response.

Condition or disease search text.

Intervention search text.

General search text.

Advanced source filter expression.

Comma-separated overall statuses.

View call pricing
cURL · Studies
curl --request GET --get 'https://api.agent-data.dev/clinicaltrials-gov/v1/studies' \
  --header "Authorization: Bearer $AGENT_DATA_API_KEY"

Endpoints

Inputs and response fields for every endpoint in this API.

GETStudies/v1/studies

Search clinical studies

Input

sortOptionalQuery · string | null

Source sort expression.

Example: LastUpdatePostDate:desc

fieldsOptionalQuery · string | null

Comma-separated source fields to return.

Example: NCTId,BriefTitle,OverallStatus

formatOptionalQuery · string, default: json

Response format for this JSON API.

Example: json

pageSizeOptionalQuery · integer, min: 1, max: 1000, default: 20

Number of studies per page, from 1 through 1000.

Example: 2

pageTokenOptionalQuery · string | null

Opaque token returned by a previous search response.

Example: ZVNj7o2Elu8o3lpwX9765OytmpOQJJxqZvap

query.condOptionalQuery · string | null

Condition or disease search text.

Example: diabetes

query.intrOptionalQuery · string | null

Intervention search text.

Example: metformin

query.termOptionalQuery · string | null

General search text.

Example: randomized

filter.advancedOptionalQuery · string | null

Advanced source filter expression.

Example: AREA[Phase]PHASE3

filter.overallStatusOptionalQuery · string | null

Comma-separated overall statuses.

Example: RECRUITING,COMPLETED

Response

studiesobject[]
nextPageToken?string | null

Fields marked ? are optional.

GETStudies metadata/v1/studies/metadata

Get the study data model

Input

No input parameters.

Response

dataunknown
GETStudies by nctid/v1/studies/{nctid}

Get one clinical study

Input

nctidRequiredPath · string

ClinicalTrials.gov identifier: NCT followed by exactly 8 digits.

Example: NCT00000102

Response

hasResultsboolean
derivedSectionobject
resultsSection?object | null
protocolSectionobject

Fields marked ? are optional.

GETSearch areas/v1/search-areas

Get search area mappings

Input

No input parameters.

Response

dataunknown
GETEnums/v1/enums

Get source enumeration values

Input

No input parameters.

Response

dataunknown

Don’t see the endpoint you need?

Ask agent-data to add an endpoint or return more fields. Extensions are free and keep existing endpoints working.