Skip to main content
Glama

crosstabs

Update variable metadata

update_variable_metadata
Idempotent

Apply an approved label, coding, missing-value, measurement, role, and display-format update without rewriting respondent rows. Queues a hosted job; use get_job to retrieve its result. Obtain actual user approval before calling; do not fabricate approval fields.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
labelYes
waveIdYes
approvalYes
metadataYes
projectIdYes
requestIdYesA new UUID for this job, reused only when retrying identical inputs.
variableNameYes
idempotencyKeyYes
workspaceTokenYesSecret workspace capability returned by create_workspace. Treat as a password; never place in a query string.
expectedRevisionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A3.9/5.0
Behavior4/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false, and openWorldHint=false, so the description only needs to add context — and it does: the call queues an asynchronous hosted job rather than returning results inline, and it demands genuine human approval. This goes meaningfully beyond what the annotations convey, though it omits what happens on an expectedRevision mismatch or how retries interact with idempotencyKey.

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?

Three tight sentences, front-loaded with the operation and its scope, then the async behavior, then the approval gating. Every clause carries information and nothing is redundant.

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

Completeness3/5

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

For a 10-parameter tool with a deeply nested metadata payload and no output schema, the description covers the async pattern, follow-up retrieval, and approval requirement well. But it never addresses the revision-concurrency contract implied by the required expectedRevision, nor the retry semantics of idempotencyKey/requestId, which are the highest-risk unknowns for an agent calling this.

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

Parameters3/5

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

Schema description coverage is only 20% across 10 required parameters, so the description must compensate — and it partially does by enumerating the metadata facets (label, value labels, missing values, measurement level, role, format) that map to the nested 'metadata' object and by referencing approval fields. However, expectedRevision, idempotencyKey, projectId, waveId, and variableName carry no explanation here or in the schema, leaving concurrency and scoping semantics opaque.

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

Purpose4/5

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

The description names a specific verb (apply/update) plus the exact resource and the set of metadata facets being changed (label, coding, missing-value, measurement, role, display-format). It also draws a sharp boundary — 'without rewriting respondent rows' — that separates it from data-mutating siblings like replace_dataset or apply_transformation. It stops short of explicitly naming a competing sibling such as propose_transformation or review_transformation, which keeps it at 4 rather than 5.

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?

It gives a clear precondition ('obtain actual user approval before calling; do not fabricate approval fields') and routes the agent to the correct follow-up tool for results ('use get_job to retrieve its result'). That is real when-to-use and what-next guidance, though there is no explicit when-not-to-use or sibling comparison against the proposal/review tools.

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

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources