Maindex Expert Memory Service
Replaced by Maindex Expert Memory Service.
Duplicate entry
Server Details
Full-control memory API for AI agents with direct access to structured data, relationships, and revision history. Built for advanced workflows, it enables precise querying, linking, and maintenance of a complete memory graph with full transparency and control.
- Status
- Healthy
- Uptime
- 100.0% over the last 24 hours
- Last Tested
- Transport
- Streamable HTTP · MCP 2025-11-25
- URL
- ChatGPT
- –
- Claude
- –
TDQS
Scored across 15 tools
Most tools target a clearly distinct resource+action (recall=get by id, search=full-text, list=filter, get_related=discovery, associate/unassociate=link lifecycle, keep/bulk_keep=create, update/bulk_update=revise). A few boundaries are subtle — memory_list vs memory_search both return filtered item sets, and memory_supersede overlaps with memory_update's supersession-cleanup behavior — but the descriptions make the intended selection clear.
The set follows a predictable noun_verb snake_case pattern (memory_keep, memory_recall, memory_associate, collection_unlock, system_report_bug). The main deviation is collection_manage, which uses a vague catch-all verb for CRUD while other tools use specific verbs, and the singular/plural mix (collection_manage handles membership too).
15 tools is well within the reasonable range and each earns its place: single vs batch create/update, link create/remove, discovery, supersede, collections, and bug reporting. Nothing feels redundant or padding.
Lifecycle coverage is strong: create (keep/bulk_keep), read (recall/list/search/get_related), update (update/bulk_update), soft-delete (forget), supersede, plus link and collection management. Minor gaps: no dedicated restore tool (relies on memory_update semantics or a REST endpoint outside the MCP surface) and no collection lock counterpart to collection_unlock.
Available Tools
15 toolscollection_manageADestructiveInspect
Create, update, delete collections, or manage their members. Actions 'list' and 'get' are read-only; all others mutate. 'create' is not idempotent; 'delete' is idempotent. The 'id' param is required for update/delete/add_members/remove_members/get. Team collections use prefixed slugs (team:slug). Returns the collection object with id and shortId.
Inputs: action (required), id, icon, name, +8 more. Returns: id, name, added, items, +3 more
collection_unlockAIdempotentInspect
Unlock locked memory collections using a passphrase. When collections are locked, their contents are invisible. Provide the passphrase (e.g. 'bright-coral-drift') to unlock them for this session. Mutates session unlock state. Idempotent.
Inputs: passphrase (required). Returns: unlockedCount, unlockedCollections
memory_associateAInspect
Create typed links between memories (inverse links auto-created for known types). Mutates. Not idempotent — calling twice creates duplicate links. Returns the created link objects with id and shortId. Common relation types: belongs_to, supports, depends_on, contradicts, alternative_to, expands, derived_from, example_of, supersedes. SOFT-DELETED: Does not target soft-deleted memories — source and targets must be active (status not deleted) or the call fails with memory_not_found. This tool does not restore deleted rows; use memory_update first if you need to undelete. To remove links, use the separate tool memory_unassociate (not this one).
Inputs: targets (required), from_memory_id (required), signer. Returns: links
memory_bulk_keepAInspect
Create multiple memories in one call (max 100) with shared defaults. Tags and collections are merged per-item. Mutates. Not idempotent — calling twice creates duplicates. Auto-links batch members with mentioned_with links unless auto_link is false. Returns { created, memories } with id and shortId per item. CONTENT POLICY: NEVER store passwords, API keys, secrets, credit card numbers, SSNs, government IDs, medical/health records (PHI/HIPAA), biometric data, or any legally protected PII. Sanitize content before storing.
Inputs: memories (required), defaults, auto_link. Returns: created, memories, link_summary
memory_bulk_updateADestructiveInspect
Batch update multiple memories (max 100). Supports add/remove tags, set kind, set canon_status, set verification_status, add/remove collections, merge metadata, add/remove links, clear superseded_by/replaces, forget (soft-delete). Does NOT support headline/body replacement. Mutates. Idempotent for set_* and tag operations; add_links will create duplicates on retry. Returns per-memory results. SOFT-DELETE RESTORE: Any non-forget operation on a soft-deleted memory revives it (same semantics as memory_update). The response includes restoredCount when any deleted rows were revived. SUPERSESSION CLEANUP: Setting set_canon_status to 'accepted' on memories with supersededBy pointers will automatically clear those pointers and remove superseded_by links. Use clear_superseded_by for explicit control without changing canon_status.
Inputs: memory_ids (required), operations (required), signer. Returns: errors, affected, restoredCount
memory_forgetADestructiveIdempotentInspect
Soft-delete a memory (sets status to 'deleted'; restorable). Mutates. Idempotent — safe to retry. Returns the deletion result with the memory's id and shortId. To undelete, use memory_update on the deleted id (any successful revision restores it and sets restoredFromDeleted on the response) or REST POST /v1/memories/:id/restore.
Inputs: memory_id (required), signer. Returns: id, deleted, shortId
memory_keepAInspect
Create a new memory. Mutates. Not idempotent — calling twice creates two distinct memories. Returns the created memory with id (UUID) and shortId (e.g. mem-1a). When inline links are provided (parent_memory_id, related_memory_ids, or links), the response includes link_summary confirming how many links were created; the memory.links[] field stays empty for performance — use memory_recall to inspect full link details. Tip: include conversation identifiers in conversations to group related memories. CONTENT POLICY: NEVER store passwords, API keys, secrets, credit card numbers, SSNs, government IDs, medical/health records (PHI/HIPAA), biometric data, or any legally protected PII. Sanitize content before storing.
Inputs: headline (required), body, kind, tags, +16 more. Returns: Memory object, or { memory, link_summary } when inline links were requested
memory_listBRead-onlyIdempotentInspect
List memories with filters (tags, kind, canon_status, collection, session, confidence range, tag facets). Read-only. Returns { items, total }.
Inputs: kind, sort, tags, team, +16 more. Returns: items, total
memory_recallBRead-onlyIdempotentInspect
Retrieve a single memory by ID (UUID or short_id like mem-1a). Read-only. Returns the memory object, or null if not found.
Inputs: memory_id (required), team, follow_chain, include_links, +3 more. Returns: A memory object
memory_searchBRead-onlyIdempotentInspect
Full-text and semantic search across memories. Multi-tier retrieval: exact match, relaxed OR fallback with synonym expansion, fuzzy trigram, and optional semantic/hybrid search. Read-only. Returns { items, total, search_mode, retrieval_sources, degraded_components }.
Inputs: q (required), kind, sort, tags, +20 more. Returns: items, total, search_mode, suggested_tags, +3 more
memory_supersedeADestructiveInspect
Replace an existing memory with a new one. Creates the replacement, marks the old memory as deprecated (superseded_by → new), and creates a supersedes link. Tags from the old memory are automatically inherited by the new one (merged with any caller-provided tags). Mutates. Not idempotent. Returns the new memory with id and shortId. SOFT-DELETED: old_memory_id must refer to an active (non-deleted) memory; soft-deleted rows are not superseded by this tool (use memory_update to restore, or memory_recall with include_deleted only for read). Updating a deleted memory via memory_update is the supported undelete path, not memory_supersede.
Inputs: headline (required), old_memory_id (required), body, kind, +8 more. Returns: A memory object
memory_unassociateADestructiveIdempotentInspect
Remove typed links between memories (inverse links auto-removed for known types). This is the unlink counterpart to memory_associate — it does not create links and does not soft-delete or restore memories. Idempotent — missing or already-deleted links appear in not_found. Provide link_ids OR from_memory_id + targets.
Inputs: signer, targets, link_ids, from_memory_id. Returns: removed, not_found
memory_updateAInspect
Update an existing memory by creating a new revision (full history is preserved). Supports changing kind, canon_status, confidence, and verification_status in-place. Mutates. Tags and conversations are additive. Retryable — duplicate calls create extra revisions but do not corrupt data. Returns the updated memory with id and shortId. SOFT-DELETE RESTORE: If the target memory is soft-deleted (status deleted), any successful update revives it (status becomes active) and sets restoredFromDeleted: true on the response — this is the supported undelete path besides POST /v1/memories/:id/restore. SUPERSESSION CLEANUP: Setting canon_status to 'accepted' on a memory that has a supersededBy pointer will automatically clear that pointer and remove any superseded_by links — this restores the memory to canonical status without stale supersession artifacts. To clear supersededBy without changing canon_status, pass superseded_by: null explicitly. CONTENT POLICY: NEVER store passwords, API keys, secrets, credit card numbers, SSNs, government IDs, medical/health records (PHI/HIPAA), biometric data, or any legally protected PII.
Inputs: memory_id (required), body, kind, mode, +15 more. Returns: A memory object
system_report_bugAInspect
Report a bug to the Maindex maintainers. Provide a clear title, description, severity, and category. Include reproduction steps, error messages, and context when available. Do not include sensitive information. On success the tool returns only an internal ticket number (no URLs).
Inputs: title (required), category (required), severity (required), description (required), +10 more. Returns: status, message, report_id
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
Related MCP Servers
- AlicenseNot gradedqualityCmaintenanceRemote MCP server that lets AI assistants read tracked competitive intelligence — competitor news, reviews, website changes, social posts and ads — and act on it by managing projects, competitors, battle cards, reports and canvases. Every answer carries a source and a date, and write actions only publish when explicitly shared.MIT
- AlicenseCqualityCmaintenanceCompetitor Monitor AI - MCP server providing AI-powered tools and automation by MEOK AI Labs112 npm29 PyPIMIT
- AlicenseAqualityDmaintenanceEnables 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.169 npm1MIT

industrylens-mcpofficial
AlicenseNot gradedqualityCmaintenanceBrowse 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.