Skip to main content
Glama

Get memory

get_memory
Read-onlyIdempotent

Fetch a single Brain memory by ID to read a saved fact or short Markdown mini-doc, including who added it and the revision count; check versions when count exceeds one.

Instructions

Fetch one Brain memory by id. Content is either a singular fact or a short Markdown mini-doc (up to about 800 words). The memory includes addedBy (who first saved it) and versionCount (saved revisions). When versionCount is greater than 1, call get_memory_versions to read every saved revision.

Input Schema

NameRequiredDescriptionDefault
brainYesBrain id from list_brains. The personal brain is "personal".
memoryIdYes

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observedv0.2.2

TDQS

A4.2/5.0
Behavior4/5

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

Annotations already declare readOnlyHint/idempotentHint/destructiveHint=false, so safety is covered. The description adds value beyond them by disclosing the shape and size bound of the payload and the presence of addedBy and versionCount fields, and it flags a follow-up call. It does not mention behavior on a missing/invalid id (error vs empty), which is the main remaining gap.

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, zero filler; the identity of the tool and its scope lead, then payload characteristics, then the conditional escalation to get_memory_versions. Every sentence carries distinct information.

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 no output schema, the description does a reasonable job sketching the return shape (content, addedBy, versionCount) and the size limit, which is what an agent needs to decide whether to call it. Missing only id-format guidance and error/not-found behavior for full completeness.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 50%: 'brain' is documented in the schema (including the "personal" default), but 'memoryId' has no schema description at all. The description only says 'by id' and adds nothing about id format or where to obtain it, so it does not compensate for the undocumented parameter. Baseline 3 is the correct ceiling here.

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 ('Fetch one Brain memory by id') and immediately characterizes what the returned content is (a fact or a Markdown mini-doc up to ~800 words). An agent can distinguish this from search_brain and list_brains without opening any 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?

Gives an explicit conditional branch: 'When versionCount is greater than 1, call get_memory_versions to read every saved revision.' That is a genuinely useful routing rule to a named sibling. It does not state when *not* to use this tool (e.g. when you only have a query and not an id, use search_brain), so it falls short of full 5-level guidance.

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