Skip to main content
Glama
informatics-isi-edu

Deriva MCP Server

Official

get_dataset_spec

Generate a DatasetSpecConfig string for Python config files, ensuring correct RID and version formatting. Pin explicit versions for reproducibility.

Instructions

Generate a DatasetSpecConfig string for use in Python configuration files.

Returns the exact Python code to use in hydra-zen config files. This ensures the RID and version are correctly formatted and match what's in the catalog.

IMPORTANT: Always prefer specifying explicit versions in configurations. Using current_version as a default can lead to unexpected changes in results if the dataset is modified after the configuration is written. Pin to a specific version for reproducibility.

Args: dataset_rid: The RID of the dataset (e.g., "28CT"). version: Specific version to use. If not provided, uses the dataset's current version (with a warning about reproducibility).

Returns: JSON with the Python code string and metadata including: - spec: The DatasetSpecConfig(...) string ready to paste into code - rid: The dataset RID - version: The version used - description: Dataset description for reference - warning: Present if using current_version (recommends explicit version)

Example: get_dataset_spec("28CT") -> {"spec": "DatasetSpecConfig(rid="28CT", version="0.21.0")", ...}

get_dataset_spec("28CT", "0.20.0")
-> {"spec": "DatasetSpecConfig(rid=\"28CT\", version=\"0.20.0\")", ...}

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
versionNo
dataset_ridYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
resultYes
Behavior4/5

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

With no annotations, the description carries full burden. It discloses that the tool returns JSON with specific fields, including a warning when using current_version, and that it ensures correct formatting. It also highlights the reproducibility caveat. However, it doesn't mention potential failure modes or permissions, but for a read-only generation tool this is acceptable.

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?

The description is well-organized with sections (purpose, important note, args, returns, example). It is front-loaded with the core purpose, and every sentence adds value—especially the warning about version pinning and the concrete examples. Despite moderate length, there is no fluff.

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?

The tool is simple (2 params, no nested objects) and the description covers the return format, parameter behavior, and a critical best-practice warning. The examples illustrate typical usage. With an output schema present, the return fields in the description add sufficient context. No major gaps remain.

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 description coverage is 0%, so the description must compensate. The Args section explains each parameter: dataset_rid as 'The RID of the dataset (e.g., "28CT")' and version as 'Specific version to use. If not provided, uses the dataset's current version (with a warning about reproducibility).' This adds critical meaning beyond the raw schema, including default behavior and examples.

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?

The description clearly states the tool's purpose: 'Generate a DatasetSpecConfig string for use in Python configuration files.' It specifies the resource (DatasetSpecConfig) and the action (generate), distinguishing it from sibling tools that manage datasets or tables. The mention of hydra-zen config files further clarifies its unique role.

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?

The description provides clear guidance on version usage: 'Always prefer specifying explicit versions... Pin to a specific version for reproducibility.' It explains the risk of using current_version and gives examples for both explicit and default version cases. While it doesn't compare to alternative tools, this guidance is directly actionable for the primary decision a caller must make.

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/informatics-isi-edu/deriva-mcp'

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