amnesic — the MCP server with the most ironic name in the registry
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
**Your database's institutional memory, as an MCP server. The name is ironic — it remembers everything.**
*"The MCP server with the most ironic name in the registry. It's anything but amnesic — it remembers your database so your AI doesn't have to."*
Most database MCP servers are **query executors**: they connect, introspect, run SQL, and forget. amnesic is a **semantic memory** — it accumulates what your schema *means* (what status = 3 is, which columns are really foreign keys, what that legacy table is for) and hands it to every future session automatically. Think data catalog, minus the platform, the ingestion pipeline, and the invoice. Where amnesic fits ↓
**Works with** Claude Code · Claude Desktop · Cursor · VS Code · Cline · Windsurf — any MCP-compatible client.
**Available on** Official MCP Registry · Claude Code plugin marketplace
👋 **Using amnesic?** Say hi in the adopters thread — download counts can't tell me what's actually being used, and it directly shapes what gets built next.
> 🔒 **Read-only by design.** amnesic refuses to execute INSERT, UPDATE, DELETE, DROP, TRUNCATE, ALTER, CREATE, EXEC, MERGE, GRANT, REVOKE — and any write statement smuggled inside a WITH CTE. Two layers of defense: static SQL analysis rejects the statement before connecting, **and** every query runs inside a transaction that is immediately rolled back. Safe to point at prod. Details ↓
---
The problem
Every session with an AI starts cold. You spend the first few minutes re-explaining what tables exist, what a status column value of 3 means, which FK connects orders to users. Then the session ends, and you do it all over again tomorrow.
**amnesic fixes this.** It gives your AI a persistent SQLite knowledge store — one per database — that survives across sessions. Annotate a status enum once; every future session sees those labels automatically. Discover FK relationships once; every future JOIN query uses that graph.
The knowledge is also **portable and outlives your access to the database**. When you rotate off a project, amnesic export hands the next developer everything you taught it — years of "oh, that column actually means…" that would otherwise leave with you.
---
Where amnesic fits
The database MCP ecosystem splits into two camps, and amnesic is deliberately in neither.
**Query executors** — DBHub, Postgres MCP Pro, Google's MCP Toolbox, and the vendor servers (Supabase, Neon). They introspect live, run SQL, and some go deep on performance — Postgres MCP Pro does genuine index tuning and PgHero-style health checks. They are excellent at this. They are also **stateless**: every session re-learns your schema from scratch, and nothing they return can tell you what a column *means*, because the database doesn't know either.
**Enterprise catalogs** — DataHub, Atlan, Cube, AtScale. These *do* hold semantic context: glossaries, column descriptions, ownership, lineage. They're also a platform commitment — metadata ingestion, a service to run, usually a paid tier. Worth it at company scale; wildly disproportionate for one developer who needs to remember what six status codes mean in a legacy MSSQL database nobody will ever onboard to a catalog.
**amnesic is the third thing**: catalog-grade semantic memory at query-executor setup cost. pipx install, one TOML file, a local SQLite file per database. No platform, no ingestion, no server to run.
Honest comparison
| | amnesic | Query executors | Enterprise catalogs |
|---|---|---|---|
| **Semantic context** (what a value *means*) | ✅ persistent, yours | ❌ none | ✅ platform-managed |
| **Survives across sessions** | ✅ | ❌ | ✅ |
| **Portable / outlives DB access** | ✅ export/import | ❌ | ⚠️ platform-bound |
| **Setup cost** | one command | one command | ingestion pipeline |
| **Live schema freshness** | ⚠️ cached, manual refresh | ✅ always live | ⚠️ ingestion lag |
| **Execution plans / index tuning** | ❌ | ✅ (Postgres MCP Pro) | ❌ |
| **Lineage / ownership / governance** | ❌ | ❌ | ✅ |
| **Works on legacy schemas with no FK constraints** | ✅ annotate them yourself | ❌ nothing to introspect | ⚠️ needs ingestion |
**Use a query executor instead of amnesic if** you want execution plans, index recommendations, or database health diagnostics — that's not amnesic's job and adding it would make it a worse version of a tool that already exists.