Skip to main content
Glama

Mem0 Cloud

Read your stored memories, like mem0's get memory and get all memories

get_memories

Read your stored memories, like mem0's get memory and get all memories. With memory_id: returns that one memory (404 if it is not yours). Without it: returns a page {count, next, previous, results} of the memories matching user_id, agent_id, app_id or run_id (at least one; "*" matches any value), newest first. Requires your memory_key (a secret string you generate): a different key sees nothing. Price: $0.002 a call (3 free calls a day without an API key).

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
pageNoPage number, from 1 (default 1)
app_idNoEntity: the app (1-128 characters)
run_idNoEntity: the session or run (1-128 characters)
user_idNoEntity: the user the memories are about (1-128 characters)
agent_idNoEntity: the agent the memories belong to (1-128 characters)
memory_idNoUUID of one memory to fetch; leave out to list memories instead
page_sizeNoMemories per page, 1-100 (default 50)
memory_keyYesYour secret: a random string of 16-256 characters that you generate once and keep (also accepted as the X-Memory-Key header). Memories are stored and searched only under its hash, so nobody who lacks it can read them, whatever user_id they send. Lose it and the memories are unreachable.
show_expiredNoInclude memories whose expiration_date has passed (default false)

Schema Changelog

Changes observed during successful MCP inspections.

  1. First observed

TDQS

A4.4/5.0
Behavior5/5

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

Goes well beyond any annotations by disclosing 404 semantics for foreign memory_id, pagination shape {count,next,previous,results}, newest-first ordering, wildcard '*' matching, and crucially the memory_key secrecy model ('a different key sees nothing', lose it and data is unreachable). Also surfaces pricing and free-tier limits.

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 dual-mode behavior in the first sentence, then covers filters, key, and pricing. Dense but every clause carries operational meaning; slightly busy with pricing and secret-key caveats that could be compressed.

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

Completeness5/5

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

With no output schema and no annotations, the description carries the full burden and does so: it documents return shape, error behavior, ordering, auth model, and payment. An agent has everything needed to call this correctly.

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 description coverage is 100%, so all nine parameters are already documented in the schema. The description adds the 'at least one filter' constraint and '*' wildcard behavior, which is useful but largely compensates for coverage that's already present.

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 (read/returns memories) and resource, and clearly distinguishes two modes (single memory by id vs paginated list). It also contrasts with siblings like search_memories by noting exact-id vs filter listing.

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?

Explains when memory_id alone fetches one item vs when a filter (user_id/agent_id/app_id/run_id) is needed, and at least one filter is required for listing. It doesn't explicitly say when to prefer this over search_memories, but the filtering and pagination context is clear.

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