Skip to main content
Glama

Save to emero brain

save_to_emero_brain

Save ONE real decision the user made into this brand's emero brain. Call it when the user makes a brand decision — a rule, a look, a subject to reuse, a definition, or "remember this" about their brand or work: it shows in their emero brain tab, where they can review or edit it, and later generations in any chat reuse it. kind="rule" for a must/never/prefer standard (e.g. "always leave headroom at the top"), "preference" for a leaning (a look, a go-to model), "subject" for a Character or Product to reuse across shots (set asset_kind + image_job_ids = the generation/upload ids of its reference image(s)), "decision" for a creative call (a definition, a direction), "look" for the whole look-lock sheet the user approved (summary = one line, detail = the full sheet: palette roles, light recipe, lens family, casting, wardrobe, materials, grain). scope: "project" when the user ties it to this project/campaign ("in this project", "for this campaign"), "brand" when it's how the brand always works ("always", "for the brand") — required for rule/preference/decision; subjects and looks default to brand. emero grades it but NEVER replaces an earlier entry on its own: if the save reports possible conflicts, the old entries are still active — supersede only if the user's message replaces them, else ask. Save ONLY what the user actually said or did; never invent rules. load_skill("emero-brain") for when to use each kind.

Input Schema

NameRequiredDescriptionDefault
kindYes
scopeNo
titleYes
detailNo
summaryYes
asset_kindNo
project_idNoOpaque per-chat project id: "p-" plus 6 random letters and digits. Every chat is a new project. Mint one on your first emero call and pass that SAME id on every call in this chat. Never mint a second one in the same chat, even for a new topic, campaign or subject. Only when the user asks to continue an earlier project, reuse its id from get_emero_brain's project list.
project_nameNoShort human title for the project (2-5 words from the user request, e.g. "Perfume ad campaign"). Pass it on your first generate/ingest_url so the project is not left "Untitled". You may also rename at will later — pass an updated project_name (on a generate/ingest_url, or on set_settings with no other change) whenever the user asks, e.g. "call this project cats".
image_job_idsNo

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed1 schema field changed
    • changedInput schema / properties / project_id / description
      Previous value: -"Opaque per-chat project id. Mint one on your first emero action, pass that SAME id every call. One project per chat: NEVER mint a second for a new topic/campaign/subject/vibe — all stay in the one project; a new id is only for a new chat (server folds a stray id back in). A new chat the user says continues an earlier project reuses that project's id (from get_emero_brain's project list)."New value: +"Opaque per-chat project id: \"p-\" plus 6 random letters and digits. Every chat is a new project. Mint one on your first emero call and pass that SAME id on every call in this chat. Never mint a second one in the same chat, even for a new topic, campaign or subject. Only when the user asks to continue an earlier project, reuse its id from get_emero_brain's project list."
  2. First observed

TDQS

A4.6/5.0
Behavior5/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 so: it discloses persistence and cross-chat reuse, user editability, that grading never auto-replaces prior entries, and that a save can report possible conflicts requiring a follow-up question. It also adds a strong anti-invention constraint ('Save ONLY what the user actually said or did').

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?

The core instruction and the trigger are front-loaded, and nearly every clause carries operational content. However, it is one dense, unbroken paragraph with semicolon-chained clauses, making it hard to scan; some of the supersede/conflict guidance overlaps with the 'save only what the user said' constraint.

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 9-parameter mutation tool with no annotations and no output schema, the description is thorough on when to call, which kind, which scope, and conflict handling. Gaps remain on what a successful save returns, how title/summary should be shaped for non-'look' kinds, and any auth or failure behavior beyond the conflict report.

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 only 22%, but the description compensates heavily: every 'kind' enum value is defined with examples, 'scope' is explained including defaults per kind, and asset_kind/image_job_ids semantics are spelled out as reference-image ids. It also gives shape guidance for summary and detail on the 'look' kind.

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 ONE real decision ... into this brand's emero brain') and enumerates exactly what counts as a saveable decision. The sibling separation is implied rather than named — it alludes to the brain tab where entries 'can review or edit' but never references get_emero_brain or manage_emero_brain by name.

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

Usage Guidelines5/5

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

Gives an explicit trigger ('Call it when the user makes a brand decision'), then per-value guidance for each kind, scope selection rules with example phrases, and a conflict rule ('supersede only if the user's message replaces them, else ask'). It also names the escalation path — load_skill("emero-brain") — for the remaining ambiguity.

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.