Skip to main content
Glama

Upsert parameter catalog

model_upsert_parameter

Create or patch one parameter definition (not observations). Pass rev for If-Match on update.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idNo
revNo
nameNo
roleNo
unitNo
attrsNoname, definition, unit, scopeAxes, SBC fields, comments, …
layerNo
commentNo
formulaNo
domainIdNo
priorityNo
streamIdNo
scopeAxesNo
valueTypeNo
assignedWsNo
definitionNo
canonicalIdNo
parameterIdYes
primaryOwnerNo
economicClassNo
adjustmentKindNo
qtyParameterIdNo
rateComponentsNo
rateParameterIdNo

Schema Changelog

Changes observed during successful MCP inspections. Dates show when Glama detected each change.

  1. Changed5 schema fields changed
    • addedInput schema / properties / adjustmentKind
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / economicClass
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / qtyParameterId
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / properties / rateComponents
      Added value: +{
      +  "type": "array"
      +}
    • addedInput schema / properties / rateParameterId
      Added value: +{
      +  "type": "string"
      +}
  2. Added

TDQS

A3.7/5.0
Behavior3/5

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

With no annotations, the description carries the burden of behavioral disclosure. It does add useful behavior: it clarifies upsert semantics (create vs patch) and the If-Match/rev requirement on update. However, it does not mention permissions, failure behavior when rev is missing, partial-patch semantics, side effects, or response behavior, so disclosure is only partial.

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 two short sentences with no filler. The core action and resource are front-loaded, and the rev detail is scoped to updates. Every sentence earns its place.

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

Completeness2/5

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

For a mutation tool with 24 parameters, no annotations, and no output schema, two sentences are not enough. The description lacks guidance on which fields are needed for create vs patch, the role of the required parameterId, and the meaning of the many optional fields. It is a skeleton definition rather than a complete one.

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

Parameters2/5

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

Schema description coverage is only 4% across 24 parameters, so the description needed to compensate for the many undocumented fields. It does add meaning to rev ('If-Match on update'), but almost all other parameters such as parameterId, role, unit, formula, and scopeAxes remain unexplained. This is insufficient for the low coverage.

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 uses specific verbs ('create or patch') and a specific resource ('one parameter definition'), and explicitly excludes observations, which separates it from model_upsert_observation and model_upsert_observations. The singular 'one' also distinguishes it from the plural model_upsert_parameters, even though that sibling is not named explicitly.

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 gives clear context: use it for one parameter definition, not observations, and pass rev on update for If-Match. It provides an explicit when-not for observations, but it does not name alternative tools such as model_upsert_parameters for bulk operations or model_upsert_observation for observations, so routing still depends partly on sibling-name inference.

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.

TDQS

B3.2/5.0
Disambiguation2/5

Many tools are mirrored across `artifacts_*` and `roadflow_*` with near-identical names and behavior, and within each family `get`, `export_json`, and `export_markup` overlap in what they return. Descriptions identify the target workspace, but an agent must carefully inspect prefixes and formats to avoid misselection.

Naming Consistency4/5

The set consistently uses lowercase snake_case with a domain prefix and predictable verbs like get, list, create, open, export, and apply. Minor deviations are bare commands (`new`, `discard`, `status`) and the parallel `artifacts_*`/`roadflow_*` prefixes, which make names look duplicated.

Tool Count3/5

At 23 tools, the surface lands in the heavy 16-25 range and feels padded because many operations are duplicated for two workspace types. Each subsystem alone would have a reasonable count, but combined the set is bloated.

Completeness4/5

The toolset covers the full workspace lifecycle: create, read, update via apply, discard, share, version, status, and multiple export formats. Missing cloud deletion and fine-grained element editing are minor gaps that can be worked around with full-state apply/export.

Resources