Skip to main content
Glama
rush-db

RushDB MCP Server

Official
by rush-db

createRecord

Create a new record with a label and data; set mergeStrategy and mergeBy to upsert by matching existing records instead of inserting duplicates.

Instructions

Create a new record. Use the exact label casing returned by findLabels. Set mergeStrategy + mergeBy in options to enable upsert semantics (merge existing vs. replace).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
dataYesThe record data to insert
labelYesLabel for the record
optionsNoOptional creation/upsert options
transactionIdNoOptional transaction ID for atomic creation

Output Schema

TableJSON Schema
NameRequiredDescriptionDefault
idYes
recordYesA RushDB record containing system fields and user-defined properties.
messageYes
successYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv3.0.1

TDQS

A3.9/5.0
Behavior4/5

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

Annotations cover the safety profile (readOnlyHint=false, destructiveHint=false, openWorldHint=false), and the description adds real behavioral context beyond that: that mergeStrategy+mergeBy together enable upsert and that labels must match findLabels casing. It stops short of stating what happens on a label/record conflict when upsert is not enabled (duplicate vs. error).

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 short sentences, each earning its place: the core action first, then the label prerequisite, then the upsert control. No redundancy and no filler.

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?

With an output schema present, return values need not be explained, and annotations carry the safety profile, so the description covers the mutation-specific essentials (label source, upsert semantics). The remaining gap is conflict behavior when upsert is not enabled.

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 100%, so the baseline is 3, but the description adds meaning the schema lacks: the label casing requirement (schema only says 'Label for the record') and the fact that mergeStrategy and mergeBy must be set together to trigger upsert. This is a genuine supplement over the structured fields.

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 opens with a specific verb+resource ('Create a new record'), which is clear and distinct from read-oriented siblings like findRecords/getRecord. It does not, however, differentiate itself from the closely related write siblings setRecord, updateRecord, or bulkCreateRecords, leaving that ambiguity for the agent to resolve.

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines3/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

It gives one actionable prerequisite ('Use the exact label casing returned by findLabels') and explains the upsert toggle, which is useful cross-tool guidance. But it never states when to choose createRecord over setRecord/updateRecord/bulkCreateRecords, so tool-selection guidance is only implied.

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