Skip to main content
Glama
cyanheads

clinicaltrialsgov-mcp-server

Clinicaltrials Get Field Definitions

clinicaltrials_get_field_definitions
Read-onlyIdempotent

Resolve valid field names from ClinicalTrials.gov by searching keywords, drilling into sections, or viewing an overview of all sections. Use returned identifiers with other tools for filtering and sorting.

Instructions

Resolve valid field names from the ClinicalTrials.gov data model — the canonical PascalCase identifiers (OverallStatus, EnrollmentCount, LeadSponsorName) accepted by the fields, advancedFilter, and sort parameters of other tools, and as input to clinicaltrials_get_field_values. Select a mode: "search" — keyword search returning ranked matches (pass query, e.g. "enrollment", "sponsor", "adverse events"); "drill" — drill into a specific section by dot-notation path (pass path, e.g. "protocolSection.designModule"); "overview" — top-level summary of all sections (no additional args).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
modeYesOperation mode. "search" — keyword search (requires `query`); "drill" — drill into a section by path (requires `path`); "overview" — list all top-level sections (no other args needed).
queryNosearch mode only. Keyword to search field names by — e.g., "enrollment", "sponsor", "adverse events". Returns matching field names ranked by relevance with their full paths and data types.
pathNodrill mode only. Dot-notation path to drill into — e.g., "protocolSection.designModule", "protocolSection.eligibilityModule", "resultsSection". Returns the section's individual fields.
limitNosearch mode only. Maximum results to return. Default: 20.
includeIndexedOnlyNodrill mode only. Only return indexed (searchable) fields. Default: false.

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
fieldsYesField definitions, ordered by relevance when mode is "search".
totalFieldsYesTotal fields returned.
resolvedPathNoResolved path when mode is "drill".
searchQueryNoEcho of the keyword when mode is "search".
Behavior4/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Description adds behavioral context beyond annotations: explains the three operation modes and what they return (ranked matches, section fields, top-level summary). Annotations already declare readOnlyHint, idempotentHint, openWorldHint true, and description aligns with them.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Description is concise (~100 words), front-loaded with main purpose, then neatly structured by modes. Each sentence serves a purpose; no redundancy.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness5/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

With output schema present, return values don't need explanation. Description covers all three modes, parameter requirements, and use cases. For a 5-parameter tool with 3 modes, this is fully complete.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters5/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100%, baseline 3, but description adds significant meaning for each parameter: explains mode options with required args, query for search, path for drill, limit logic, and includeIndexedOnly purpose. This goes well beyond the schema descriptions.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Description clearly states it resolves valid field names from the ClinicalTrials.gov data model, listing specific canonical identifiers. It distinguishes itself from sibling tools by explicitly noting these identifiers are accepted by other tools' parameters (fields, advancedFilter, sort) and as input to clinicaltrials_get_field_values.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Three modes (search, drill, overview) are individually described with required arguments, giving clear context for when to use each. However, no explicit guidance on when not to use this tool or compare to alternatives among siblings, though the distinct purpose makes it clear.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.

Install Server

Other Tools

Latest Blog Posts

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/cyanheads/clinicaltrialsgov-mcp-server'

If you have feedback or need assistance with the MCP directory API, please join our Discord server