Skip to main content
Glama

Bulk upsert observations

model_upsert_observations

Create or replace many facts (cap 400). Same body shape as model_upsert_observation. Rejects CALC outputs unless valueOverride. continueOnError returns per-row errors; otherwise one transaction.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
idNo
observationsYesFacts (parameterId, scope, setId, value, …)
continueOnErrorNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.6/5.0
Behavior5/5

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

With no annotations provided, the description carries the full burden and does so very well. It discloses that the operation is create-or-replace, enforces a 400-item cap, rejects CALC outputs without valueOverride, and clarifies transaction semantics: per-row errors with continueOnError versus a single transaction otherwise. This is substantial behavioral context beyond the bare fact of an upsert.

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 compact and front-loaded: the core action and cap appear in the first sentence, followed by two sentences of high-value behavioral notes. There is no fluff or redundant restating of the schema.

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?

Given the moderate complexity and the absence of annotations and output schema, the description covers the most important operational details: batch size, transaction behavior, CALC restriction, and error handling. It falls slightly short on explaining the optional id field and the exact response shape, but the referenced sibling tool helps fill those gaps.

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 description coverage is only 33%, so the description must compensate. It does add real meaning: continueOnError's effect is explained, and the 'same body shape as model_upsert_observation' line tells the agent how to structure each observation. However, the optional top-level id parameter is left undocumented, and the description does not fully spell out the observation item fields.

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 states a specific verb-resource pair: create or replace many facts, with a clearly defined batch scope (cap 400). The title 'Bulk upsert observations' and the phrase 'many facts' distinguish this from the singular sibling model_upsert_observation without ambiguity.

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 for using this tool: it is for bulk upserts of many observations and explicitly references model_upsert_observation for body-shape compatibility. It also provides a usage constraint (rejects CALC outputs unless valueOverride) and explains continueOnError behavior, though it does not explicitly enumerate when to prefer this over other sibling 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