clinicaltrialsgov-mcp-server
Version:
Search ClinicalTrials.gov trials, retrieve study details and results, and match patients to eligible trials via MCP. STDIO or Streamable HTTP.
46 lines • 3.04 kB
TypeScript
/**
* @fileoverview Lightweight study count tool — no data fetched, just the total.
* @module mcp-server/tools/definitions/get-study-count.tool
*/
import { z } from '@cyanheads/mcp-ts-core';
import { JsonRpcErrorCode } from '@cyanheads/mcp-ts-core/errors';
export declare const getStudyCount: import("@cyanheads/mcp-ts-core").ToolDefinition<z.ZodObject<{
query: z.ZodOptional<z.ZodString>;
conditionQuery: z.ZodOptional<z.ZodString>;
interventionQuery: z.ZodOptional<z.ZodString>;
locationQuery: z.ZodOptional<z.ZodString>;
sponsorQuery: z.ZodOptional<z.ZodString>;
titleQuery: z.ZodOptional<z.ZodString>;
outcomeQuery: z.ZodOptional<z.ZodString>;
statusFilter: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
phaseFilter: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
advancedFilter: z.ZodOptional<z.ZodString>;
includeUnknownEnrollment: z.ZodDefault<z.ZodBoolean>;
}, z.core.$strip>, z.ZodObject<{
totalCount: z.ZodNumber;
}, z.core.$strip>, readonly [{
readonly reason: "field_invalid";
readonly code: JsonRpcErrorCode.ValidationError;
readonly when: "A field name in the advanced filter or AREA[] expression is invalid (often a module name instead of a piece name).";
readonly recovery: "Call clinicaltrials_get_field_definitions to browse the field tree; use PascalCase piece names like OverallStatus, Phase, or StudyType.";
}, {
readonly reason: "enum_invalid";
readonly code: JsonRpcErrorCode.ValidationError;
readonly when: "statusFilter or phaseFilter contains a value ClinicalTrials.gov does not accept.";
readonly recovery: "Call clinicaltrials_get_field_values with fields=[\"OverallStatus\"] or fields=[\"Phase\"] to see the valid enum values the filter accepts.";
}, {
readonly reason: "query_parse_error";
readonly code: JsonRpcErrorCode.ValidationError;
readonly when: "A free-text query or advancedFilter expression uses syntax the upstream Essie parser rejects — typically `[ ]` (AREA[]-reserved) or an unmatched `(` / `)` in a query/conditionQuery/etc. value.";
readonly recovery: "Field-scoped search uses advancedFilter with AREA[FieldName]value (call clinicaltrials_get_field_definitions to look up the right FieldName); free-text fields (query, conditionQuery, etc.) take plain words plus AND, OR, NOT — `[ ]` are reserved (advancedFilter AREA[] only); `( )` group sub-expressions and are safe when matched; `,` acts as AND.";
}, {
readonly reason: "rate_limited";
readonly code: JsonRpcErrorCode.RateLimited;
readonly when: "ClinicalTrials.gov returned 429 after retry budget exhausted.";
readonly recovery: "ClinicalTrials.gov rate-limited the request after several retries; wait about a minute before trying again.";
readonly retryable: true;
}], {
readonly searchCriteria: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
readonly notice: z.ZodOptional<z.ZodString>;
}>;
//# sourceMappingURL=get-study-count.tool.d.ts.map