Skip to main content
Glama

save_story_state

Destructive

Story memory after each delivered episode (free, append-only; the latest is returned by get_series_canon and get_series_overview). facts: [{text, ep}]; knowledge: {a: [], b: [], viewer: []} (who knows what; any character id); open_loops: [{text, opened_ep, must_close_by}]; used_beats: [text]; power_holder: who holds power now; last_cliffhanger_types: types used so far, newest last.

Tool call template

Replace each placeholder with a value matching the input schema. Only required parameters are included; add optional parameters as needed.

{
  "id": 1,
  "jsonrpc": "2.0",
  "method": "tools/call",
  "params": {
    "arguments": {
      "series_id": "<series_id>",
      "through_ep": "<through_ep>"
    },
    "name": "save_story_state"
  }
}

Input Schema

NameRequiredDescriptionDefault
factsNo
knowledgeNo
series_idYes
open_loopsNo
through_epYes
used_beatsNo
power_holderNo
last_cliffhanger_typesNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Added

TDQS

A4.4/5.0
Behavior4/5

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

Annotations already flag readOnlyHint=false, destructiveHint=true and openWorldHint=true, so the safety profile is known. The description adds two facts the annotations cannot convey: the write is 'free' (no credit cost, notable given siblings like generate_video and quote) and it is 'append-only', which materially softens the destructive hint by explaining that prior state is versioned rather than lost, since 'the latest is returned'. It does not state auth or per-series overwrite semantics, so not a 5.

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-loads the one-line purpose and the free/append-only constraint before the field glossary, so the highest-value information comes first. The semicolon-chained field rundown is dense and readable for a schema-substitute, but a bulleted field list would scan faster and the parenthetical nesting in the knowledge clause is slightly cramped.

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 an 8-parameter mutation tool with no output schema and no schema descriptions, the description supplies timing, cost, persistence model, downstream readers, and payload shape — enough to invoke it correctly. The remaining gap is the merge/overwrite contract when called again for the same through_ep, which an agent would have to guess.

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 description coverage is 0% and the schema only lists bare titles, so the description carries the entire burden — and it does: it gives the element shape for facts ({text, ep}), the key layout and intent for knowledge ({a, b, viewer}, 'who knows what; any character id'), the fields inside open_loops, plus the meaning and ordering of used_beats, power_holder and last_cliffhanger_types. Only series_id and through_ep are left implicit, and both are self-evident from the surrounding prose.

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?

States a specific verb and resource ('Story memory after each delivered episode') and pins the exact lifecycle point it writes at. It also names the sibling readers that surface the saved value ('get_series_canon and get_series_overview'), so the agent can place it in the pipeline without opening a schema.

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 phrase 'after each delivered episode' gives a concrete trigger condition, and pointing to get_series_canon/get_series_overview shows where the result is consumed. It stops short of stating exclusions (e.g., don't call for undelivered drafts, whether repeated calls for the same episode supersede) but the timing cue is unambiguous.

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