Skip to main content
Glama
CDISC Library MCP Server

CDISC Library MCP Server

by whereayan

get_datastructure_variables

Read-only

Retrieve variable names and labels for a CDISC data structure, plus an href template, to enumerate variables with minimal token use.

Instructions

获取分析数据结构的变量名清单(变量名 + 标签,另给 hrefTemplate),最省 token 的穷举方式。 注意:此端点不返回 core 与数据类型,要整表用 get_datastructure; 单个变量的定义与描述用 get_datastructure_variable。

示例: standard='adamig', version='latest', datastructure='ADSL'

Input Schema

NameRequiredDescriptionDefault
rawNotrue 时返回未经瘦身的原始 API 载荷(含 _links 等超媒体元数据);默认 false,返回已瘦身、更省 token 的响应
versionYes版本号,支持 '1-3' 或 '1.3' 格式;传 'latest' 自动解析为该产品当前最新版本
standardYes标准名称: sdtm, sdtmig, sendig, adam, adamig, cdash, cdashig
datastructureYes分析数据结构名,如 ADSL(受试者级分析数据集), BDS, OCCDS, TTE。大小写不敏感;不确定时先调 get_datastructures 看可用清单

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.6/5.0
Behavior4/5

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

Beyond readOnlyHint=true, the description discloses the negative behavior that matters most: this endpoint omits core and data types, so an agent that needs them is redirected. It also advertises token efficiency and the hrefTemplate field. It does not describe pagination or the exact response shape, which keeps it just short of a 5 given there is no output schema.

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

Conciseness4/5

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

The purpose and the token-saving claim are front-loaded, with the exclusion note and example following. Three sentences plus an example, all earning their place, though the 'most token-efficient' phrasing slightly overlaps the raw-flag documentation in the schema.

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?

Read-only list tool with 4 fully documented parameters and no output schema; the description still names the returned fields and, critically, states what is not returned. Nothing an agent needs in order to call this correctly or to pick a sibling is missing.

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

Parameters4/5

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

Schema coverage is already 100%, so the baseline is 3, and the description adds a concrete worked example (standard='adamig', version='latest', datastructure='ADSL') that shows how the parameters combine in practice. It does not add semantics for the raw flag, but that is fully documented in the schema.

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?

States a specific verb and resource — returning the variable-name list (names + labels, plus hrefTemplate) for an analysis data structure — and explicitly differentiates itself from get_datastructure (full table) and get_datastructure_variable (single variable). An agent can distinguish it from the nearest siblings without opening a schema.

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

Usage Guidelines5/5

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

Explicit routing is given: use this for the cheapest exhaustive name list, use get_datastructure when core and data types are needed, use get_datastructure_variable for a single variable's definition. The schema's datastructure field also tells the agent to call get_datastructures first when the name is unknown. When-to-use and when-not-to-use are both covered.

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