Skip to main content
Glama

record_series

Store time-series measurements in atomic batches. Invalid points reject the batch; existing points update by key and time, and batch_id enables undo.

Instructions

Record measurements over time for a series type (list_schemas shows kind "series", its key fields, time field and measures), e.g. [{"person": "A", "measured_on": "2026-07-01", "kg": 70.2}].

    One call = one batch, all or nothing: if any point is invalid nothing is stored and `rejected` says why.
    A point whose key and time are already stored is updated (the batch keeps the previous values).
    source: where the values come from (file, app, "user said"). by: your agent name.
    Returns batch_id and counts (inserted / updated / unchanged); revert_series_batch(batch_id) undoes it.
    

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
byYes
pointsYes
sourceYes
entity_typeYes

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault

No arguments

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.1.0

TDQS

A4.2/5.0
Behavior4/5

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

With no annotations the description carries the full burden and does well: it discloses transactional atomicity ('all or nothing', `rejected` reason on failure), upsert semantics for duplicate key+time including that previous values are kept for the batch, the meaning of the by/source provenance fields, and the batch_id/counts response with a reversal route. Gaps are permissions/auth requirements and any rate or size limits on a batch.

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?

Front-loaded with the verb and resource, then a worked example, then the batch semantics and return/undo behavior — minimal waste. The parenthetical around the example is slightly dense, but every sentence adds operative information.

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 four-parameter mutation tool with no annotations, the description covers the essentials: point shape, atomicity, upsert behavior, provenance fields, and the undo sibling. Since an output schema exists it need not restate return values, yet it still names batch_id and counts. Only authorization expectations are left unaddressed.

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 coverage is 0% and every property is a bare title, so the description must compensate — and it does, defining `entity_type` via the series-type concept, `by` as the agent name, `source` as the value's origin (file, app, "user said"), and `points` through a concrete example showing key field, time field and measure. This effectively documents all four required parameters.

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?

States a specific verb and resource — record measurements over time for a 'series' type — and even defines what a series type is by pointing at list_schemas for its key fields, time field and measures. It is clearly distinct from the plain 'record' sibling in framing, though it never contrasts them 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?

Gives a clear context of use (time-series measurements keyed by a series type) plus the prerequisite discovery step via list_schemas, and names revert_series_batch as the undo path. No explicit when-not-use condition or comparison against the 'record' sibling is offered.

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