Skip to main content
Glama
BorgDiven

research-workflow-studio

by BorgDiven

rws_research_save

Idempotent

Save or update a research question or optional hypothesis in a project record without deciding scientific validity; omitted fields are preserved for existing records.

Instructions

Save a research question or optional hypothesis; does not decide scientific validity.

Input Schema

NameRequiredDescriptionDefault
recordYesFor an existing id, provide only fields to change; omitted fields are preserved. A new id still requires a complete valid record.
projectIdYes
requestIdYes
expectedRevisionYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.3.3

TDQS

C2.9/5.0
Behavior3/5

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

Annotations already declare readOnlyHint=false, idempotentHint=true, destructiveHint=false, so the write/idempotent profile is covered. The description adds a genuine governance fact — saving does not confer scientific validity, so judgment fields remain human-owned — which is context beyond the annotations. It omits the more consequential behaviors: upsert/merge semantics for an existing id and the mandatory optimistic-concurrency revision, both of which an agent must understand before calling.

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?

A single front-loaded sentence with the resource stated first and the caveat second; nothing is wasted. It is arguably too terse for a tool with nested objects and four required parameters, but there is no padding or redundancy.

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?

This is a nested-object mutation with 25% schema coverage, no output schema, and a required concurrency token, so the description should carry more weight than one clause. Key operational facts — merge-vs-replace on update, stale-revision failure behavior, and that kind/stage/status drive the record shape — are absent. What is present is accurate but insufficient for confident invocation.

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 25%, so the description is expected to compensate, and it largely does not. It hints that the hypothesis is optional and that the question is the core payload, but says nothing about requestId, projectId, or the required expectedRevision, which is the highest-risk parameter for a mutation tool. The richer guidance (omitted fields preserved, explicit null clears) lives only in the schema's record description.

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?

Specific verb+resource: 'Save a research question or optional hypothesis' clearly identifies the record type being written, and the 'research' resource name implicitly separates it from rws_experiment_save, rws_spec_save, rws_usage_save and other *_save siblings. It does not explicitly name an alternative, but an agent can tell which save tool applies.

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

Usage Guidelines2/5

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

No statement of when to use this versus rws_experiment_save or rws_spec_save, no mention of create-vs-update behavior, and nothing about the required expectedRevision concurrency check. The only guidance, 'does not decide scientific validity,' is a scope caveat rather than a use condition.

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