Skip to main content
Glama

onboard_dataset

Register a dataset for semantic querying by providing column names, records, or raw CSV. Automatic profiling and background training enable immediate queries while accuracy improves over time.

Instructions

Register a dataset for semantic querying. Pass column names, inline records, or raw CSV. The engine profiles roles automatically and starts background training. Queries work immediately via a fallback model — accuracy improves once schema-specific training completes (poll status with list_datasets). Registration persists the dataset under the active API key's organization. Use connect_data for live connections instead of inline rows. Returns dataset_id, schema_hash, status, model_tier, column_count, and suggested_aliases.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
csvNoRaw CSV text with header row.
nameNoHuman-readable name for this dataset.dataset
columnsNoColumn names only — fastest path, no data required.
recordsNoSample rows as JSON records (list of dicts). Up to 200 rows.
async_trainNoStart background semantic training immediately (default: true).
domain_aliasesNoOptional map of abbreviation → expansions. Example: {"ppa": ["per", "person", "average"]}. Auto-suggested if omitted.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.3/5.0
Behavior4/5

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

Annotations are all false, so the description carries the full burden. It discloses background training behavior, immediate fallback querying, persistence under the active API key's organization, and return fields. It also notes that accuracy improves once training completes. This is thorough, though it doesn't cover failure modes or rate limits, which are not essential for a registration tool.

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 description is a single dense paragraph but remains focused and front-loaded with the primary action. Each sentence adds new information: input modes, async training, persistence, alternative tool, and return values. No filler or redundancy. Could be broken into bullets for scannability but is appropriately sized.

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

Completeness4/5

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

For a 6-parameter tool with no output schema, the description compensates by listing return fields (dataset_id, schema_hash, etc.) and explaining the async workflow. It covers the key execution context (fallback model, polling). Minor gaps include handling of conflicting inputs (e.g., both columns and records provided) and error conditions, but overall an agent can invoke correctly.

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 100%, so parameters are documented. The description adds meaningful context: it explains the fastest path (columns only), the 200-row limit for records (already in schema but reinforced), domain_aliases auto-suggestion if omitted, and the async_train behavior. It also clarifies the naming of the different input modes. This goes beyond repeating schema text.

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 registers a dataset for semantic querying, immediately listing the three input modes (columns, records, CSV). It explicitly differentiates from connect_data by telling the agent to use that alternative for live connections. The purpose is unambiguous and distinct from sibling tools.

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 explicit guidance on when to choose this tool over connect_data ('Use connect_data for live connections instead of inline rows') and mentions polling status with list_datasets. It lacks an explicit list of other alternatives but the context is clear. This is strong for a tool with a large sibling set.

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

Deploy Server

Other Tools