Recalld (EU)
Server Details
Long-term memory for AI agents. Recalld updates facts as information changes and
- Status
- Healthy
- OAuth
- Works in Glama
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
TDQS
Scored across 4 tools
memory_recall and memory_search both retrieve stored information, creating some overlap, but their descriptions clearly distinguish LLM-assisted concise answers from raw embedding retrieval. memory_add and memory_filters occupy clearly separate roles.
All tools share a consistent memory_ prefix. Three follow a memory_<verb> pattern, while memory_filters is a noun phrase rather than an action, a minor deviation.
Four tools is a tight, focused set for a personal memory server. Each tool covers a distinct part of the ingest, filter, and retrieval workflow without redundancy.
The core add/retrieve lifecycle is well covered, including a filters tool to make retrieval accurate. Missing explicit update/delete operations and bulk listing are gaps but not fatal for the apparent personal-memory use case.
Available Tools
4 toolsmemory_addAInspect
Ingest content into memory (conversation or document inputs). Agent is fixed by the OAuth connection.
| Name | Required | Description | Default |
|---|---|---|---|
| inputs | Yes | content items to ingest | |
| task_id | No | optional shared task id; include findings in the task memory pool visible to other agents on the same task | |
| thread_id | No | optional free-form conversation/session label; reuse the same value to group memories within one session, omit for agent-wide memory |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description must disclose behavior. It adds the constraint that the agent is fixed by the OAuth connection, which is useful context. However, it does not mention side effects beyond 'ingest', the persistence behavior, whether it is idempotent, or any restrictions on inputs (e.g., the 'deleted' field hints at deletion handling, but the description does not explain it). It provides some behavioral context but leaves important traits undisclosed.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences, front-loaded with the primary purpose, and contains no filler. The addendum about OAuth is relevant and concise. Every word adds value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Despite having only 3 top-level parameters, the 'inputs' parameter is a nested array with several fields (kind, path, author, content, deleted, event_date, content_type). The description does not explain the expected structure or constraints (e.g., valid values for 'kind' or 'content_type'), nor does it mention return values or error behavior (no output schema). The tool's complexity warrants a more detailed description to guide an agent on correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The schema covers all top-level parameters (inputs, task_id, thread_id) with descriptions, so the baseline is 3. The description adds a note about 'conversation or document inputs' which loosely maps to the 'inputs' argument, but does not explain the nested structure or the meaning of 'kind' or 'content_type' beyond what the schema provides. The description adds marginal value over the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a clear action ('Ingest content into memory') and specifies the resource and input type ('conversation or document inputs'). The verb 'ingest' distinguishes it from sibling tools (memory_search, memory_recall, memory_filters) which are clearly for retrieval/filtering, not adding. Purpose is unambiguous.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description implies this tool is for adding content and siblings are for querying, but it does not explicitly state when to use this vs alternatives or when not to use it. There is no mention of 'use this for adding, memory_search for finding' or any exclusion context. Guidance is implied by the verb and the sibling names but not made explicit.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_filtersAInspect
List the source kinds, authors and document paths this agent holds. Call it before passing source_kind, author or path to memory_recall or memory_search, so the filter matches something.
| Name | Required | Description | Default |
|---|---|---|---|
| thread_id | No | optional session label; restrict to one session, omit for every session |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It transparently states the output content (source kinds, authors, paths) and the verb 'List' implies a read-only operation. It does not explicitly mention side-effect-free or scope limitations, but for a simple listing tool the behavior is clear enough.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two sentences with zero waste. The purpose is front-loaded, and the usage guidance follows immediately. Every word earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a simple tool with one optional parameter and no output schema, the description covers purpose, output content, and when to use it. It does not describe the exact response format, but the stated content and intended usage are sufficient for correct invocation.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the only parameter, thread_id, fully describing it as optional and session-restricting. The description adds no additional parameter meaning, which matches the baseline of 3 for high schema coverage.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: 'List the source kinds, authors and document paths this agent holds.' This clearly distinguishes it from siblings like memory_recall and memory_search, which retrieve memories, and memory_add, which writes.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
It gives explicit when-to-use guidance: 'Call it before passing source_kind, author or path to memory_recall or memory_search, so the filter matches something.' This tells the agent exactly when to invoke the tool and why, with no ambiguity.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_recallBInspect
Recall relevant facts for a query using LLM-assisted selection. Returns a concise answer from stored memory.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | facts (default) or sources | |
| path | No | optional; only use memory from this one document or file, e.g. contract-b.pdf; call memory_filters for the available values | |
| limit | No | maximum results to return | |
| query | Yes | natural language query | |
| scope | No | thread (default) searches this session plus memory not tied to a session; agent searches every session for the agent | |
| author | No | optional; only use memory produced by this author, matched case-insensitively; call memory_filters for the available values | |
| task_id | No | optional shared task id; also search facts stored in that task's shared pool | |
| thread_id | No | optional free-form conversation/session label; reuse the same value to scope recall/search to one session, omit to read only memory that is not tied to a session | |
| source_kind | No | optional; only use memory from sources of this kind: SYSTEM, USER, AGENT, TOOL, DOCUMENT or CODE |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description must carry the behavioral disclosure burden, and it does add useful traits: 'LLM-assisted selection' and 'Returns a concise answer.' However, it does not explicitly state that the operation is read-only, what happens with no matching memory, or behavior differences across modes.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is two tight sentences with no filler, and the core behavior is front-loaded in the first sentence. Every part is informative and easy to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a tool with nine parameters, no annotations, no output schema, and a close sibling like memory_search, the description is too thin. It omits output structure, mode distinctions, and the recall-versus-search decision, leaving an agent to infer too much.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
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 no parameter-level meaning, but the schema carries the full burden; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource: 'Recall relevant facts' from 'stored memory,' and adds a distinctive mechanism, 'LLM-assisted selection.' It does not explicitly distinguish memory_recall from the sibling memory_search, so it stops short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance about when to use memory_recall versus memory_search or memory_add. The only sibling reference appears indirectly in the schema ('call memory_filters for the available values'), which is not usage guidance for tool selection.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
memory_searchAInspect
Search memory using embedding retrieval without LLM selection. Returns multiple matching facts for the agent to digest.
| Name | Required | Description | Default |
|---|---|---|---|
| mode | No | facts (default) or sources | |
| path | No | optional; only use memory from this one document or file, e.g. contract-b.pdf; call memory_filters for the available values | |
| limit | No | maximum results to return | |
| query | Yes | natural language query | |
| scope | No | thread (default) searches this session plus memory not tied to a session; agent searches every session for the agent | |
| author | No | optional; only use memory produced by this author, matched case-insensitively; call memory_filters for the available values | |
| task_id | No | optional shared task id; also search facts stored in that task's shared pool | |
| thread_id | No | optional free-form conversation/session label; reuse the same value to scope recall/search to one session, omit to read only memory that is not tied to a session | |
| source_kind | No | optional; only use memory from sources of this kind: SYSTEM, USER, AGENT, TOOL, DOCUMENT or CODE |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral disclosure burden. It does reveal non-obvious behavior: retrieval is embedding-based, no LLM selects results, and multiple raw facts are returned. It does not state read-only status, result ordering, default scoping behavior, or output structure.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two short sentences with no filler; the retrieval mechanism is front-loaded and the output consequence is stated in the second sentence. Every clause earns its place.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a nine-parameter tool with no annotations and no output schema, the description gives solid high-level semantics but omits how this tool relates to siblings and how filters/scoping parameters interact. The rich schema compensates partially but cannot supply the missing usage context.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The input schema covers all nine parameters with descriptive text (100% coverage), so the schema carries the heavy lifting; the description adds no parameter-specific meaning. Baseline 3 is appropriate because no gaps in schema coverage exist.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description uses a specific verb and resource ('Search memory') and adds the mechanism 'embedding retrieval without LLM selection', which distinguishes this from LLM-curated recall. It also states the return shape ('multiple matching facts'), though it never names a sibling explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The phrase 'without LLM selection' and 'for the agent to digest' imply this tool is appropriate when raw retrieved facts are wanted rather than a synthesized answer. However, there is no explicit when-to-use, prerequisite, or exclusion relative to memory_add, memory_filters, or memory_recall.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
4 tool updates
- First observed
memory_add - First observed
memory_filters - First observed
memory_recall - First observed
memory_search
Related MCP Servers
- AlicenseAqualityCmaintenanceEnables brand visibility monitoring across major AI platforms like ChatGPT, Claude, Gemini, and Perplexity. It allows users to track visibility scores, analyze competitor data, and receive actionable insights to improve AI-generated brand recommendations.167 npm1MIT
- AlicenseCqualityAmaintenanceCompetitor Monitor AI - MCP server providing AI-powered tools and automation by MEOK AI Labs119 npm49 PyPIMIT
- AlicenseNot gradedqualityBmaintenanceEnables tracking competitor websites, changelogs, blog feeds, and pricing pages with meaningful diffs, classification, and Markdown digests via MCP tools for listing, adding, removing competitors, running checks, and retrieving digests or changes.MIT

industrylens-mcpofficial
AlicenseNot gradedqualityBmaintenanceBrowse IndustryLens's published competitive-intelligence reports and head-to-head competitor comparisons from any AI agent — real, source-backed data.MIT
Glama MCP Gateway
Add one secure layer between your agents and this server.