Prototipo · Versión preliminar: todos los servidores del registro oficial, sincronizados cada 30 minutos. Las reseñas y las cuentas llegarán en una etapa posterior.
PopNx MCPServidores MCP para quienes usan IA · explicados con palabras sencillas

Mnemo

de DanceNitraversión 1.24.2i★ –iSe ejecuta en tu computadora
Nombre en el registroio.github.DanceNitra/mnemo

Instalar

Resumen

Descripción del creador (original en inglés)

Self-correcting agent memory + MCP server: recall, supersede/revert/review corrections, erasure.

Los tres pilares de PopNx MCP

Estos tres nunca se combinan en una sola puntuación: las opiniones, las mediciones y la popularidad son cosas distintas.

Qué puedes hacer con él

Todavía no escribimos un resumen sencillo para este. Abajo están los datos que leímos del registro.

  • Conexión: Se ejecuta en tu computadora
  • Transporte: stdio
  • Categoría: Búsqueda y memoria de IA

Instalación

Elige la app de IA que usas y copia la configuración.

Antes de instalar

  • Revisiones básicas: 1 de 1 superadas
  • Se ejecuta en tu computadora con los permisos de tu usuario (archivos, red, apps).
  • Debes completar tú: MNEMO_PATH, MNEMO_ECHO_GUARD, MNEMO_EMBED_URL, MNEMO_EMBED_MODEL

Necesitas

  • PyPIuv de Python instalado (para el comando uvx)

¿Qué app usas?

Elige tu app arriba. La recordamos, así que la próxima vez el botón dirá “Instalar en …”.

Abre Claude Desktop → Settings → Developer → Edit Config y pega esto en claude_desktop_config.json

{
  "mcpServers": {
    "mnemo": {
      "command": "uvx",
      "args": [
        "agora-mnemo"
      ],
      "env": {
        "MNEMO_PATH": "your-value",
        "MNEMO_ECHO_GUARD": "your-value",
        "MNEMO_EMBED_URL": "your-value",
        "MNEMO_EMBED_MODEL": "your-value"
      }
    }
  }
}

Ejecuta esto en tu terminal

claude mcp add mnemo --env MNEMO_PATH=your-value --env MNEMO_ECHO_GUARD=your-value --env MNEMO_EMBED_URL=your-value --env MNEMO_EMBED_MODEL=your-value -- uvx agora-mnemo

Completa los valores vacíos antes de ejecutarlo.

Abrir en Cursor

O copia la configuración tú

Pégalo en .cursor/mcp.json de tu proyecto, o en ~/.cursor/mcp.json

{
  "mcpServers": {
    "mnemo": {
      "command": "uvx",
      "args": [
        "agora-mnemo"
      ],
      "env": {
        "MNEMO_PATH": "your-value",
        "MNEMO_ECHO_GUARD": "your-value",
        "MNEMO_EMBED_URL": "your-value",
        "MNEMO_EMBED_MODEL": "your-value"
      }
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Abrir en VS Code

O copia la configuración tú

Pégalo en .vscode/mcp.json de tu proyecto

{
  "servers": {
    "mnemo": {
      "type": "stdio",
      "command": "uvx",
      "args": [
        "agora-mnemo"
      ],
      "env": {
        "MNEMO_PATH": "your-value",
        "MNEMO_ECHO_GUARD": "your-value",
        "MNEMO_EMBED_URL": "your-value",
        "MNEMO_EMBED_MODEL": "your-value"
      }
    }
  }
}

Tu navegador te pide permiso para abrir la app; luego la app muestra la configuración y te pide confirmar. Los valores de las claves quedan vacíos para que los completes tú.

Este se ejecuta en tu computadora, y ChatGPT solo puede conectarse a servidores en internet. Elige otra app.

Tu elección se guarda en una cookie en este dispositivo; no necesitas cuenta.

Valores que debes completar

  • MNEMO_PATH env
    Path to the JSON memory file the server persists to (defaults to ./mnemo_memory.json).
  • MNEMO_ECHO_GUARD env
    1 (default) blocks a restated retired value from resurrecting a corrected fact; 0 = legacy keyed supersession.
  • MNEMO_EMBED_URL env
    Optional OpenAI-compatible /embeddings endpoint for SEMANTIC recall (e.g. http://localhost:11434/v1/embeddings for local Ollama). Unset = deterministic lexical recall.
  • MNEMO_EMBED_MODEL env
    Embedding model id used with MNEMO_EMBED_URL (default: text-embedding-3-small; for Ollama use e.g. nomic-embed-text).

Esta configuración se genera a partir de la ficha del creador en el registro. Si el README dice otra cosa, sigue el README.

Qué puede hacer

Se ejecuta en tu computadora; la lista de herramientas aparece en tu app de IA después de instalarlo.

Revisiones básicasi

Revisamos información que cualquiera puede ver; no hemos leído el código. Las revisiones que no aplican no se cuentan. · Revisado el 6 nov 2026

  • ✓ Superada

    El creador coincide con el repo

    El nombre en el registro se verificó con la cuenta de GitHub DanceNitra, dueña del repo

  • … Aún sin revisar

    Sigue en mantenimiento

    Todavía no hemos leído este repo en GitHub

  • … Aún sin revisar

    Tiene licencia

    Todavía no hemos leído este repo en GitHub

  • – No aplica

    El endpoint responde

    Este se ejecuta en tu computadora; no hay endpoint en internet

  • – No aplica

    Inicio de sesión con OAuth

    Se ejecuta en tu computadora y usa ajustes locales en su lugar

  • … Aún sin revisar

    Sin instrucciones ocultas en las descripciones de herramientas

    Se ejecuta en tu computadora; solo podemos leer listas de herramientas de endpoints en internet

Comparado con otros en Búsqueda y memoria de IAi

  • Más estrellas que el 0% de los otros 7245 servidores de esta categoría
  • Publicado en el registro más recientemente que el 24% de los otros 7245 servidores de esta categoría
  • Revisiones básicas iguales o mejores que el 100% de los otros 7245 servidores de esta categoría

Comparado con todos los servidores activos de esta categoría en el registro. Las estrellas solo cuentan cuando quien lo publica es dueño del repo.

Preguntas frecuentes

¿Es seguro Mnemo?

Superó 1 de 1 revisiones básicas aplicables. No hemos leído el código. Antes de agregar una clave o un token, revisa qué acceso pide el servidor y usa una clave que tenga solo los permisos que necesitas.

¿Qué claves o códigos necesita?

El registro no indica ninguna clave obligatoria, aunque algunos servidores te piden iniciar sesión la primera vez que los usas.

¿Se ejecuta en mi computadora o en la nube?

Se ejecuta en tu computadora. Tu app de IA lo inicia cuando hace falta, y los datos no pasan por los servidores del creador (a menos que el propio servidor llame a un servicio en línea).

¿Sigue en mantenimiento?

El repo de GitHub cambió por última vez –, y la última versión (1.24.2) llegó al registro hace 4 meses.

¿Qué apps pueden usarlo?

Las apps compatibles con MCP, como Claude Desktop, Claude Code, Cursor y VS Code. También necesitas Python (uv) en tu computadora.

¿Qué puedo usar en su lugar?

En la misma categoría: Context7, Codebase Memory, Exa

Alternativas

Servidores de la misma categoría hechos por otros creadores, ordenados por estrellas.

Cómo leer una tarjeta:★ Estrellas de GitHubiTres pilares: reseñas · revisiones · usoiActualizado = fecha en que se publicó la última versión en el registroi

Context7

de upstash

Up-to-date docs for AI agents

Computadora o nube★ 64.224MITActualizado hoy
Instalar

Codebase Memory

de DeusData

Codebase knowledge graph for AI agents — 162 languages, sub-ms queries, 99% fewer tokens.

Se ejecuta en tu computadora★ 48.148MITActualizado hace 20 días
Instalar

Exa

de exa-labs

Connect AI agents to Exa for web search, content fetching, and multi-step research.

Se ejecuta en la nube★ 5213MITActualizado el mes pasado
Instalar

README del creador

Abrir el README

Copiado tal cual del repo del creador. PopNx MCP no lo ha revisado ni lo respalda. Se quitaron HTML, imágenes y scripts. Los enlaces llevan fuera de este sitio.

inspeximus

Tamper-evident long-term memory for AI agents. Correct a fact once and the old value stays retired; erase a person and prove it; show an auditor what the agent knew when it acted. One zero-dependency Python file, plus an MCP server.

The erasure proof covers this store only, not a vector index, prompt logs, or backups, and it is an integrity primitive, not a compliance certification.

Quickstart · Docs · vs mem0 and Graphiti · Migrate from mem0 · EU AI Act and GDPR evidence · Claude Code, one line · Transparency log · PyPI

pip install "inspeximus[crypto]"

inspeximus demo # a first result: offline, touches nothing of yours

from inspeximus import Inspeximus

m = Inspeximus("memory.json") m.remember("The staging database is db-3.internal", key="staging-db") m.remember("The staging database is db-7.internal", key="staging-db") # a correction m.recall("which staging database")0 # 'The staging database is db-7.internal' m.revert("staging-db") # and it is reversible, on purpose

memory.json is a name, not a format: a new store is a SQLite file. Read it through inspeximus or the sqlite3 module, never with json.load or cat.

What you get
A correction that holdsremember(key=...) retires the old value by key. Restating the stale text does not bring it back; revert() does, as a recorded decision.
Erasure you can proveforget_subject() removes every record about a person, leaves a signed content-free tombstone, and erasure_certificate() lets a third party check it with no private key. For authorship, the third party pins your public key (expected_pubkey) and witnesses the anchor. It covers this store only.
What the agent knew when it actedA signed, hash-chained action ledger; matches() binds a retained transcript to its entry.
When it happenedRFC 3161 timestamps, and a check whether the authority was on the EU trusted list on that date.
Evidence an auditor can readinspeximus compliance labels the evidence by article; export as a draft-sharif-agent-audit-trail-04 file.
Any agent, one lineMCP server for Claude Code, Cursor, Windsurf, Codex and Cline; adapters for LangChain, LangGraph, ADK and more.

Why inspeximus

Use it when the agent runs for days and the facts it holds will change under it, and when somebody can later ask what it knew and what it erased. That is the whole design brief.

You haveReach for
An agent that keeps confidently repeating a value you already correctedremember(key=...): the correction wins, the restatement does not bring the old value back, revert() is a recorded decision
A right-to-erasure request, or an auditor asking what the agent knew when it actedforget_subject() with erasure_certificate(); the signed action ledger with matches()
Claude Code, Cursor, Windsurf, Codex or Cline, and no memory between sessionsthe MCP server, one config line
A framework (LangChain, LangGraph, ADK, Hermes, Haystack) and no way to prove a memory write happenedthe adapters and the receipt chain

agno is the one that is not ours. It ships an official integration example in its own cookbook, cookbook/11_memory/integrations/inspeximus_integration.py, merged in agno#10146 on 2026-09-20, alongside mem0, zep, memori and dakera. Their own README describes it as *"inspeximus for corrections that stay corrected."* We did not write that file's home and we do not maintain it, which is exactly why it is worth listing: it is one integration a reader can check without taking our word for anything. The same holds for agmi, an agent-memory integrity scorecard whose maintainer merged our three-row adapter, agmi/adapters/inspeximus_rows.py, in agmi#1 after reproducing it himself.

Not the right tool when you want a hosted service with a dashboard, a knowledge graph over documents, or the highest score on a conversational-recall benchmark. mem0, Zep and cognee lead there, and the comparison page says where each of us wins and where we do not.

The receipts

We measured the one thing the others do not publish: how often a corrected fact comes back.

Each system was run on its own native configuration, same task, same 30 trials:

systemkeeps the correctionresurrects the old value
inspeximus100%0%
Graphiti 0.x (Neo4j + OpenAI)86.7%13.3% 95% CI [3.3, 26.7]
mem0 2.0.11 (OpenAI native)53.3%46.7% 95% CI [30.0, 63.3]
inspeximus, guard disabled0%— the control: this is what the guard is doing

n = 30 per system. mem0 measured at 2.0.11 (2026-07); mem0 is now on 2.0.18 and we have not re-run it — the version is stamped rather than the claim being restated as current. Full method, raw arrays and the re-runnable harness: RAMR · echo_resistance_backends_result.json

Read the Graphiti row correctly — its echo defense did not fail. Our own raw output records

echo_attributable_flips: 0 out of 26 corrections that were extracted correctly before the echo

ran. Graphiti's bi-temporal invalidation held every one of them. The 13.3% above is four *pre-echo

extraction misses* — the correction never made it into the graph — which is a different failure from

the one this table is about. Stated as the mechanism rather than the headline: on echo-attributable

resurrection, Graphiti scores 0%, the same as us, by keeping the supersession link at write time.

That is the real finding here: what separates these systems is whether the link is recorded, not who

recorded it.

Two numbers you can check in three seconds, with no API key

Measured 2026-08-25 against Hindsight 0.9.2 (vectorize-io, 21k stars) and mem0, each in its own native config, n=20. These two need no judge at all — they read the raw recall payload, so nothing depends on a model reading well:

inspeximus 2.21.0Hindsight 0.9.2mem0
after a correction, recall returns the new value and not the old one20 / 200 / 201 / 20
identical writes twice — same stored state?byte-identical20 / 20 differ—
model calls to do it06060

Both competitors return the corrected value *and* the retired one, and leave the choice to the caller. That is a defensible design — a bitemporal store handing back old and new with validity markers is being honest — but it is a different promise from ours, and the difference is whose job disambiguation is.

The first row is free to verify. No key, no server, no network:

git clone https://github.com/DanceNitra/inspeximus && cd inspeximus

python probes/integrity_bench_store_resolves.py --systems inspeximus

It finishes in milliseconds and prints store-resolved=1.00 (resolved=20 both=0 stale=0 neither=0, n=20). Adding ,mem0 or ,hindsight reproduces their columns and costs their own extractor calls. Method, caveats and the cells where we do not win.

The bottom row is the point. Turn our guard off and we score zero — so the number is the mechanism, not the benchmark being kind to us.



Keep the big tool result out of the context window

The context saver replaces an oversized tool result with a ranked digest and the path of a file holding the whole output. The agent reads the digest, and reads the file when it needs the rest. It ships two ways, and neither needs a code change in your agent. In Claude Code it is part of the PostToolUse hook that inspeximus install --all or inspeximus install --ide claude wires up. For Hermes, integrations/hermes-context-engine-inspeximus/ is a context engine that runs before every provider request. Measured on one Hermes session store, 3,233 messages across 11 sessions, where tool results are 84.4% of the message bytes, over the 264 results longer than 2,000 characters:

strategybytes keptmid-output question terms kept
Hermes's own prune0.5%0.0%
the saver's digest27.3%61.5%

Scope: inspeximus 3.26.0, measured 2026-10-29, one operator's sessions on one machine, lexical ranking with no embedder, and a mid-output question term is a word of the tool call's own arguments present in the output but absent from its first and last 400 bytes. The probe behind the table runs against one operator's own session store and is not shipped here, so read the figures as reported rather than as reproducible from this package. Hermes replaces a tool result it has no summarizer for with a byte count, which carries no term from the output at any setting of that window, and the agent re-runs the tool to get the content back.

What we could not show. An earlier version of the engine's page compared the digest with head-and-tail truncation at the same byte budget. That row is withdrawn: the window size decides the direction, the digest's own Searchable terms: footer is worth several points to a substring scorer, and on the Hermes corpus an unranked evenly spaced sampler matches the footerless digest. The honest reason to use the saver is wha

Solo se muestra el principio; lee el resto en el repo

Pregunta a PopNx