Skip to main content
Glama

Lagre til Tua

tua_save

Save AI output or content as an atom in a local markdown archive, automatically preserving source, project, conversation, and time provenance for later search.

Instructions

Lagre et stykke AI-output (eller annet innhold) som et atom i Tua-arkivet. Proveniens (kilde, prosjekt, samtale, tid) festes automatisk. Det finnes ingen mappe å velge — det er hele poenget. Send HELE innholdet i content, og ALLTID en ingress i short (S). Er innholdet over ~3 000 tegn, send også medium (M).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
keyNoStabil nøkkel for ting som oppdateres over tid (f.eks. «manifest», «commit-logg», «status»). Finnes et atom med samme key i samme prosjekt, ERSTATTES innholdet — id og synlighet beholdes, versjonen telles opp. Utelat for engangs-innhold.
kindNocapture (standard) eller leveranse (bygget av andre atomer — settes automatisk når derivedFrom sendes).
nameNoTittel. Utelat for å ta første linje automatisk.
tagsNo1–4 korte tagger.
convoNoKort tittel på samtalen/oppgaven dette kom fra — pekeren tilbake til konteksten.
linksNoAtomets egne pekere: fila det ble skrevet til (kind=file, absolutt sti), en nettadresse (url), repoet (repo), eller Desktop-prosjekt/-samtale (claude-project/claude-chat som claude://-lenke). Repo og Desktop-prosjekt for prosjektet legges til automatisk fra prosjektregisteret — send bare det som er spesifikt for dette atomet.
shortNoS — ingressen, 1–3 setninger, maks 300 tegn. Svarer på «hva er dette?»: konklusjonen, tallene som bærer den (beløp, datoer, prosent), status (gjeldende/historisk). Send ALLTID.
mediumNoM — sammendrag, 150–400 ord (maks 2 500 tegn), når innholdet er over ~3 000 tegn: beslutninger, tall, korreksjoner, åpne punkter, struktur. Ikke transkript. Nivå er mengde, ikke redaksjon — ikke utelat navn/tall som står i L.
sourceNoKilde-AI. Standard: Claude.
contentYesHele innholdet som skal lagres (markdown/tekst). Dette er L.
projectNoProsjektet dette hører til (f.eks. «Tua Business»). Bruk brukerens prosjektnavn, ellers repo/mappe-navn.
rendersNoGjengivelser av dette atomet: html/pdf som absolutt sti (sha256 regnes ut), eller artifact som url. Fila er en gjengivelse — atomet (markdown) er sannheten. Send med samme key når du har rendret.
summaryNoÉn linje: HVORFOR ser det slik ut / hva ble bestemt. Lever ved siden av S, ikke i stedet for.
derivedFromNoKildeatomene en leveranse er bygget av: id, versjonen du leste, nivået du leste på. tua_compose fyller dette selv; send det når du bygde leveransen av tua_get-resultater for hånd.

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.4.0

TDQS

A3.5/5.0
Behavior3/5

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

Annotations declare readOnlyHint=false and destructiveHint=false, so the agent already knows this is a non-destructive write. The description usefully adds that provenance (source, project, conversation, time) is attached automatically and that there is deliberately no folder hierarchy, which is real context beyond the annotations. It omits, however, the key-collision replacement behavior — that is buried in the schema's 'key' description, not in the tool description.

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?

Four tight sentences, front-loaded with what the tool does, then followed by the two most important call constraints. No filler, though the 'no folder — that's the whole point' aside is personality rather than instruction.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness3/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

For a 14-parameter mutation tool with no output schema and no idempotency guarantee, the description covers the input contract well but says nothing about what comes back. With no output schema to lean on, the return value (e.g. the created or replaced atom id/version) should have been described.

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 coverage is 100%, so the baseline is 3, but the description adds genuine call-shaping rules: put the ENTIRE content in 'content', always provide 'short', and add 'medium' when content exceeds ~3000 characters. That sizing guidance goes beyond restating the schema and directly affects how the agent invokes the tool.

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: save content as an 'atom' in the Tua archive, with provenance auto-attached and no folder to choose. This is much sharper than a tautology, but it never contrasts itself with the closest siblings (tua_import, tua_compose), so the agent gets purpose but not sibling differentiation.

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?

Usage is implied (save a piece of AI output or other content), and it gives operational rules about always sending 'short' and sending 'medium' past ~3000 chars. However it never says when to prefer tua_save over tua_import, tua_compose, or tua_link, and gives no exclusion criteria, so the when-to-use dimension is left to inference.

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